翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
openCypher データのロード形式
形式を使用して openCypher データをロードするには、ノードと関係を openCypher CSV別々のファイルで指定する必要があります。ローダーは、単一のロードジョブで、これらのノードファイルとリレーションシップファイルの複数のからロードできます。
各ロードコマンドは、ロードされる一連のファイルと同じAmazon Simple Storage Service バケットのパスプレフィックスを持つ必要があります。そのプレフィックスは始点パラメータで指定します。実際のファイル名と拡張子は重要ではありません。
Amazon Neptune では、形式は openCypher CSV 4180 RFC CSV仕様に準拠しています。詳細については、インターネットエンジニアリングタスクフォース () ウェブサイトのCSV「ファイル (/rfc4180) の共通形式とMIMEタイプ
注記
これらのファイルは UTF-8 形式でエンコードMUSTされます。
各ファイルには、システム列ヘッダーとプロパティ列ヘッダーの両方を含むカンマ区切りのヘッダー行があります。
openCypher データロードファイルのシステム列ヘッダー
特定のシステム列は、各ファイルに 1 回のみ表示できます。すべてのシステム列ヘッダーラベルで、大文字と小文字が区別されます。
必須および許可されるシステム列ヘッダーは、openCypherノードロードファイルとリレーションシップロードファイルで異なります。
ノードファイル内のシステム列ヘッダー
-
:ID
— (必須) ノードの ID。オプションの ID スペースを
:ID(
のように、ノードID Space
):ID
列ヘッダーに追加できます。例は:ID(movies)
です。このファイル内のノードを接続するリレーションシップをロードするときは、リレーションシップファイルの
:START_ID
および/または:END_ID
列で同じ ID スペースを使用します。ノード
:ID
はオプションで、フォーム、
にプロパティとして格納できます。例はproperty name
:IDname:ID
です。ノードは、現在および以前のロードのすべてのノードファイルで一意IDsである必要があります。ID スペースを使用する場合、ノードは、現在および以前のロードで同じ ID スペースを使用するすべてのノードファイルで一意IDsである必要があります。
-
:LABEL
— ノードのラベル。複数のラベル値を使用できます。セミコロン (
;
) で区切ります。
リレーションシップファイル内のシステム列ヘッダー
-
:ID
— リレーションシップの ID。これは、userProvidedEdgeIds
が true (デフォルト) である場合に必要ですが、userProvidedEdgeIds
がfalse
の場合は無効となります。関係は、現在および以前のロードのすべての関係ファイルで一意IDsである必要があります。
-
:START_ID
— (必須) このリレーションシップが始まるノードのノード ID。必要に応じて、ID スペースをフォーム
:START_ID(
の開始 ID 列に関連付けることができます。開始ノード ID に割り当てられた ID スペースは、ノードファイル内のノードに割り当てられている ID スペースと一致する必要があります。ID Space
) -
:END_ID
— (必須) このリレーションシップが終了するノードのノード ID。必要に応じて、ID スペースをフォーム
:END_ID(
の終了 ID 列に関連付けることができます。終了ノード ID に割り当てられた ID スペースは、ノードファイル内のノードに割り当てられた ID スペースと一致する必要があります。ID Space
) -
:TYPE
— リレーションシップのタイプ。リレーションシップには、単一タイプのみを含めることができます。
注記
一括ロードプロセスで重複するノードまたは関係がどのように処理IDsされるかについては、 openCypher データのロード「」を参照してください。
openCypher データロードファイルのプロパティ列ヘッダー
次の形式のプロパティ列ヘッダーを使用して、列が特定のプロパティの値を保持するように指定できます。
propertyname
:type
列ヘッダーにはスペース、カンマ、キャリッジリターン、改行文字は使用できません。そのため、プロパティ名にこれらの文字を含めることはできません。以下に示しているのは、タイプ Int
の age
という名前のプロパティの列ヘッダーの例です。
age:Int
列ヘッダーとして age:Int
がある列は、すべての行に整数または空の値を含める必要があります。
Neptune データロードファイルの openCypher データ型
-
Bool
またはBoolean
— ブールフィールド。指定できる値はtrue
とfalse
です。true
以外の値はfalse
として扱われます。 -
Byte
—-128
から127
範囲内の整数。 -
Short
—-32,768
から32,767
範囲内の整数。 -
Int
—-2^31
から2^31 - 1
範囲内の整数。 -
Long
—-2^63
から2^63 - 1
範囲内の整数。 -
Float
– 32 ビット IEEE 754 浮動小数点数。十進表記と科学記法の両方がサポートされています。Infinity
、-Infinity
およびNaN
はすべて認識されますが、INF
はされません。桁数が多すぎて収まらない値は、最も近い値に丸められます (中間の値は、ビットレベルの最後の残りの桁で 0 に丸められます)。
-
Double
– 64 ビット IEEE 754 浮動小数点数。十進表記と科学記法の両方がサポートされています。Infinity
、-Infinity
およびNaN
はすべて認識されますが、INF
はされません。桁数が多すぎて収まらない値は、最も近い値に丸められます (中間の値は、ビットレベルの最後の残りの桁で 0 に丸められます)。
-
String
- 引用符はオプションです。カンマ、改行、およびキャリッジリターン文字は、"Hello, World"
のような二重引用符 ("
) で囲まれた文字列に含まれると自動的にエスケープされます。引用符で囲まれた文字列に引用符を含めるには、
"Hello ""World"""
のように、行内で 2 つ使用してください。 -
DateTime
– 次のいずれかの ISO-8601 形式の Java 日付。yyyy-MM-dd
yyyy-MM-ddTHH:mm
yyyy-MM-ddTHH:mm:ss
yyyy-MM-ddTHH:mm:ssZ
Neptune データロードファイルで openCypher データ型を自動キャストする
オートキャストデータ型は、現在 Neptune がネイティブにサポートしていないデータ型をロードするために提供されます。このような列のデータは文字列として保存され、意図した形式に対する検証は行われません。次のオートキャストデータ型を使用できます。
-
Char
—Char
フィールド。文字列として格納されます。 -
Date
、LocalDate
およびLocalDateTime
、 —date
、localdate
およびlocaldatetime
タイプの説明については、Neo4j 一時的インスタントを参照してください。値は、検証なしで文字列として逐語的にロードされます。 -
Duration
— Neo4j デュレーション形式を参照してください。値は、検証なしで文字列として逐語的にロードされます。 -
ポイント — 空間データを格納するためのポイントフィールド。「空間インスタント
」を参照してください。値は、検証なしで文字列として逐語的にロードされます。
openCypher ロード形式の例
TinkerPop Modern Graph から取得した次の図は、2 つのノードと関係の例を示しています。
以下は、通常の Neptune openCypher ロード形式のグラフです。
ノードファイル:
:ID,name:String,age:Int,lang:String,:LABEL v1,"marko",29,,person v2,"lop",,"java",software
リレーションシップファイル:
:ID,:START_ID(person),:END_ID(software),:TYPE,weight:Double e1,"marko","lop",created,0.4
または、次のようにプロパティとして ID スペースと ID を使用することもできます。
最初のノードファイル:
name:ID(person),age:Int,lang:String,:LABEL "marko",29,,person
2 番目のノードファイル:
name:ID(software),age:Int,lang:String,:LABEL "lop",,"java",software
リレーションシップファイル:
:ID,:START_ID,:END_ID,:TYPE,weight:Double e1,"marko","lop",created,0.4