2012-02-12 10 views
9

NoSQLデータベース(または少なくともBigDataまたはColumnストア)データベースにアクセスするための標準言語またはAPIがあるかどうか疑問に思っていましたか?NoSQLデータベース用の新興標準APIはありますか?

また、ベンダーの貢献度ごとにドメイン固有の言語を習得しなければなりませんか?

+1

私は人々がこの質問を終了しないことを願っています。私は実際には、統一されたAPIがあるかどうかを知りたいだけですか?なぜそれが論争と見なされるのか分かりませんか? –

+0

PHPのPDOのようなデータベースにとらわれない抽象化レイヤーですか?私はNoSQLの標準が「SQLではない」以外のものであるかどうかはわかりません。 – mrlee

+1

私はスタックオーバーフローの問題を抱えている可能性があります - なぜこの質問は議論の余地がありますか?記事のNoSQLを調べようとしていますが、これは非常に関連性の高い質問だと思います。 –

答えて

2

リレーショナルデータベースにはSQL言語があります。

NoSQLデータベースは、グラフ、列、ドキュメントの種類が異なります。キー値など

これらはすべて固有のものです。 1つのタイプが統一された言語を持つことができるかもしれないが、それらの間でそれはあまり自然ではないだろう。そう、はい、各タイプのAPIを使用/学習する必要があります。

別のレベルでは、プログラミング言語としてjavaを使用する場合、それらのデータベースにアクセスするライブラリのセットを提案するスプリングデータを使用できます。私はそれを使用しませんでしたが、あなたは非常に簡単に異なるデータベースタイプ間のAPIを比較することができます。私はその目標は、すべてのNoSQL DBのに統一されたインタフェースを提供することである2つの取り組みを見たAre there any NoSQL standards emerging?

+0

グラフデータベースはColumnarと同じAPIを持っていませんが、HBaseとCassandraはどうでしょうか? –

2

次に、あなたはあなたにも関連すると思われるこの質問を持っています。 UnQLは、非常にSQLのDMLのようなインターフェイスを提供します。

もう1つはApache Thriftです。これは、クエリーを記述し実装する言語に中立な方法を提供します。

3

一つの潜在的に興味深い1はHBaseの、Hypertable、MySQL Clusterの、カサンドラ、ヴォルデモート、MongoDBは、MemcacheDBとのRedisのための統一されたAPIを提供AppScaleです。このAPIはGoogle App Engine用にGoogleによって定義されており、Java,PythonおよびGoで利用可能です。

+0

ああ、JavaでGoogle App Engine APIを使用している場合は、Objectifyのhttps://code.google.com/p/objectify-appengine/をご覧ください。 – mjaggard

関連する問題