2011-08-24 3 views

答えて

0

Neo4jは、オブジェクト間の関係を管理するための非常に優れたソリューションです。すでに分かっているように、これらの関係にはノード自体と同様にプロパティがあります。しかし、私はあなたがこれらのノードにデータの "大きなチャンク"を格納することはできないと思う。私はNeo4jがMongoDbやmysqlのような別のデータベースで使用されることを意図していたと思います。最初に必要な情報を「本当に速く」取得し、別のエンジンを使用してそれを調べます。私のプロジェクトでは、ユーザー名、名前、生年月日、ID、およびこれらの種類の情報を格納しますが、非常に大きなテキスト文字列は格納しません。

+0

これは純粋な推測のようであり、他の答えや他のところとははっきりとは対照的です。 –

+0

確かに。少なくともそれは私が2011年に知っていたものですが、それ以来変化しています。それを指摘してくれてありがとう。 –

3

デフォルトでは、Neo4jはLuceneを使用して索引付けされます。 Luceneはフルテキスト検索ツールボックスとして構築されました(Solrは事実上の検索エンジン実装です)。 Luceneは大量のテキストを検索することを意図していたので、あなたが望むようにたくさんのテキストをノードに入れることができ、うまく動作するという疑いがあります。

5

私はただのNeo4jのWebインターフェイスで次のことを試してみました:

私は26文字の行を書き、832000文字の合計を作る32000回線を介して、それを複製し。

"text"というプロパティを持つノードを作成し、その中にテキストをコピーして、完全に機能しました。

私はもう一度、行末に空白を入れた64000行と、合計で1728000文字を試しました。新しいノードを作成してノードを照会し、サイズを確認するためにファイルに結果をコピーしました。そして、wcは私に1728001を与えました(私が想定しているコピー/ペーストプロセスのエラーである必要があります)。

それは文句を言っていないようです。

FYIこれは、平均サイズ4とスペース(5文字)の345600ワードのテキストと、1ページあたり300ワードの1000ページのブックに相当します。

しかし、ノードが多すぎるとパフォーマンスにどのような影響を与えるかはわかりません。これでうまく動作しない場合は、関係についての情報を格納するためのneo4jを、別のドキュメント指向データベースのIDとしてのプロパティID(または単にパスとしてのファイルのパスプロパティ)。

関連する問題