Python

Pydantic을 사용하여 Couchbase로 JSON 문서 유효성 검사하기 

카우치베이스 카펠라 는 데이터베이스 관리 업무를 없애고 전반적인 비용을 절감하는 완전 관리형 JSON 문서 서비스형 데이터베이스(DBaaS) 제품입니다. 카펠라 제공 사항 SQL 및 ACID 트랜잭션과 같은 관계형 데이터베이스 기능의 강점과 NoSQL을 정의하는 JSON 유연성 및 확장성을 결합한 최신 클라우드 네이티브 분산 데이터베이스의 강력한 성능, 유연성 및 확장성을 제공합니다.

Pydantic 는 개발자가 Python 유형 어노테이션을 사용하여 사용자 정의 JSON 객체를 정의하고 유효성을 검사할 수 있는 라이브러리입니다. Pydantic은 런타임에 유형 힌트를 적용하고 사용자 친화적인 유효성 검사 오류를 발생시켜 코딩 시간을 단축합니다. 그런 다음 pydantic을 사용하여 생성된 JSON 문서는 문자열 표준 연결을 통해 JSON 문서를 생성할 때 발생할 수 있는 잘못된 형식의 문서에 대한 걱정 없이 Capella 플랫폼에서 사용할 수 있습니다.

피단틱 설정

빠른 시작 프로젝트를 실행하려면 다음 필수 구성 요소가 필요합니다:

    • Git 리포지토리 URL: https://github.com/brickj/capella_pydantic
    • Python 3 설치
    • 그리고 pip 패키지 관리 도구
    • 카우치베이스 카펠라™ SDK를 설치했습니다:
      • 전체 문서는 다음 위치에 있습니다. 여기
      • Python 명령 예제: pip 설치 카우치베이스
    • 파이썬 라이브러리를 설치했습니다:
      • 전체 문서는 다음 위치에 있습니다. 여기
      • Python 명령 예제: pip 설치 pydantic
    • 카우치베이스 카펠라 계정:
    • 카우치베이스 카펠라 클러스터 및 버킷 이름 pydantic

 이 블로그에서는 pydantic을 사용하여 유효한 JSON 문서를 생성하고 이를 Couchbase Capella에 저장하는 예제를 빠르게 살펴보겠습니다.

 Couchbase Python SDK를 사용하면 개발자가 Couchbase 클러스터의 지정된 버킷에서 CRUD 작업을 수행할 수 있습니다. 예를 들어 다음 코드 스니펫은 업서트(문서 키가 버킷에 없는 경우 삽입, 문서가 이미 있는 경우 업데이트)를 수행합니다: 

Python 개발자는 일반적으로 문자열 또는 정수를 사용하여 키-값 쌍을 저장하는 사전 객체를 채우는 JSON 문서를 만듭니다. 그런 다음 해당 사전 객체를 Capella 데이터베이스의 지정된 버킷으로 전송하여 삽입합니다. 사전 객체를 생성하고 채우는 샘플 코드는 아래 스니펫과 유사합니다: 

pydantic을 사용하면 개발자는 문서가 생성될 때 적용될 수 있는 JSON 객체에 대한 스키마를 유연하게 지정할 수 있습니다. 예를 들어 사용자 게시물에 대한 JSON 문서를 생성하는 단계는 다음과 같습니다. 문서 모델은 다음과 같습니다:

Data model for pydantic tutorial with Couchbase

사용자 게시물 객체에는 게시물에 사용되는 필드가 있지만 각 게시물에는 게시물 내에 중첩되어야 하는 여러 개의 리뷰가 있을 수 있습니다. 이 기능을 사용하려면 개발자가 두 개의 별도 클래스를 만들면 됩니다. 사용자 게시물검토. 예를 들어

Python에서 JSON 문서 만들기

개체가 생성되면 문서를 쉽게 채울 수 있습니다:

이제 사용자 게시물 객체를 사전으로 만들고 앞서 표시된 업서트 코드와 유사한 코드를 사용하지만 객체의 dict() 메서드를 사용합니다:

이 블로그에 설명된 전체 프로젝트는 다음과 같습니다:

    • 지침이 포함된 Readme
    • UserPost 및 Review 객체를 생성하는 코드
    • 출력할 문서를 생성하고 인쇄하는 코드
    • 카우치베이스 파이썬 SDK를 사용하여 카우치베이스 카펠라에 연결하는 코드
    • 생성된 JSON 문서를 업서트하는 코드

 공개 프로젝트는 Git에서 복제할 수 있습니다: https://github.com/brickj/capella_pydantic

다음 단계

자세히 알아보기 카우치베이스 카펠라서비스형 데이터베이스 제품입니다:

 이 시점에서 pydantic 라이브러리를 사용하여 다음에서 사용할 유효한 JSON 문서를 빠르게 생성할 수 있어야 합니다. 카우치베이스 카펠라.

 질문이나 의견이 있으시면 다음 링크를 통해 문의해 주세요. 카우치베이스 포럼!

 

 

 

 

 

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

작성자

게시자 릭 제이콥스

릭 제이콥스는 카우치베이스의 기술 제품 마케팅 매니저입니다. 그는 Computer Sciences Corporation, IBM, Cloudera 등 세계 유수의 조직에서 다양한 경력을 쌓았습니다. 그는 개발, 컨설팅, 데이터 과학, 영업 엔지니어링 및 기술 마케팅 분야에서 15년 이상 근무하며 쌓은 기술 전반에 걸친 경험을 보유하고 있습니다. 조지 메이슨 대학교에서 전산학 석사를 비롯한 여러 학위를 취득했습니다.

댓글 남기기

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

구축 시작

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

카펠라 무료 사용

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

연락하기

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