問題タブ [orientdb-etl]
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.
etl - etl を使用してエッジを OrientDB にインポートする
3 つのテーブルがあり、1 つは頂点 A 用、1 つは頂点 B 用、3 つ目は B から A へのエッジ用です。このグラフを OrientDB にインポートするにはどうすればよいですか?
今のところ、チュートリアルでは 2 つの csv ファイルをインポートする方法について説明しています。1 つは頂点 A 用で、もう 1 つは頂点 B と A から接続された頂点用です。頂点 A を読み込み、次に頂点 B を読み込み、A から B へのエッジを作成します。平均時間。
これは単純なグラフで機能します。しかし、複雑なグラフの場合、たとえば、A、B、C の 3 種類の頂点と、A -> B、B -> C、C -> A の 3 種類のエッジがあります。このグラフをインポートするにはどうすればよいですか?
JAVA APIが解決策であるはずですが、etlを使用してグラフをロードしたいです。
更新:
最後に、スタック オーバーフローのしくみを理解しました。コメントにデータを挿入しようとするのではなく、代わりに質問を更新してください。
これは私の質問の具体例です:
2 種類の頂点:
マスター (ジョン、ジョーイ、マイケル、ロバート、アレン)、
ペット (スヌーピー、ホワイト、ブルー)。
2 種類の関係:
like (ジョンはスヌーピーが好き、マイケルは白が好き、マイケルは青が好き、アレンはスヌーピーが好き、マイケルは白が好き)、
所属 (スヌーピーはジョーイに属し、白はロバートに属し、青はジョンに属している)。
この小さなネットワークを OETL を使用して OrientDB にインポートするにはどうすればよいですか?
etl - OrientDB は、ETL ツールを使用してのみエッジをインポートします
OETL を使用して、すべての頂点をグラフに挿入しました。
これで、次の方法でエッジの輪郭を描いたファイルができました。
node_1,rel_type,node_2
11000001,relation_A,10208879
11000001,relation_A,10198662
11000001,relation_B,10159927
11000001,relation_C,10165779
OrientDB OETL ツールを使用してインポートするにはどうすればよいですか?
私は次のことを試しました:
しかし、csv からの値を解析できないため、これは機能しませんでした。
graph - JavaScript関数クエリなどを保存するためのオリエントDBの場所
こんにちは、私はオリエント DB を持っていますが、これは非常に優れたクールなデータベースですが、http レストを介していくつかの操作を行う必要があります。関数を orient DB に保存したいのですが、git を使用して関数やバージョンを管理するにはどうすればよいですか?そのためのツールが必要です。おそらく 50 の異なる関数があり、すべての関数の背後にはメンテナンスが必要な長いクエリがあります。アドバイスをお願いします。
orientdb - OrientDB ETL: 重複する頂点をスキップしてエッジを作成する方法
コミュニケーショングラフを作成しています。
各メッセージには msgid があり、各人にはユーザー ID があります。
メッセージ頂点は既に作成しています。次に、ユーザー頂点と、メッセージ頂点をユーザー頂点に接続するエッジを作成します。
ユーザーは複数のメッセージを受け取ることができます (当然のことです)。
私のファイルには次が含まれています:
msgid、userid、(およびエッジに割り当てるその他の情報)
私が抱えている問題は、ファイルに重複したユーザー ID があることです (ユーザーは複数のメッセージを取得できるため)。ユーザー ID を使用して別の頂点を作成したくないので、Duplicates をスキップします。しかし、重複をスキップすると、エッジも作成されません。各エッジが 1 つのメッセージを表すため、同じユーザー頂点に複数のエッジが必要です。
ユーザー頂点を一意に保ちながらエッジを作成するにはどうすればよいですか?
上記で詳述したものを除いて、正常に機能する現在の ETL .json ファイル。
java - ETL ローダーが FileNotFoundException をスローします: json ファイルの読み込み中にエラーが発生しました
OSX マシン (10.11.6) 上の OrientDB 2.2.5 で ETL ローダーを動作させようとしていますが、入力 JSON ファイルで FileNotFoundException が発生し続けます...
post.csv および post.json ファイルのチュートリアルにある例からは外れます。パスは自分のパス構造とうまく一致しないため、パスを削除するように変更しました。
ここに私のpost.csvがあります:
post.json ファイル:
環境変数 ORIENTDB_HOME を orientdb-community-2.2.4 がある場所に設定し、$ORIENTDB_HOME/bin をパスに入れました。
次のように入力すると:
出力は次のとおりです。
正しい修正方法がわからない... 私の問題は、以前に尋ねられた別の質問に似ているようですが、パスにスペースがないため、その修正はうまくいきませんでした。構成ファイルに絶対パスを設定しようとしましたが、何も変更されていません。
posts.json および posts.csv ファイルが配置されているディレクトリから oetl.sh を実行していますが、まだ posts.json を見つけることができないようです。
更新: 両方のファイル (posts.json、posts.csv) は同じディレクトリに配置されています。oetl.sh だけでなく oetl.sh posts.json も実行しようとしましたが、例外が発生し続けます。また、posts.json を編集して、完全な絶対パスも含まれるようにして、結果が変わらないようにしました。
どんな助けでも大歓迎です...おそらくある種のJava構成の問題だと思いますが、私はJavaに比較的慣れていないので、環境変数などを見逃している可能性がありますか?
orientdb - OrientDB 2.2.7 CSV の ETL が DateTime フィールドをロードしない?
ETL ローダーを使用してロードする簡単な例を取得しようとしていますが、何か不足しているに違いありません。私は Stack Overflow のさまざまなスレッドをたどり、extractors に関するドキュメントを参照してきましたが、私の試みでは不足しています。
ここに私のデータがあります: vertices.csv
これを PLOCAL データベースにロードするために、2 つの JSON ファイルを設定しています。
頂点.json
およびcommonVertices.json
次のコマンドで oetl.sh を使用してロードしています。
デバッグ情報を含む出力は次のとおりです。
読み込まれますが、次のクエリで示されるように、日付フィールドにデータが入力されていません。
これまでのところ、いじくり回すと、「dateFormat」および「columns」フィールドをcommonVertices.jsonファイルから除外すると、ETLは日付をインポートするようですが、そうすることでDATEをインポートする可能性がありますが、インポートしません時間。
私はこれに少し行き詰まっています。バグのように見えますが、OrientDBを初めて使用するので、簡単な解決策があるユーザーエラーに過ぎないことを願っています。
いつものように、どんな助けも大歓迎です!
performance - OrientDB にギガバイト単位のデータをロードするためのパフォーマンス チューニング
現在、ETL ツールを使用して、多数の CSV データを OrientDB に挿入しています。試用目的で使用したシステム構成は、EC2 M3 大 (7.5 GiB のメモリ、2 つの vCPU、32 GB の SSD ベースのローカル インスタンス ストレージ、64 ビット プラットフォーム) です。
アップロードしようとしているデータ (マスクされた) は、以下の形式です。
スキーマには、2 つのノード クラスと 1 つのエッジ クラスが含まれています。plocal オプションで ETL ツールを使用してデータをロードしようとしたところ、速度は約 2300 行/秒でした。ETL 構成は次のとおりです。
次に、頂点をファイルに分割し、頂点のみに対して ETL ジョブを実行しました。今回の速度は 12500 行 / 秒に近いです。これはかなり高速で、この種の作品は私にとってはうまくいきました。(インデックスを削除すると、速度はほぼ2倍になりました)使用した構成は次のとおりです。
ただし、エッジだけを挿入しようとすると、速度が2200行/秒で非常に遅くなりました。これは、1 回の実行で操作全体を実行するよりもさらに低いことが判明しました。構成ファイルは以下に添付されています。
ここで何か間違ったことをしている場合はお知らせください。また、パフォーマンスを改善するためのより良い方法を提案してください