25

LOAD CSV로 데이터 임포트

Neo4j 설치 & 환경 구성

실제 데이터를 Neo4j에 넣어보자

이 실습의 목표

실무에서는 CSV, JSON 등 외부 데이터를 Neo4j에 임포트해야 합니다. LOAD CSV는 Neo4j의 내장 데이터 로딩 기능으로, 별도 도구 없이 Cypher 쿼리만으로 데이터를 임포트할 수 있습니다.

이 실습에서는:

  • LOAD CSV 기본 문법 이해
  • 온라인 CSV 파일 로딩 (URL)
  • 로컬 CSV 파일 로딩 (Docker)
  • 데이터 타입 변환
  • 관계 생성 패턴

실습 과제

LOAD CSV 기본 구조

에디터 로딩 중...

실습 1: 온라인 CSV로 영화 데이터 로딩

Neo4j가 제공하는 샘플 CSV를 활용합니다:

에디터 로딩 중...
에디터 로딩 중...
에디터 로딩 중...
에디터 로딩 중...
에디터 로딩 중...

실습 2: 로컬 CSV 파일 로딩 (Docker)

에디터 로딩 중...
에디터 로딩 중...

LOAD CSV 핵심 팁

에디터 로딩 중...

데이터 타입 변환 함수

함수설명예시
toInteger()문자열 -> 정수toInteger("42")
toFloat()문자열 -> 실수toFloat("3.14")
toBoolean()문자열 -> 불리언toBoolean("true")
date()문자열 -> Datedate("2024-01-15")
datetime()문자열 -> DateTimedatetime("2024-01-15T10:30:00")
split()문자열 분리 -> 리스트split("a;b;c", ";")
trim()공백 제거trim(" hello ")
coalesce()NULL 대체coalesce(row.name, "Unknown")
에디터 로딩 중...
힌트 보기
  • CSV의 모든 값은 String - 반드시 toInteger(), toFloat() 등으로 변환
  • MERGE는 CREATE와 달리 중복 노드를 방지 (키 속성 기반)
  • LOAD CSV 전에 인덱스를 먼저 생성하면 성능 크게 향상
  • Aura Free에서는 file:/// 불가 - URL만 사용
  • null 값 처리: coalesce() 함수로 기본값 지정