Mysql에서 neo4j로 데이터를 마이그레이션하려고했습니다. Neo4j 2.1.2 64 비트 설치 프로그램을 64 비트 Windows 컴퓨터에서 사용하고 있습니다. postgreSQL에서 데이터를 마이그레이션하는 것이 잘 설명되어있는 http://maxdemarzi.com/2012/02/28/batch-importer-part-2/#more-660
블로그를 추적했습니다.mysql 데이터를 neo4j 데이터베이스로 마이그레이션
심지어 동일한 예제를 사용하고 mysql에서 sames 테이블을 만들었습니다. mysql에서 노드와 관계 테이블을 생성 한 후, csv 파일로 내 보낸다. 그래서 나는 그것들을 batch import
명령에서 사용할 수 있습니다. 여기 내 모든 필드는 varchar이고 row_number() fiels는 varchar 필드이기도합니다. 쿼리 아래 사용
SELECT *
INTO OUTFILE 'D:/Tech_Explorations/BigData_Related/Neo4j/mqytoneo4j/myrels.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '"'
LINES TERMINATED BY '\n'
FROM
(
SELECT 'start' AS `start`, 'end' AS `end`,'type' AS `type`,'status' AS `status`
UNION ALL
SELECT `start`, `end`,`type`,`status`
FROM `vouch_rels`
) `sub_query`;
myrels.csv 오 neo4j mynodes.csv을로드하고 :
나는 myrels.csv 파일로 (노드 테이블 같은 일을) 수출 mysql을의 관계 테이블에 아래 명령을 사용 : 내가 위의 일괄 가져 오기 쿼리를 실행하면java -server -Xms1024M -jar D:/Neo4j/target/batch-import-jar-with-dependencies.jar
neo4j/data/graph.db mynodes.csv myrels.csv
, 그것은 나에게 말하는 오류를주고
Exception in thread "main" java.lang.NumberFormatException: For input string: "1
,"1","python,confirmed"
여기서 "1,"1 ","python, confirmed "은 myrels.csv의 행입니다.
위의 오류는 일부 데이터 유형 또는 csv 파일 문제로 인한 것일 수 있지만이를 파악할 수는 없습니다. 심지어 나는 mysql에서 CSV 파일로 로딩하는 동안 다른 CSV로드 옵션을 변경하려고 시도했다. 하지만 여전히 같은 오류가 발생합니다.
mysql에서 neo4j로 데이터를 마이그레이션하려는 경우 java 일괄 가져 오기를 사용하고 싶습니다. 하지만 csv 파일을 탭으로 구분해야하는 이유는 무엇입니까? 거기에 어떤 이유가 있습니까? – shree11
Github 페이지 https://github.com/jexp/batch-import#neo4j-csv-batch-importer에서 굵은 글씨체로 "하나의 탭으로 구분 된 CSV 파일을 제공합니다"라고 굵게 표시되어 있습니다. – stephenmuss
또한 링크 'http : //stackoverflow.com/questions/20597702/how-to-import-csv-file-into-neo4j-numberformatexception? rq = 1'에서 같은 문제가 발견되었습니다. 거기에 쉼표로 구분 된 CSV 파일을 사용하고 싶다면, batch_import.csv.delim =,'my batch.properties '를 설정해야합니다. 하지만 어디에서 batch.properties 파일을 찾을 수 있습니까? 또한 배치 가져 오기 명령을 실행 한 후 cayeyed 하나의 batch.properties 파일을 발견했습니다. 이 파일에'batch_import.csv.delim =,'을 추가해야합니까? – shree11