쿼리 워크벤치 - Couchbase 4.5의 새로운 기능

그리고 쿼리 워크벤치 를 사용하는 개발자에게 없어서는 안 될 도구입니다. 카우치베이스 서버특히 N1QL.

물론 cbq 명령줄 도구 를 사용하는 것도 도움이 되지만, 쿼리 워크벤치에는 멋진 UI가 있고 새로운 버킷 분석 스키마 추론 기능도 있습니다.

쿼리 워크벤치로 이동하려면 브라우저에서 Couchbase 콘솔을 가리키고 페이지 상단의 새 '쿼리' 탭을 클릭하면 됩니다.

Navigate to Query Workbench in Couchbase Console

 

저는 한동안 Microsoft 중심의 개발자로 일해 왔고, SQL Server 관리 스튜디오를 항상 사용했습니다. 이 새로운 쿼리 워크벤치 도구는 저에게 편안하게 느껴집니다.

제가 주목하고 싶은 세 가지 주요 영역이 있습니다:

  • N1QL 편집기 영역

  • 결과 영역

  • 버킷 분석 영역

N1QL 편집기 영역

이 영역에서는 애드혹 N1QL 쿼리를 입력/붙여넣기/편집할 수 있습니다.

N1QL Editor in the Query Workbench

 

N1QL에 멋진 구문 강조 표시가 나타나는 것을 확인할 수 있습니다. '실행'을 클릭하여 쿼리를 실행합니다. 예를 들어, 방금 간단한 선택 * 를 여행 샘플 버킷에서 가져옵니다.

쿼리를 계속 실행하면 기록이 쌓이게 됩니다. 영역 상단의 화살표 탐색을 사용하여 이러한 쿼리로 돌아가 언제든지 기록을 지울 수 있습니다.

쿼리를 텍스트 파일에 저장하는 편리한 버튼도 있습니다.

결과 영역

이 영역에서는 실행한 N1QL 쿼리의 결과를 볼 수 있습니다.

쿼리가 성공했다고 가정하면 여기에서 쿼리 결과를 볼 수 있습니다. 예를 들어 위 그림의 쿼리 결과는 다음과 같습니다.

Query Workbench Results area

 

때로는 다른 방식으로 결과를 시각화하는 것이 도움이 될 때가 있습니다. 기본 JSON, 테이블 보기(결과를 최대한 표로 표시하려고 시도함), 트리 보기(JSON 보기의 약간 더 간결한 버전) 간에 전환할 수 있습니다. 다음은 동일한 쿼리 결과를 세 가지 방식으로 표시한 것입니다.

JSON, Table, and Tree results view

 

JSON 결과를 텍스트 파일에 저장하는 버튼이 있습니다.

또한 결과에 대한 몇 가지 정보가 표시됩니다: 상태(성공 또는 기타), 경과 시간, 실행 시간, 결과 수 및 결과 크기입니다.

쿼리가 성공하지 못한 경우 작업 중인 쿼리를 수정하는 데 도움이 될 수 있는 몇 가지 정보가 포함된 결과를 받게 됩니다.

예를 들어 버킷 이름에 오타가 있는 경우입니다:

Unsuccessful result of N1QL query

버킷 분석

마지막을 위해 최고를 남겨두었습니다. Couchbase Server는 스키마가 없는 문서 데이터베이스입니다. 입력하는 JSON 문서의 구조와 해당 문서의 필드에 대한 제약이 없습니다. 원한다면 모든 문서를 완전히 고유하게 만들 수 있습니다.

그러나 문서가 일정한 형태를 취하는 경우가 많습니다. 문서의 일정 비율은 거의 동일한 필드와 구조를 공유합니다. 이를 염두에 두고 버킷에 있는 모든 문서에서 무작위로 샘플을 추출하여 조사하면 스키마를 '유추'할 수 있습니다. 이것이 바로 버킷 분석 영역에서 할 수 있는 일입니다.

이 기능은 엔터프라이즈 에디션 기능이며, 카우치베이스 커뮤니티 에디션에서는 사용할 수 없습니다. "Not Implemented INFER"와 같은 메시지가 표시되면 커뮤니티 에디션을 사용 중일 가능성이 높습니다.

클릭하여 버킷을 확장하면 Couchbase가 샘플(기본값은 1000개 문서)을 가져와 암시적 스키마를 구성합니다. 버킷 분석은 발견한 문서의 각 '취향'과 해당 취향과 일치하는 샘플 문서의 비율을 나열합니다. 예를 들어 여행 버킷를 입력하면 5가지 맛이 나열됩니다. 다음과 같은 N1QL 명령을 사용할 수도 있습니다. INFER 여행 샘플원시 결과를 가져옵니다.

Bucket Analysis of travel sample bucket

 

에서 여행 샘플에서 버킷 분석이 발견한 맛은 공항, 항공사, 랜드마크, 노선, 호텔 등 문서 ' '유형 ' 필드 값과 편리하게 일치합니다. 이제 이러한 유형이 존재한다는 것을 알았으므로 유형 필드를 사용하는 N1QL 쿼리 및/또는 인덱스를 구성할 수 있습니다. 예를 들어 SELECT * FROM travel-sample WHERE type='route' LIMIT 5;.

버킷 분석은 N1QL 쿼리를 작성하거나 버킷 내 데이터의 형태를 파악할 때 매우 유용합니다.

요약

개인적으로 Query Workbench 없이는 어떻게 지낼 수 있을지 모르겠습니다. N1QL로 작업하고, 인덱스를 만들고, Couchbase Server로 실험할 때 즐겨 사용하는 도구입니다.

그렇다면 쿼리 워크벤치에 대해 어떻게 생각하시나요? 이 도구로 어떤 멋진 작업을 계획하고 계신가요? 트위터에서 핑하기를 방문하여 댓글을 남기거나 저에게 이메일(matthew.groves AT couchbase DOT com)을 보내주세요.

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

작성자

게시자 매튜 그로브스

Matthew D. Groves는 코딩을 좋아하는 사람입니다. C#, jQuery, PHP 등 무엇이든 풀 리퀘스트를 제출할 정도로 코딩을 좋아합니다. 90년대에 부모님의 피자 가게를 위해 QuickBASIC POS 앱을 만든 이후로 전문적으로 코딩을 해왔습니다. 현재 Couchbase의 선임 제품 마케팅 관리자로 일하고 있습니다. 여가 시간에는 가족과 함께 축구 경기를 관람하고 개발자 커뮤니티에 참여하며 시간을 보냅니다. 그는 .NET의 AOP, .NET의 프로 마이크로서비스, Pluralsight 저자, Microsoft MVP의 저자이기도 합니다.

댓글 남기기

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

구축 시작

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

카펠라 무료 사용

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

연락하기

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