웹 애플리케이션을 작성하고 있다면 이미 JSON 문서에 익숙하실 것입니다. Couchbase는 JSON 문서를 지원하며 조만간 일부 JSON 문서를 Couchbase Server로 가져와야 할 것입니다.
하지만 Couchbase에 데이터를 삽입했다고 해서 데이터가 바로 디스크로 이동하는 것은 아닙니다. 데이터는 먼저 인메모리 객체 관리 캐시에 삽입되고 나중에 백그라운드에서 비동기식으로 디스크에 기록되므로 작업과 완전히 분리됩니다.
그렇다면 개발자가 수많은 JSON 데이터를 Couchbase로 가져오려면 어떤 도구가 필요할까요? 이 블로그에서는 도심형 로더 도구를 더 자세히 살펴보세요. 제가 가지고 놀던 밴쿠버 트리 데이터 집합 전체를 가져올 수 있게 해줘서 시간을 많이 절약할 수 있었습니다.
cbdocloader 사용
다음은 다양한 명령줄 매개변수입니다. 도심형 로더 도구 :
/opt/couchbase/bin/tools/cbdocloader -u 관리자 -p 비밀번호 -n 10.3.2.54:8091 -b bucket_zip -s 10 출력
어디
-s는 RAM 할당량(MB)을 나타냅니다. 이 매개 변수는 선택적 매개 변수입니다(기본값은 100MB).
-n은 노드 IP 주소입니다.
-b 버킷 이름(버킷이 존재하지 않으면 오류가 발생합니다.)
-u 사용자 이름
-p 비밀번호
밴쿠버 트리 데이터 세트
그리고 밴쿠버시 의 새 데이터 집합을 추가했습니다. 가로수 를 시의 오픈 데이터 카탈로그에 추가하세요. 이 데이터 세트에는 밴쿠버 거리에 있는 모든 가로수의 전체 주소 목록과 함께 나무 종류 및 기타 특징이 포함되어 있습니다.
데이터 세트의 각 JSON 파일에는 특정 영역의 모든 트리에 대한 정보가 포함되어 있습니다. 데이터에 간단한 파이썬 스크립트 를 사용하여 각 JSON을 여러 파일로 분할하여 트리당 하나의 JSON 파일을 생성했습니다. 그런 다음 cbdocloader 도구를 사용하여 데이터를 Couchbase에 로드했습니다.
개별 JSON 파일을 Couchbase에 로드하기
cbdocloader에 공급되는 소스 문서는 특정 디렉터리 또는 .zip 형식일 수 있습니다.
cbdocloader를 사용하여 폴더에 있는 JSON 문서를 로드합니다: /opt/couchbase/bin/tools/cbdocloader -u 관리자 -p 비밀번호 -n 10.3.2.54:8091 -b 버킷 -s 1000 출력
cbdocloader를 사용하여 압축된 폴더(json 문서가 포함된)를 로드합니다.: /opt/couchbase/bin/tools/cbdocloader -u 관리자 -p 비밀번호 -n 10.3.2.54:8091 -b bucket_zip -s 1000 output.zip
흥미로운 데이터 사실
그렇다면 밴쿠버 나무 데이터 집합에 몇 그루의 나무가 있는지 짐작할 수 있을까요?
클릭 여기 를 검색해 보세요. 단서: 표시된 버킷의 항목 수입니다.
밴쿠버에서 가장 키가 큰 나무가 있는 동네가 어디인지 아세요?
이제 카우치베이스에 데이터를 로드했으니 간단한 뷰를 작성하여 답을 알아보세요. 이 질문은 뷰 블로그 시리즈에서 다시 다룰 예정이니 기대해 주세요!
—
스크린샷을 보내주신 Abhinav님께 감사드립니다.
카우치베이스에 JSON 데이터를 로드할 때 문제가 있습니다. 튜토리얼을 따라 했는데 버킷 생성이 성공했다고 하는데 전송된 메시지가 0입니다. 어떻게 해야 하나요?