問題タブ [neo4jphp]
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.
java - 非永続的なグラフ データベース - PHP を使用したメモリ内の Neo4j
ドキュメントの単体テストを見て、PHPでもそれを実行できるようにしたいと思います。私たちが使用しているこのライブラリがあり、データベースで多くのテストを行う必要があります。
Neo4j 2.1.3 を使用して、Java 以外のプログラミング言語でそれを行う方法についてのアイデアはありますか?
neo4j - neo4j cypher - クエリを実行できません [400]、「StackOverflowError」例外
長いクエリを実行しようとすると、次の例外が発生します。
クエリを実行できません [400]:\nHeaders: Array\n(\n [Content-Type] => application/json; charset=UTF-8; stream=true\n [Access-Control-Allow-Origin] => *\n [転送エンコーディング] => チャンク\n [サーバー] => Jetty(9.0.5.v20130815)\n)\n本体: 配列\n(\n [例外] => StackOverflowError\n [フルネーム] = > java.lang.StackOverflowError\n [stacktrace] => Array\n (\n [0] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [1] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [2] => scala.collection.Iterator$$anon$11. next(Iterator.scala:328)\n [3] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [4] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [5] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [6] => scala.collection .mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [7] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [8 ] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [9] => scala.collection.AbstractIterator.to(Iterator.scala:1157)\n [10] => scala.collection .TraversableOnce$class.toList(TraversableOnce.scala:257)\n [11] => scala.collection.AbstractIterator.toList(Iterator.scala:1157)\n [12] => org.neo4j.cypher.internal.compiler .v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [13] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [14] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328)\n [15] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [16] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [17] => scala.collection. generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [18] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [ 19] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [20] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [21] => scala.collection.AbstractIterator.to(Iterator.scala:1157)\n [22] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [23] => scala.collection.AbstractIterator.toList(Iterator.scala:1157)\n [24] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$ BottomUpRewriter.apply(Rewritable.scala:137)\n [25] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [26] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328)\n [27] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [28] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [29] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [30] = > scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [31] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [32] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [33] => scala.collection .AbstractIterator.to(Iterator.scala:1157)\n [34] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [35] => scala.collection.AbstractIterator.toList(Iterator .scala:1157)\n [36] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [37] => org.neo4j.cypher.internal .compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [38] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328)\n [39 ] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [40] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [41] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [42] => scala .collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [43] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [44] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [45] => scala.collection.AbstractIterator.to(Iterator.scala:1157)\n [46] => scala .collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [47] => scala.collection.AbstractIterator.toList(Iterator.scala:1157)\n [48] => org.neo4j.cypher.internal .compiler.v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [49] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [50] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328)\ n [51] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [52] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [53] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [54] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176 )\n [55] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [56] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala: 273)\n [57] => scala.collection.AbstractIterator.to(Iterator.scala:1157)\n [58] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [59] => scala.collection.AbstractIterator.toList(Iterator.scala:1157)\n [60] => org.neo4j.cypher.internal.compiler. v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [61] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\ n [62] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328)\n [63] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [ 64] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [65] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)\n [66] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [67] =>scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:45)\n [68] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [69] = > scala.collection.AbstractIterator.to(Iterator.scala:1157)\n [70] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [71] => scala.collection.AbstractIterator .toList(Iterator.scala:1157)\n [72] => org.neo4j.cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter.apply(Rewritable.scala:137)\n [73] => org.neo4j .cypher.internal.compiler.v2_1.bottomUp$BottomUpRewriter$$anonfun$1.apply(Rewritable.scala:137)\n [74] => scala.collection.Iterator$$anon$11.next(Iterator.scala:328) \n [75] => scala.collection.Iterator$class.foreach(Iterator.scala:727)\n [76] => scala.collection.AbstractIterator.foreach(Iterator.scala:1157)\n [77] => scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala :48)\n [78] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [79] => scala.collection.mutable.ListBuffer.$plus$plus $eq(ListBuffer.scala:45)\n [80] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [81] => scala.collection.AbstractIterator.to(Iterator.scala :1157)\n [82] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [83] => スケール48)\n [78] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [79] => scala.collection.mutable.ListBuffer.$plus$plus$ eq(ListBuffer.scala:45)\n [80] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [81] => scala.collection.AbstractIterator.to(Iterator.scala: 1157)\n [82] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [83] => スケール48)\n [78] => scala.collection.mutable.ListBuffer.$plus$plus$eq(ListBuffer.scala:176)\n [79] => scala.collection.mutable.ListBuffer.$plus$plus$ eq(ListBuffer.scala:45)\n [80] => scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)\n [81] => scala.collection.AbstractIterator.to(Iterator.scala: 1157)\n [82] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [83] => スケール1157)\n [82] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [83] => スケール1157)\n [82] => scala.collection.TraversableOnce$class.toList(TraversableOnce.scala:257)\n [83] => スケール
クエリ:
start k=node:node_auto_index("title:abc*") [123,456,...] 内の k.id は個別の k.prop を返します。
上記の場所には、約3000のIDのリストがあります。私は neo4j-community-2.1.2 と neo4jphp を使用しています。これに対する回避策はありますか?
neo4j - Neo4php を使用して Neo4j で時間がかかりすぎるリレーションシップを作成する
私は、neo4jphp [ https://github.com/jadell/neo4jphp/wiki]を使用して、新しいモジュールのノードと関係シップを作成しようとしています。
同じために暗号クエリを使用しています。
以下のクエリでノードを作成します。
以下のクエリで関係を作成します。
これまでのところ、ノードの作成は gr8 で動作します。
しかし、ノードの一意の関係を作成しようとすると、時間がかかりすぎます....
注: ラベル User には一意の制約 userid があるため、ラベル user を持つノードはプロパティ userid で Neo4j によってインデックス化されます。
質問:
- 他にユニークな関係を築く方法はありますか?
- リレーションシップにインデックスを使用できますか?? はいの場合、どうすれば同じことを達成できますか。
php - neo4j で名前付きインデックスを作成する
インデックスを作成してノードを追加するサンプルケースにneo4j phpを使用しています
このインデックスは、REST API でデータを参照することで確認できます。
今、私はいくつかのアクターを一括ロードしました。同じインデックスを使用してそれらにインデックスを付けることはできますか?ノードを見つけるために使用するneo4jphpコードで、それらにインデックス(アクターの名前付きインデックス)を追加する方法が本当にわかりませんデータにインデックスを付けた場合にのみ役立ちます。
neo4j - グラフ データ モデリング (Neo4j)
私はグラフデータベースが初めてです。データのモデリング中に問題が発生しました。私は本に関する情報を含むサイトに取り組んでいます。アート、フィクションなどのさまざまなカテゴリに本を分類しました。カテゴリごとにノードを生成しました。カテゴリのノードは互いに接続されておらず、最初の問題が発生する場所です。この問題を解決するために、カテゴリと呼ばれるノードにインデックスを付け、すべてのカテゴリ ノードをそれに接続します。これにより、高密度ノードまたはスーパー ノードの 2 番目の問題が発生します。これらの問題を解決する方法を教えてください。
class - neo4jphp: 抽象クラス Everyman\Neo4j\Transport をインスタンス化できません
簡単な質問かもしれませんが、Neo4j の初心者としての私にとってはハードルです。アプリケーションと同じディレクトリに、composer を使用して neo4jphp をインストールしました。Vendor-Subfolder が作成され、以下の everyman/neo4j フォルダーが使用可能になります。最初のテストでは、サンプルから次のコード スニペットを使用しました。
私はいつもエラーに出くわします
致命的なエラー: 抽象クラス Everyman\Neo4j\Transport をインスタンス化できません
グーグルでジョシュ・アデルからのコメントにたどり着きました。
Everyman\Neo4j\Transport は抽象クラスであるため、インスタンス化できません。必要に応じて、Everyman\Neo4j\Transport\Curl または Everyman\Neo4j\Transport\Stream をインスタンス化する必要があります。
だから私は use-statement を
しかし、これは機能しません。デバッグでは、オートローダーが「everyman\Neo4j\Transport\Curl.php」ではなく「Transport.php」のみを取得することが示されています。「Client.php」の場合はまだ機能しています(「vendor\everyman\Neo4j\Client.php」)ので、use-statementが間違っているか、コードが追加のサブフォルダー構造を処理できないと推測しています。
使用する
require('phar://neo4jphp.phar');
正常に動作しますが、これは非推奨であり、composer / autoload に置き換える必要があることを読みました。
誰が何を変更するか、または同じ問題を抱えているかのヒントを持っていますか?
時間をありがとう、バラエル
neo4j - Neo4j 書き込みパフォーマンスの改善
以下のようなシナリオがあります。
現在、上記の暗号クエリは順次実行されています。書き込み操作のパフォーマンスを改善する必要があります。
p,b1,b2,b3 の作成は並行して行うことができると思います。これが完了すると、p と b1、b2、および b3 の間の接続が並行して発生する可能性があります。また、上記のクエリは、個別の書き込み操作ではなく、単一のバッチで実行できると思います。
私はneo4jphpとnode-neo4jを使用しています。
Transactional Cypher HTTP endpointとBatch operationsがあると思います。これらは書き込みパフォーマンスを向上させるかどうか? 上記の場合、どちらが適切ですか?
neo4jphp はバッチ トランザクションとサイファー トランザクションをサポートしているようです。しかし、node-neo4j でバッチ/サイファー トランザクションを実現できるかどうかはわかりません。