기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
openCypher 데이터의 로드 형식
형식을 사용하여 openCypher openCypher CSV 데이터를 로드하려면 노드와 관계를 별도의 파일로 지정해야 합니다. 로더는 단일 로드 작업으로 이러한 여러 노드 파일 및 관계 파일을 로드할 수 있습니다.
각 로드 명령에 대해 로드할 파일 세트는 Amazon Simple Storage Service 버킷에서 동일한 경로 접두사를 가져야 합니다. 소스 파라미터에 해당 접두사를 지정합니다. 실제 파일 이름과 확장자는 중요하지 않습니다.
Amazon Neptune openCypher CSV에서 형식은 RFC 4180 CSV 사양을 준수합니다. 자세한 내용은 Internet Engineering Task Force() 웹 사이트의 Common Format and MIME Type for CSV Files
참고
이러한 파일은 UTF-8 형식으로 인코딩MUST됩니다.
각 파일에는 시스템 열 헤더와 속성 열 헤더를 모두 포함하는 쉼표로 구분된 헤더 행이 있습니다.
openCypher 데이터 로드 파일의 시스템 열 헤더
지정된 시스템 열은 각 파일에 한 번만 표시될 수 있습니다. 시스템 열 헤더 레이블은 모두 대소문자를 구분합니다.
필요하고 허용되는 시스템 열 헤더는 openCypher 노드 로드 파일과 관계 로드 파일에 따라 다릅니다.
노드 파일의 시스템 열 헤더
-
:ID
– (필수) 노드의 ID입니다.노드
:ID
열 헤더에 필요에 따라:ID(
와 같이 ID 공간을 추가할 수 있습니다. 예를 들면,ID Space
):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 기간 형식을 참조하세요. 값은 검증 없이 문자열 그대로 로드됩니다. -
Point – 공간 데이터를 저장하기 위한 포인트 필드입니다. 공간 인스턴트
를 참조하세요. 값은 검증 없이 문자열 그대로 로드됩니다.
openCypher 로드 형식의 예
TinkerPop Modern Graph에서 가져온 다음 다이어그램은 두 노드와 관계의 예를 보여줍니다.
다음은 일반적인 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
두 번째 노드 파일:
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