개요
JSON 커넥터는 로컬 JSON 파일이나 JSONL 파일에서 데이터를 가져와서 Fess 인덱스에 등록하는 기능을 제공합니다.
이 기능을 사용하려면 fess-ds-json 플러그인이 필요합니다.
전제조건
플러그인 설치가 필요합니다
JSON 파일에 대한 액세스 권한이 필요합니다
JSON 구조를 이해하고 있어야 합니다
플러그인 설치
방법 1: JAR 파일 직접 배치
방법 2: 관리 화면에서 설치
“시스템” → “플러그인” 열기
JAR 파일 업로드
Fess 재시작
설정 방법
관리 화면에서 “크롤러” → “데이터 스토어” → “새로 만들기”에서 설정합니다.
기본 설정
| 항목 | 설정 예 |
|---|---|
| 이름 | Products JSON |
| 핸들러 이름 | JsonDataStore |
| 활성화 | 켬 |
파라미터 설정
로컬 파일:
복수 파일:
디렉터리 지정:
파라미터 목록
경고
files 또는 directories 중 하나를 반드시 지정해야 합니다. 둘 다 미지정인 경우 DataStoreException 이 발생합니다. 둘 다 지정한 경우 files 가 우선되며 directories 는 무시됩니다.
참고
이 커넥터는 로컬 파일 시스템의 JSON 파일만 대상으로 하며, HTTP 액세스나 API 인증 기능은 지원하지 않습니다.
스크립트 설정
단순한 JSON 오브젝트:
중첩된 JSON 오브젝트:
배열 요소 처리:
사용 가능한 필드
data.<필드명>- JSON 오브젝트의 필드data.<부모>.<자식>- 중첩된 오브젝트data.<배열>[<인덱스>]- 배열 요소data.<배열>.<메서드>- 배열 메서드(join, length 등)
JSON 형식 상세
JSON 파일 형식
JSON 커넥터는 JSONL(JSON Lines) 형식의 파일을 읽어들입니다. 한 줄에 하나의 JSON 오브젝트를 기술하는 형식입니다.
참고
배열 형식의 JSON 파일( [{...}, {...}] )은 직접 읽어들일 수 없습니다. JSONL 형식으로 변환해 주세요.
JSONL 형식 파일:
사용 예
제품 카탈로그
파라미터:
스크립트:
복수 JSON 파일 통합
파라미터:
스크립트:
문제 해결
파일을 찾을 수 없음
증상: FileNotFoundException
확인 사항:
파일 경로가 올바른지 확인
파일이 존재하는지 확인
파일 읽기 권한이 있는지 확인
JSON 파싱 오류
증상: JsonParseException 또는 Unexpected character
확인 사항:
JSON 파일이 올바른 형식인지 확인:
문자 인코딩이 올바른지 확인
잘못된 문자나 줄바꿈이 없는지 확인
주석이 포함되어 있지 않은지 확인(JSON 표준에서는 주석 불가)
데이터를 가져올 수 없음
증상: 크롤링은 성공하지만 건수가 0
확인 사항:
JSON 구조 확인
스크립트 설정이 올바른지 확인
필드명이 올바른지 확인(대소문자 포함)
로그에서 오류 메시지 확인
대용량 JSON 파일
증상: 메모리 부족 또는 타임아웃
해결 방법:
JSON 파일을 여러 개로 분할
Fess 힙 사이즈를 늘리기
고급 스크립트 사용 예
조건부 처리
각 필드는 독립된 식으로 평가됩니다. 조건부 값에는 삼항 연산자를 사용합니다:
배열 결합
기본값 설정
날짜 포맷
숫자 처리
참고 정보
데이터스토어 커넥터 개요 - 데이터 스토어 커넥터 개요
CSV 커넥터 - CSV 커넥터
데이터베이스 커넥터 - 데이터베이스 커넥터
데이터 저장소 크롤링 - 데이터 스토어 설정 가이드