問題タブ [cypher]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
2194 参照

indexing - 200K ノードと 450K リレーションでの neo4j カウント ノードのパフォーマンス

に基づいて、約20 万ノードのアプリケーションを開発しています。各ノードには、 アプリケーションの特定のエンティティのようなプロパティtype='user'またはその エンティティを示すプロパティがあります。type='company'グラフ内の特定のタイプのすべてのノードの数を取得する必要があります。

そのプロパティのノードを保持する のusersようなすべてのエンティティのインデックスを作成しました。companiesしたがって、usersインデックス内には130Kノードが存在し、残りはcompanies.

Cypher では、このようにクエリを実行します。

そして結果は

サーバーは少し調整してデフォルトとして構成されていますが、4 秒は私たちのニーズには長すぎます。データベースは 1 か月で 20,000 になると考えてください。

おそらくGremlinまたは他のサーバープラグインを使用して、これを行う他の方法はありますか? これらの結果をキャッシュしますが、これを微調整できるかどうか知りたいです。

どうもありがとうございました。私の下手な英語で申し訳ありません。

0 投票する
1 に答える
3868 参照

neo4j - Cypher Query の結果の結合

これがCypherでの私のクエリです...

友達を外側のコレクションに追加し、クエリ内の両方のコレクションを返そうとしています。このようにして、クエリ内で LIMIT と SKIP を使用できます。

どんな助けでも大歓迎です。

クリス

0 投票する
1 に答える
720 参照

neo4j - neo4jREST'サーバーがトラブルに巻き込まれました'

私は非常に基本的なテストを実行して、理解を確認し、neo4j RESTサーバー(neo4j-community-1.8.M07)を評価しています。Neo4jPythonRESTクライアントを使用しています。

各テストの反復は、送信元ノード名と宛先ノード名のランダムな文字列から始まります。名前には文字a..zと数字のみが含まれています0..9(奇妙なことに、andを使用しても失敗することはありませんA..Z0..9。名前は1文字から36文字の長さで、繰り返し文字はありません。36個のノードを作成します。ここで、1番目のノード名は1文字の長さで、36番目のノード名は36文字です。次に、すべてのノード間に関係を作成します。各リレーションの名前は、ソースノード名と宛先ノード名を連結したものです。最終的なグラフには、37個のノード(1個の参照ノードと1個の文字から36個の非反復文字までの名前を持つ36個のノード)と1260個の関係があります。各テストの反復の前に、グラフをクリアして、(参照)ノードが1つだけになるようにします。

問題は、数回の反復が成功した後、neo4jRESTサーバーがクラッシュすることです。

無効なデータが送信されました

システムをクラッシュさせるクエリは異なる場合があります-これは問題を引き起こしたquery_stringの例です:

私はトレンドを見つけるために多くの時間を費やしましたが、無駄でした。クエリで何か問題が発生した場合、どのテストも機能しません。私は、5〜25ラウンドの成功したテストサイクルの数でクラッシュを観察しました。

neo4j RESTサーバーがクラッシュする原因は何ですか?

PSいくつかの詳細...

ノードは次のように作成されます。

念のため、新しいリレーションを作成するためのクエリを発行する前に、グラフをチェックして、ソースノードと宛先ノードが存在することを確認します。そのチェックは決して失敗しませんでした。

0 投票する
4 に答える
4439 参照

logging - 春のneo4jの暗号クエリをログに記録する

次のlog4j構成を使用して、Springデータneo4jによって生成された暗号クエリをログに記録しようとしました。

ただし、ログに暗号クエリが表示されていることはわかりませんでした。春のneo4jデータマッピング用に生成された暗号クエリを調査する方法について誰かがアイデアを持っていますか?

0 投票する
2 に答える
2410 参照

neo4j - Neo4j Cypher:WHERE句で配列Nodeプロパティと完全に一致するものを見つけます

配列プロパティを持つNeo4Jノードがある場合、配列リテラルに一致するノードのみを返すCypherクエリを作成するにはどうすればよいですか?

コンソールを使用して、「list」という配列プロパティを持つノードを作成しました。

ただし、私のクエリは、配列リテラルに一致するWHERE句を指定して作成されたばかりのノードを返しません。

Cypherを誤用している可能性は十分にあります。Cypherで正確な配列プロパティのマッチングを行うためのヒントがあれば役立ちます。

0 投票する
1 に答える
249 参照

neo4j - Neo4j Cypherバージョン1.8:関係識別子のバグの可能性

http://console.neo4j.org/r/yx62bk

上のグラフでは、クエリ

oをnullとして返します。

クエリを変更して、関係識別子を削除します-objectScore

そして出力はoノードを正しく返します。

私のシナリオでは、両方が必要です。どうすればいいのかわからない?これに関する提案。

0 投票する
1 に答える
713 参照

neo4j - 複数の開始ノードでの neo4j サイファーのパフォーマンス

http://console.neo4j.org/r/8mkc4z

上記のグラフでは、クエリの目的

Neo が m を知り、m が Cypher を知るように、m を見つけることです。

次のクエリでも同じことが実現できます-

1 つ目は where 条件を使用し、2 つ目は複数の開始ノードを使用します。

パフォーマンスの観点から、どちらをより速く実行する必要があり、おそらくどのシナリオで実行する必要がありますか。

複数の開始ノードでパフォーマンスの問題に直面しましたが、論理的には、条件がより高速である必要がある場所ではなく、開始ノードとして持っていると思います。

さまざまなシナリオに基づいて使用するアプローチに関する規則はありますか。

0 投票する
1 に答える
3391 参照

neo4j - 1つのCypherクエリで2つの集計を返しますか?

私は、2つの値の合計を取り、違いを見つけることに関して、Cypherと苦労してきました。ノードの送信合計と受信合計を見つける次の2つのクエリがあります。

基本的に私の質問は、Total_SentとTotal_Receivedの違いを理解できるように、これら2つの別々のクエリをどのように組み合わせるのですか?私は次のように複数の開始点を試しました:

しかし、Total_Receivedはnullです!私には、これは非常に単純なユースケースのように見えます-一体何が間違っているのでしょうか?

0 投票する
2 に答える
1213 参照

regex - Neo4j数値プロパティの正規表現マッチング

数値とプロパティを共有するノードがいくつかあります。reular式を使用してこのプロパティをフィルタリングしたいと思います。これはCypherクエリ言語を使用して可能ですか?

例:

numプロパティに数字が含まれているすべてのノードを取得するにはどうすればよいですか3(A、C、およびDを返す必要があります)。のようなものを試しましn.num =~ '3'たが、エラーが発生します( " java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String)")

何か案は?

0 投票する
2 に答える
1366 参照

neo4j - 非常に基本的な Neo4J Cypher が機能しない

Neo4j に関しては、初心者です。Web サイト管理者のコンソールを使用して Cypher を学習しようとしています。しかし、私が気付いていない、または構成設定が正しくないという癖があるようです。

例: 次の URL では、非常に単純な Cypher が提供されています (以下のコードを参照) http://docs.neo4j.org/chunked/1.7.2/shell-commands.html#_query_with_cypher

Neo4j 管理 Web サイトのコンソールで次の Cypher を実行すると、エラーが発生します。

しかし、次のCypherを実行すると. 「(0)」の前に「ノード」を追加したことに注意してください。すべて正常に動作します:

私が目にする多くの例では、同様のシーンで「ノード」という言葉が含まれていないようです。これは予想されることですか、それとも私が間違っていることがありますか?

Windows Server 2008 で Neo4j バージョン 1.7.2 を実行しています。