3

例として Twitter のデータ モデルを使用します。

ユーザー A は、それぞれが N 個の異なる投稿を投稿した N 個の他のユーザーをフォローしています。投稿にはタイムスタンプが付けられます。

ユーザー A がフォローしているユーザーからの最新の N 件の投稿を効率的に読み取ることをサポートするデータ ストアまたはグラフ データベースはありますか?

投稿は並べ替え順に保存するのが最善のようです (Cassandra ColumnFamily や Redis ZSET のように)。

また、異なるマシン間でデータを分割する機能も重要です。

4

2 に答える 2

1

あなたのためのオプションは... RDFデータベース(別名トリプルストア/クワッドストア)であり、SPARQLを試してグラフをクエリし、データからサブグラフを取得します。例による SPARQLも参照してください。

数十億のトリプルまたはクワッドにスケールアップするものは4store です。これは C で記述されており、セグメント間のデータ シャーディングを可能にします。コモディティ クラスターまたはマルチコア アーキテクチャを最大限に活用します。Java、perl、Python など、さまざまなクライアント ライブラリとやり取りできます。

于 2011-07-06T22:41:35.290 に答える
1

Neo4Jを見てください。ニーズに完全に適合するはずです。ただし、REST インターフェースを使用することをお勧めします。これにより、武器の uhm プログラミング言語を自由に選択でき、Java バインディングを直接操作する複雑さの多くが抽象化されます。

于 2011-07-06T22:49:31.640 に答える