Datomic - Google検索
Datomic 公式サイト
Datomic - Home
Clojureの作者が作ったデータベースDatomicが凄い
変更不可なAppend-onlyデータベース
従来のデータベースで、あるレコードを変更するというのはそのレコードに対応した場所があり、そこのデータを書き換えるということを意味していました。
Datomicでは書き換え可能な場所はなく、過去の事実を時刻と共に全て記録します。
Rich Hickey 氏,Clojure/West で Datomic を語る
基調講演を担当した QCon London から到着したばかりの Rich Hickey 氏が用意していた話題は,自身の最新の活動である Datomic に関するものだ。
氏の説明によれば "スケーラブルでフレキシブル,インテリジェントなアプリケーションを実現すべく設計された,クラウドアーキテクチャ上で稼働する分散データベース" である。
Datomic はフル管理された NoSQL データベースサービスである Amazon DynamoDB 上に構築され,ACID トランザクションやジョイン,不変性と状態を活用するデータモデルなどを機能として備えている。
さらに Prolog のサブセットである Datalog を装備することで,クエリをアプリケーション側に移行する。
Prolog に詳しければ,それがルールベースの宣言文を評価する推論エンジンを組み込んだ宣言型言語であると知っているだろう。
Datalog はルールとデータソースをパラメータとして取得する Prolog のサブセットだ。
Datomic ではその Datalog をスカラやコレクションを扱うように拡張した上で,コード呼び出しを行う expression 句を追加している。
Datalog - Wikipedia, the free encyclopedia
Datalog is a truly declarative logic programming language that syntactically is a subset of Prolog.
It is often used as a query language for deductive databases.
In recent years, Datalog has found new application in data integration, information extraction, networking, program analysis, security, and cloud computing.
Datomicのクエリーは、DatalogというPrologのサブセットを使用しているそうです。
(参考)
「10年先行く技術」のデータベースサービス、Datomicを試す | Developers.IO
Datomicのアーキテクチャ
Datomic情報モデル
datomicチュートリアル1日目 - mike-neckのブログ
@yutakashino 自分もRichが音楽からプログラミングの世界に入ったというのがびっくりしました http://t.co/2yMkpp0a ハンモック駆動開発とかのスピーチも素晴らしいし憧れますね。
— Takahiro Hozumi (@fatrow) 2012, 4月 13
音楽からプログラマーに転向…Datomicの作者であるリッチ・ヒッキー氏は、スゴイ人みたいですね!
プログラミングClojure 第2版 Stuart Halloway and Aaron Bedra オーム社 2013-04-26 ¥ 3,672 |
・時間がファーストクラス
追記型のKey-Valueストアで、列を増やしたようなもんかなー?
同じことは、工夫すればRDBでもできるんじゃないでしょうか?
(まあ、それだったら、わざわざ作る理由もないよねーw)
NOSQLの基礎知識 (ビッグデータを活かすデータベース技術) 本橋信也 / 河野達也 / 鶴見利章 リックテレコム 2012-04-25 ¥ 2,592 |
- 関連記事
-
- データベースの暗号化
- 変更不可なAppend-onlyデータベース「Datomic」
- 外部キーのデメリットとIDリクワイアド
- RDBの交差エンティティ
- イミュータブル(不変)なDB設計
- MySQLのカバードインデックス
- T字形ER手法 (TM、T-formed ERD method) でプログラム設計
- RDFクエリ言語「SPARQL」(スパークル)
- ETLツールでデータクレンジング
- phpMyAdminの代わりに「adminer」を使ってみた
- 「id」以外で、主キーのカラム名は何がいいだろ?
- ブリュワーのCAP定理~データストレージの選定基準
- MySQLで「都道府県コード」を作成するSQL
- Facebookの分散SQLエンジン「Presto」
- 衝突しにくいハッシュ値をMySQLの代理キーにする方法