Neo4jで俳優と動画の関係を作成する
手順
-
3番目のtFileInputDelimitedコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
-
[File name/Stream] (ファイル名/ストリーム)フィールドで、動画における俳優の役が説明されているCSVファイルへのパスを指定します。
このサンプルに使用している入力CSVファイルは、次のとおりです。
Actor;Movie;Role Keanu Reeves;The Matrix;Neo Keanu Reeves;The Matrix Reloaded;Neo Keanu Reeves;The Matrix Revolutions;Neo Laurence Fishburne;The Matrix;Morpheus Laurence Fishburne;The Matrix Reloaded;Morpheus Laurence Fishburne;The Matrix Revolutions;Morpheus Carrie-Anne Moss;The Matrix;Trinity Carrie-Anne Moss;The Matrix Reloaded;Trinity Carrie-Anne Moss;The Matrix Revolutions;Trinity
- [Header] (ヘッダー)フィールドで、ヘッダー行としてスキップする行数を指定します。この例では、CSVファイルの最初の行がヘッダー行です。
-
[Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックして[Schema] (スキーマ)ダイアログボックスを開き、入力ファイルの構造をベースに入力スキーマを定義します。このサンプルでは、入力スキーマは3つのカラム、actor、movie、roleで構成されています。いずれも[String] (文字列)型です。
終了したら[OK]をクリックして[Schema] (スキーマ)ダイアログボックスを閉じ、スキーマを次のコンポーネントにプロパゲートします。
-
tNeo4jOutputRelationshipコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを開きます。
- [Use an existing connection] (既存の接続を使用)チェックボックスをオンにし、tNeo4jConnectionコンポーネントによって開かれたNeo4jデータベース接続を再利用します。このコンポーネントは、このサンプルで使用している唯一の接続コンポーネントです。
- [Relationship type] (関係のタイプ)フィールドに、作成する関係のタイプを二重引用符で囲んで入力します。このサンプルでは、関係のタイプはACTED_INです。これはノード間の関係のラベルとして表示されます。
-
開始ノードと終了ノード、および作成する関係の方向を定義します。このサンプルでは、nameというインデックスが定義されているActorsノードから、titleというインデックスが定義されているMoviesノードへの方向で関係を作成します。
-
[Start node] (開始ノード): [Index name] (インデックス名)フィールドと[Index key] (インデックスキー)フィールドにnameを二重引用符で囲んで入力し、[Index value] (インデックス値)リストからスキーマカラムnameを選択します。インデックスの作成で[Value] (値)フィールドが空白のままであるため、インデックス値はどの行もカラムnameの値になります。
-
[Relationship direction] (関係の方向)リストから[Outgoing] (出力)を選択します。
-
[End node] (終了ノード): [Index name] (インデックス名)フィールドと[Index key] (インデックスキー)フィールドにtitleを二重引用符で囲んで入力し、[Index value] (インデックス値)リストからスキーマカラムtitleを選択します。インデックスの作成で[Value] (値)フィールドが空白のままであるため、インデックス値はどの行もカラムtitleの値になります。
-
-
[+]ボタンを3回クリックし、Mappingテーブルに3つの行を追加して、関係の3つのプロパティを定義します。
Property
値が取られた場所...
[Actor] (アクター)
スキーマのactorカラム
Movie
スキーマのmovieカラム
ロール
スキーマのroleカラム