카우치베이스 서버

Node.js 및 JavaScript와 함께 Couchbase 분석 사용

참고: 이 게시물은 버전 5.5 프리뷰 릴리스 기준의 Couchbase Analytics 데이터 정의 언어를 사용합니다. 최신 버전의 업데이트 및 주요 변경 사항에 대한 자세한 내용은 다음을 참조하세요. 카우치베이스 애널리틱스 서비스 변경 사항.

익숙한 SQL 언어를 사용하여 방대한 양의 데이터에 대해 잠재적으로 복잡한 쿼리를 효율적으로 생성하고 실행할 수 있기 때문에 CBAS라고도 하는 Couchbase 분석 서비스는 Couchbase 및 NoSQL 데이터 요구 사항에 매우 유용합니다.

다음과 같이 새로운 분석 서비스를 사용하는 방법을 알아보겠습니다. Couchbase 5.5에 대한 Node.js SDK를 사용하여 카우치베이스.

이 예제에서는 다음과 같이 작업할 것입니다. 여행 샘플 예제 버킷은 Couchbase Server와 함께 선택적으로 설치할 수 있습니다. 대규모 데이터 집합으로 간주되지는 않지만 이 예제에서는 작동합니다.

Couchbase 분석 데이터 집합 구성하기

내 분석 탭에서 다음 쿼리를 실행합니다:

위의 쿼리는 여행 카우치베이스 기반 분석 버킷 여행 샘플 버킷.

버킷이 생성되면 작업할 섀도 데이터 집합을 만들 수 있습니다. 다음 쿼리를 실행합니다:

위의 쿼리는 다음과 같은 데이터를 기반으로 두 개의 섀도 데이터 집합을 생성합니다. 여행 샘플 버킷에 추가합니다. 섀도 데이터 세트가 생성되는 동안 초기화해야 합니다:

초기화되면 애널리틱스 서비스가 문서 사본을 만들기 시작하고 변경 사항을 적극적으로 모니터링합니다. 다음과 같은 쿼리를 실행하여 데이터를 테스트할 수 있습니다:

위의 쿼리는 섀도 데이터 세트의 모든 문서를 찾습니다. 즉, 섀도 데이터 집합의 모든 문서에서 유형 속성의 항공사.

이 모든 것이 훌륭하지만 현재로서는 Couchbase 관리 대시보드만 사용하고 있습니다. Node.js에서 애널리틱스 데이터 세트에 대한 쿼리를 실행할 수 있기를 원합니다.

Node.js 애플리케이션에서 CBAS 쿼리하기

Node.js가 설치되어 있다고 가정하고 새 프로젝트 디렉토리를 만들고 다음 명령을 실행합니다:

위의 명령은 새 package.json 파일을 추가합니다. Couchbase와 통신하려면 SDK가 필요합니다. CLI에서 다음을 실행하여 설치할 수 있습니다:

이제 애플리케이션 개발을 시작할 수 있습니다. 애플리케이션을 app.js 파일을 프로젝트에 다음과 같이 추가합니다:

위의 코드에서 많은 일이 일어나고 있지는 않지만 어쨌든 분석해 보겠습니다.

쿼리 실행을 시작하려면 먼저 클러스터에 연결하여 애널리틱스 서비스와의 상호 작용을 활성화해야 합니다. 또한 애널리틱스 사용 권한이 있는 사용자로 클러스터에 인증해야 합니다. 이 예에서는 연결 중인 노드에서 애널리틱스가 활성화되어 있습니다.

버킷에 연결하고 있지 않다는 점에 주목하세요. N1QL을 사용하고 싶었다면 버킷을 열었겠지만, 비슷해 보일지라도 N1QL을 사용하고 있지 않습니다.

간단한 애널리틱스 쿼리를 사용하여 이를 구문 분석하고 실행할 수 있습니다. 쿼리 결과가 반환되고 로그에 인쇄됩니다.

나쁘지 않죠?

Analytics는 SQL++를 사용하므로 다음과 같은 다른 연산자를 사용하여 쿼리를 훨씬 더 복잡하게 만들 수 있습니다. 어디, 하위 쿼리 및 컬렉션에 대한 작업을 수행합니다.

결론

방금 N1QL이 아닌 Couchbase 분석 서비스(CBAS)를 사용하는 간단한 Node.js 애플리케이션을 만드는 방법을 살펴보았습니다. 분석 및 SQL++는 N1QL을 대체하는 것이 아니라 훨씬 더 크거나 복잡한 데이터 집합을 위한 보완 수단이며, N1QL은 소규모 데이터 집합에서 빛을 발합니다.

애널리틱스 또는 Couchbase Node.js SDK에 대해 자세히 알아보려면 다음을 방문하세요. 카우치베이스 개발자 포털. 에서 사용할 수 있는 다른 새로운 기능에 대해 알아보세요. 카우치베이스 서버 5.5 릴리스.

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

Author

Posted by 닉 라보이

닉 라보이는 최신 웹 및 모바일 개발 기술을 옹호하는 사람입니다. 그는 Java, JavaScript, Golang 및 Angular, NativeScript, Apache Cordova와 같은 다양한 프레임워크에 대한 경험이 있습니다. Nic은 웹 및 모바일 개발을 보다 쉽게 이해할 수 있도록 자신의 개발 경험에 대해 글을 쓰고 있습니다.

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.