C SDK 2.4.7의 새로운 기능 - N1QL, 뷰 등

몇 년 전, 디자인할 때 Perl 클라이언트 (카우치베이스에서 일하기 전)에는 모든 행이 도착할 때까지 기다릴 필요 없이 네트워크에서 도착하는 대로 뷰 결과를 처리하여 적절한 JSON 배열로 구문 분석할 수 있는 효율적인 방법을 원했습니다. 이 문제를 해결하기 위해 저는 jsonsl 라이브러리를 사용하여 JSON 행을 점진적으로 구문 분석하므로 이 라이브러리 사용자는 아직 완전한 JSON 객체가 없더라도 데이터가 도착하는 대로 데이터를 수신할 수 있습니다.

이 기능에 대한 지원은 Python과 Perl 클라이언트 모두에서 어느 정도 구현되었습니다. 이제 드디어 C 라이브러리에도 적용되었습니다. 이로써 C 클라이언트에서 제공되는 향상된 테스트 인프라의 이점을 누릴 수 있을 뿐만 아니라, C 사용자에게는 원시 HTTP API보다 훨씬 간단한 개선된 API도 제공됩니다.

보기 API 사용

다음은 사용 방법의 예입니다:

새로운 보기 기능에는 라이브러리에서 결과를 위해 문서를 가져오는 기능도 포함되어 있습니다. 단순히 LCB_CMDVIEWQUERY_F_INCLUDE_DOCS 플래그의 cmd.cmdflags 필드에 입력합니다.

N1QL API 사용

N1QL은 향후 버전의 Couchbase에 추가될 실험적 기능입니다. 개발자 미리 보기로 제공됩니다(http://docs.couchbase.com/developer/n1ql-dp3/n1ql-intro.html). 클라이언트 2.4.7 버전은 N1QL과 인터페이스할 수 있는 몇 가지 새로운 API를 제공합니다.

N1QL API를 사용하는 것은 보기 API와 매우 유사합니다. 뷰와 마찬가지로 행 기반입니다. 그러나 보기와 달리 N1QL 쿼리 매개변수의 전달은 (복잡성 때문에) 더 추상화되어 있으며 특별한 '매개변수' 개체를 만들어야 합니다.

설치

일반적인 업그레이드/설치 지침

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

작성자

게시자 마크 넌버그, 소프트웨어 엔지니어, 카우치베이스

마크 넌버그는 카우치베이스에서 일하는 소프트웨어 엔지니어입니다. 그는 C 클라이언트 라이브러리(libcouchbase)와 Python 클라이언트를 유지 관리합니다. 또한 이전 회사에서 사용하던 Perl 클라이언트도 개발했는데, 이것이 Couchbase에서 일하게 된 계기가 되었습니다. Couchbase에 입사하기 전에는 전자상거래 분석 회사에서 분산형 고성능 라우팅 시스템을 개발했습니다. Mark는 예루살렘 히브리 대학교에서 언어학을 전공했습니다.

댓글 남기기

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

구축 시작

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

카펠라 무료 사용

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

연락하기

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