ドキュメント指向データベース
ドキュメント指向データベース。
RDBMSやカラムナデータベースと比べて、まだそこまで派手に陽の目を見れてはいませんが、利用者は着々と増えているような気がします。Googleトレンドで見てみても、Cassandraと比べると、だいぶ小さな規模ですがmongodbが確実に伸びてきています。
もう疲れたよ。行? 列? スキーマ?
開発者がデータストアに求められることは表の形にデータを収めることではありません。データを保存して、保存したデータを取ってこれることです。そのシンプルな形がファイルシステムだと思っています。
それに加えて検索したり、整合性を保ったり、結合したりと色々な要望を効率的に満たすために表の形になっているのではないでしょうか。そしていつの間にか、データは表になっていることが当たり前になっており、表同士に関係をもたせたりしながらあらゆるデータを入れてきました。
もし、別の方法で効率的にこれらの欲望を満たせるのであれば、データは表の形で入っている必要はないはずです。
ドキュメント指向のデータベースには、表のような形でデータを保持しません。表に見立てた形で保存することはもちろん可能です。ドキュメント指向データベースの有名所CouchDBも、MongoDBもKeyValueStoreのようにIDに対してデータが入っているのですが、IDに対してツリー構造のデータが入り、そのツリー構造を効率的に扱えるような仕組みが取り入れられています。そのため、最初から決められたカラムなどはなく、自由にデータを入れ、それを効率的に取り出すことができるようになってます。