問題タブ [graphenedb]
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.
python - PythonAnywhere を使用して GrapheneDB に接続しているときに「接続が拒否されました erno 111」
GrapheneDB への接続を確立しようとしています。
このコードを Spyder で実行していますが、問題なく動作しています。
このコードをサーバー (Pythonanywhere) で実行するとすぐに
エラーが表示されます: connect raise ServiceUnavailable("{!r} への接続を確立できませんでした (reason {})".format(resolved_address, error)) neobolt.exceptions.ServiceUnavailable: への接続を確立できませんでした ('54.234.36.208', 24787 ) (理由 [Errno 111] 接続が拒否されました)
何が悪いのかわかりません。GrapheneDB は、どこでも python のホワイトリストにも載っています。
neo4j - Neo4J 保存クエリのパフォーマンス (GrapheneDB)
Neo4J グラフ データベース (プロバイダーとして GrapheneDB を使用) を利用する .Net アプリケーションを作成しました。新しいグラフ オブジェクトを保存すると、パフォーマンスの問題が発生します。グラフの履歴を保持していないので、保存するたびに、最初にノードと関係を含む古いグラフを削除してから、新しいグラフを保存します。ノードにまだインデックスを付けていません。これらのグラフを一度に複数ロードするのは非常に高速なので、これは問題ではないと思います。
私の save メソッドは、各ブランチをステップ実行し、ノードと関係をマージします。(きれいにするために、各ステップから関係を除外しました)。完全なクエリが作成された後、コードは 1 回で実行されます。
- ルート ノード 37 とノード 4 をマージします。
- type1 ノード 12-17 を 4 とマージ
- type2 ノード 18-22 を 4 とマージ
- 2 を 37 とマージする
- 7-11 を 2 にマージ
- 5 を 37 とマージします (関係を作成します)
- 23-26 を 5 にマージ
- 6 を 37 とマージします (関係を作成します)
- 30-27 を 6 とマージ
ノード 2、4、5、6 は、100 ~ 200 のリーフ ノードを持つことができます。私のデータベースには、これらのグラフが約 100 個あります。この保存には、実稼働環境でサーバーに 10 ~ 20 秒かかる場合があり、タイムアウトになることもあります。
別の方法で保存しようとしましたが、時間がかかりますが、タイムアウトすることはあまりありません。最初にノードのグループを作成します。各ノードにはルート ID 37 が格納されます。各グループは個別の実行で作成されます。ノードを作成したら、子ノードとルート ノードを選択して関係を作成します。これにより、クエリが個別の小さなクエリに分割されます。
この保存のパフォーマンスを改善するにはどうすればよいですか? これらのグラフを 30 個読み込むには、3 ~ 5 秒かかります。また、データが追加されるにつれて、保存のパフォーマンスが大幅に低下することにも注意してください。