DSE Graph Loaderリファレンス

DSE Graph Loaderリファレンス。

構文

graphloader loadingScript [[-option value]...]
オプションは、コマンドラインで呼び出すか、読み込みスクリプトに含めることができます。必須のオプションにはマークが付いています。
オプション データ型 デフォルト 説明
-timeout 整数 120000 接続がタイムアウトになるまでの時間(ミリ秒単位)。
-graph String   読み込み先のグラフの名前。必須
-address String   接続先のDSE GraphインスタンスのIPアドレス(およびポート)。必須
-read_threads 数字 1 データ入力からデータを読み込むために使用するスレッドの数。
-load_threads 数字 1 グラフにデータを読み込むために使用するスレッドの数。
-dryrun Boolean false データ・インテグリティとスキーマ整合性を検証するためだけに試行を行うかどうか。
-preparation Boolean true データを分析し、必要に応じてスキーマを更新するための予備手順を実行するかどうか。
-create_schema Boolean false 欠落しているスキーマ要素について、スキーマを更新または作成するかどうか。
-schema_output String proposed_schema.txt ドライ・ランを実行する際に提案されたスキーマを保存するファイルの名前。無効にする場合は、空白のままにします。
-load_vertices_only Boolean false 頂点のみを読み込み、辺とプロパティを無視します。
-batch-size 数字 100 読み込むバッチのサイズ。
-queue-size 数字 10000 データ取得キューのサイズ。
-load_new Boolean false 読み込まれた頂点が新規で、グラフにまだ存在しないかどうか。
-driver_retry_attempts 整数 3 リトライ試行回数。0より大きい場合、要求は回復可能な障害の後に再送信されます。
-driver_retry_delay ミリ秒 1000 ドライバーのリトライ間の時間(ミリ秒単位)。
-abort_on_num_failures 整数 100 読み込みが中断される障害の回数。
-filename String   頂点データの読み込み元のファイル。マッピング・スクリプトで定義されていない場合は必須。
-label String   データが追加される頂点のラベル。空白のままにした場合、入力ファイルの名前が頂点ラベル名として使用されます。
-compress String none ファイルの圧縮。選択肢はnone、gzip、およびxzipです。
-reporting_interval 整数 1 ログに書き込まれた各進行状況レポート間の時間(秒単位)。
-abort_on_prep_errors Boolean true 通常、準備時または中断した頂点の挿入フェーズ中にエラーが発生した場合、これをfalseに設定することで、許容される障害の最大数までローダーが動作を続行します。
-load_failure_log String load_failures.txt 失敗したレコードが格納されるファイルの名前と場所。
-username String   認証用のユーザー名。
-password String   認証用のパスワード。

構文の凡例 

各文の構文セクションの形式には、以下のような意味があります。

  • 大文字はリテラルを意味する
  • 小文字は、リテラルでないことを意味する
  • イタリック体は指定が任意であることを意味する
  • パイプ(|)記号はORまたはAND/ORを意味する
  • 省略記号(...)は繰り返し可能を意味する
  • 範囲記号「(」および「)」はリテラルではなく、範囲を示す

説明

DSE Graph Loaderは、最大1億個の頂点と10億個の辺を読み込むためのユーティリティです。このユーティリティは、メモリー内のすべての頂点をキャッシュ可能で、読み込みプロセスを並列処理できるコアを持つ十分に強力なコンピューター上で実行されます。負荷がさらに大きい場合、ユーティリティを別のマシン上で実行する必要があります。

DSE Graph Loaderは、引数としての読み込みスクリプトと、構成オプション-値のペアの変数を持つコマンドラインで呼び出されます。読み込みスクリプトは、読み込まれる入力データと、そのデータをグラフにマップする方法を指定します。読み込みスクリプトによって、オプション-値のペアも構成されます。

読み込みプロセスには以下の3つの段階があります。
準備
入力データ全体を読み取ります。この段階で、データがグラフ・スキーマに一致するか、指定されたデータ(有効な場合)に従ってグラフ・スキーマが更新されます。この段階の終了時に、グラフに追加されるデータの量に基づいて統計的な推定値が与えられますが、データは読み込まれません。Set
-dryrunをtrue
に設定すると、準備段階が終了し、何らかの変化が生じる前に読み込みプロセスが中断します。出力を検査し、予想と一致していることを確認します。大きなデータセットの場合は、エラーを見つけるためにドライ・ランを実行することが重要です。
頂点の読み込み
第2段階で、入力データのすべての頂点を追加または取得し、ローカルでキャッシュして、後続の辺の読み込みを迅速化します。
辺およびプロパティの読み込み
入力データのすべての辺およびプロパティをグラフに追加します。

読み込みスクリプトまたはマッピング・スクリプトは、入力ファイルからグラフにデータを読み込むために使用する特定のマッピングを指定するのに必要です。DSE Graph Loaderは、CSV、JSON、区切りテキスト、および正規表現で解析されたテキストという4つのファイルベースのデータ入力タイプをサポートしています。ファイルベースの入力形式はすべて、入力データ・ファイルの圧縮をサポートしています。

読み込みプロセス中のログ記録は、トラブルシューティングが必要な場合に役立つ情報を提供します。読み込みプロセスの3つの段階は、ログに詳しく記録されます。

使用可能なオプションのリストを取得するには、-helpを使用します。
$ graphloader -help
この例では、読み込みスクリプトmymapscript.groovyを使用して、ファイル/tmp/recipe/all.datのデータをlocalhost上で実行中のグラフtestに読み込みます。データを挿入せずに読み込みのテストを実行するには、ドライ・ランを指定します。
$ graphloader mymapscript.groovy -filename /tmp/recipe/all.dat -graph test -address localhost -dryrun true 
この例では、読み込みスクリプトcsv2Vertex.groovyを使用して、ファイルMyUsers.csvのデータをlocalhost上で実行中のグラフcsvTestに読み込みます。-labelオプションによって、頂点ラベルはファイル名MyUsersではなくUserになるように指定されます。
$ graphloader ./scripts/csv2Vertex.groovy -filename MyUsers.csv -graph csvTest -label User -address 127.0.0.1
大きなデータセットを読み込む場合、すべての頂点をキャッシュするようにヒープ・スペースを構成します。このコマンドによってJavaが実行され、DSE Graph Loaderのjarファイルが呼び出されます。例:
$ java -Xmx10g -jar dse-graph-loader.jar
読み込みスクリプトで構成設定も指定できます。create_schemaをtrueに設定し、load_threadsを3に設定する読み込みスクリプトの一部を以下に示します。
// CONFIGURATION
// スキーマを作成し、load_threadsを3に設定するようにデータ・ローダーを構成します
config load_new:true, load_threads: 3