DSE Graph Loaderの概要
DSE Graph Loaderは、グラフ・データセットをさまざまな入力ソースからDSE Graphに読み込むための、カスタマイズと高度な調整が可能なコマンドライン・ユーティリティです。
DSE Graph Loaderは、グラフ・データセットをさまざまな入力ソースからDSE Graphに読み込むための、カスタマイズと高度な調整が可能なコマンドライン・ユーティリティです。DataStax Enterpriseと一緒にインストールされないため、別途インストールする必要があります。
DSE Graph Loaderは、数億(10^8)の頂点と数十億(10^9)のエッジを含んだデータセットを読み込むように構築されています。DSE Graph Loaderは、並列読み込みと永続的なキャッシュを使用して頂点を効率よく格納します。ただし、プログラムを実行できるだけの十分なマシンを使用した場合に限ります。
データは、CSVファイル、JSONファイル、区切りテキスト(フィールドを識別するためのヘッダー行を含むCSV)、正規表現で解析されたテキスト、およびバイナリーGryoファイルから読み込むことができます。Hadoop分散ファイル・システム(HDFS)およびAWS S3ソースから入力ファイルを読み取るために、分散型ファイルシステムがサポートされています。また、JDBC互換データベースやNeo4Jデータベースからの入力データの直接読み取りもサポートしています。入力ファイルは非圧縮ファイルまたは圧縮ファイルにすることができます。すべてのデータを読み取り時に変換して、グラフに読み込まれたデータを操作できます。
入力ソース・ファイルからのデータをマップして、頂点またはエッジをその両方のプロパティとともに定義できます。マッピング・スクリプトは、読み込みパラメーターを構成し、入力パラメーターを定義して、各入力レコードからグラフ要素へのマッピングを識別します。頂点とエッジのプロパティは両方とも、読み込まれるデータに含めることができます。
- 準備
- 入力データ全体を読み取って、グラフのスキーマの適合性を確認します。グラフのスキーマを更新するよう提案します。有効な場合は、グラフのスキーマを変更します。データの読み込み時にグラフに追加されるデータ量についての統計を出します。この段階で読み込み処理を停止するには、
dryrun
構成オプションを使用できます。 - 頂点の読み込み
- 入力データ内のすべての頂点を追加または取得し、その後のエッジの読み込み時間を短縮するためにローカルでキャッシュします。
- エッジとプロパティの読み込み
- すべてのエッジとプロパティを入力データからグラフに追加します。
DSE Graph Loaderを使用する際に覚えておきたい重要な特徴は、基盤となるDSEデータベースのupsertという性質です。頂点が既に存在する場合、DSE Graph Loaderは、選択した構成に応じて、格納されているデータを新しいプロパティ値で更新します。構成を使用して、読み込まれたデータが新しいかどうか、または現時点で存在するデータをオーバーライドするかどうかを識別できます。同じエッジが複数回にわたって読み込まれ、エッジ・ラベルが複数のカーディナリティのデフォルトに設定されている場合は、エッジが複製されます。
DSE Graph Loaderを使用してデータを読み込む前に、グラフのスキーマを作成することを強くお勧めします。スキーマを作成しないと、データの正しいデータ型が指定されません。インデックスの作成は、読み込みプロセスの時間を大幅に短縮し、受け入れ可能な読み込みのパフォーマンスを達成するのに必要です。