3월 개발자 빌드에는 N1QL 쿼리 모니터링 및 프로파일링에 대한 몇 가지 업데이트가 더 있습니다.
이동 Couchbase Server 3월 5.0.0 개발자 릴리스 다운로드 오늘. 개발자 빌드(DB)를 받으려면 '개발자' 탭을 클릭하고 확인해 보세요. 정식 출시 전까지 아직 피드백을 주실 수 있는 시간이 있습니다.
놓치셨다면 2월에 작성한 게시물 의 새로운 프로파일링 및 모니터링에 대한 포스팅을 참조하세요. 이 포스팅은 이를 기반으로 작성되었습니다.
이전과 마찬가지로 이 블로그 게시물은 초기 빌드에 대해 작성하고 있으며 릴리스가 출시될 때까지 일부 사항이 사소한 방식으로 변경될 수 있다는 점을 염두에 두세요.
쿼리 워크벤치
다시 한 번 다음 사항에 중점을 두겠습니다. 쿼리 워크벤치 를 참조하세요. 3월의 업데이트는 주로 쿼리 결과의 '계획' 보기에 대한 시각적 변경 사항입니다.
하지만 검토를 위해 N1QL 쿼리를 실행하는 다른 옵션도 있습니다:
개인적으로 저는 쿼리 워크벤치가 프로파일링을 보다 시각적으로 보여주기 때문에 가장 사용하기 쉽다고 생각합니다.
복잡한 쿼리 프로파일링
이제 여행 샘플
데이터를 다시 가져옵니다. 여행 샘플 버킷을 사용하고 있지만 인덱스 중 하나를 제거했습니다(DROP INDEX 여행 샘플
.def_sourceairport
;).
그런 다음 N1QL 쿼리를 실행하여 두 도시 사이의 경로를 찾습니다. 이번에는 오하이오주 콜럼버스와 콜로라도주 덴버를 사용하겠습니다.
1 2 3 4 5 6 7 8 |
선택 r.id, a.이름, s.비행, s.UTC, r.소스공항, r.목적지공항, r.장비 FROM `여행-샘플` r UNNEST r.일정 s JOIN `여행-샘플` a 켜기 키 r.airlineid 어디 r.소스공항 = 'CMH' AND r.목적지공항 = 'DEN' AND s.일 = 0 주문 BY a.이름; |
이 쿼리를 실행하는 데 (단일 노드 로컬 컴퓨터에서) 예상대로 이번에는 약 8초가 걸렸는데, 이는 너무 느린 속도입니다.
프로파일링의 시각적 분석
문제가 무엇인지 확인하기 위해 계획을 살펴보겠습니다(스크린샷이 블로그 게시물에 적합하도록 두 줄로 나누었습니다).
따라서 이전과 마찬가지로 쿼리 계획에서 가장 비용이 많이 드는 부분은 필터와 조인입니다. 이전에는 원시 숫자나 백분율을 보면 알 수 있었습니다. 하지만 이번 3월 릴리스에서는 색상을 통해 보다 시각적으로 알 수 있습니다. 백분율과 정의된 임계값에 따라 계획의 일부가 회색에서 황갈색, 금색으로 바뀝니다.
현재 임계값은 작업에 소요된 총 쿼리 시간의 비율을 기준으로 합니다:
- 회색: 총 시간 1% 미만
- 황갈색/약간의 금색: 1% - 5%
- 황갈색/더 많은 금색: 51T3PT - 201T3PT
- 모든 골드: 20%
이 시각적 프로파일링의 목적은 비용이 많이 드는 작업을 빠르게 파악하기 위한 것입니다. 그런 다음 정확한 수치를 알고 싶다면 다이어그램이나 심지어는 META().plan
정보).
나는 인덱스 생성 부분은 지난 블로그 게시물에서와 동일합니다(데모용으로 제거했던 인덱스를 다시 생성한 것뿐입니다).
여러분의 피드백을 기다리고 있습니다!
앞으로도 계속 지켜봐 주세요. 카우치베이스 블로그 를 참조하여 다음 개발자 빌드에 포함될 기능에 대한 정보를 확인하세요.
이러한 새로운 기능을 사용해보고 싶으신가요? Couchbase Server 5.0 다운로드 오늘!
여러분의 피드백을 기다립니다! 매달 개발자 릴리스가 출시되므로, 여러분은 저희가 구축하는 기능에 변화를 가져올 수 있는 기회를 갖게 됩니다.
쿼리를 프로파일링하는 데 도움이 되는 새로운 색상 사용이 마음에 드시나요? 이제 Couchbase 웹 콘솔에서 바로 피드백을 제공할 수 있습니다. 화면 오른쪽 하단에서 [피드백 아이콘] 아이콘을 찾아보세요.
뭔가 제대로 작동하지 않나요? 저희의 JIRA 시스템(issues.couchbase.com) 에 질문을 제출하거나 카우치베이스 포럼. 또는 문제에 대한 설명과 함께 저에게 문의해 주세요. 기꺼이 도와드리거나 버그를 제출해 드리겠습니다(좋은 버그를 제출할 때마다 킷캣을 무료로 받을 수 있습니다).
질문이 있으시면 다음 중 가장 좋은 방법으로 저에게 연락해 주세요. 트위터 @mgroves 또는 이메일을 보내주세요. matthew.groves@couchbase.com.
[...] 카우치베이스 서버 5.0 프리뷰의 프로파일링 및 모니터링 [...]