몇 년 전, 디자인할 때 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 쿼리 매개변수의 전달은 (복잡성 때문에) 더 추상화되어 있으며 특별한 '매개변수' 개체를 만들어야 합니다.
설치
일반적인 업그레이드/설치 지침