Spanner Omni로 개발

지원되는 Spanner 기능을 사용하여 Spanner Omni로 애플리케이션을 개발합니다. 많은 기능이 Spanner와 공유되지만 Spanner Omni는 클라이언트 라이브러리, 명령줄 인터페이스 (CLI), 콘솔 기능이 다릅니다.

지원되는 Spanner 개발 기능은 다음과 같습니다.

주요 차이점

Spanner 개발 환경의 대부분은 적용되지만 Spanner Omni에서는 다음 영역이 다릅니다.

  • 지원되는 클라이언트 라이브러리: Spanner Omni는 Java, Go, Python 클라이언트 라이브러리를 지원합니다.

  • 명령줄 인터페이스 (CLI): Spanner Omni CLI는 Google Cloud CLI와는 별개의 전용 도구입니다. 구문은 비슷하지만 명령어를 실행할 때 --instance 플래그를 제공할 필요는 없습니다.

  • 콘솔 제한사항: Spanner Omni 콘솔은 읽기 전용이므로 배포나 데이터베이스를 수정하는 데 사용할 수 없습니다.

다음 Spanner 기능과 권장사항은 Spanner Omni에 적용됩니다.

권장사항 및 사용 사례

다음 권장사항과 사용 사례에 따라 Spanner Omni용 애플리케이션을 설계하고 최적화하세요.

  • 게임 데이터베이스로서의 Spanner: 게임 백엔드에 Spanner의 확장성과 일관성을 사용합니다.

  • SQL 권장사항: 성능과 효율성을 위해 쿼리를 최적화합니다. 대부분의 개념은 Spanner Omni에 적용됩니다. Spanner Omni는 계층화된 스토리지를 지원하지 않으므로 타임스탬프 조건자 푸시다운과 같은 개념이 완전히 적용되지 않을 수 있습니다. 또한 Spanner Omni에는 쿼리 계획 시각화 기능이 없습니다.

언어 프레임워크

Spanner Omni를 많이 사용되는 언어 프레임워크와 통합합니다.

Hibernate ORM

Hibernate 객체 관계형 매핑 (ORM)을 사용하여 Java 객체를 Spanner Omni 테이블에 매핑합니다. 자세한 내용은 다음을 참조하세요.

GORM

Go 프로그래밍 언어용 객체 관계형 매핑 (ORM) 도구인 GORM과 Spanner Omni를 통합합니다. Go 애플리케이션에서 GORM의 객체 관계형 매핑 기능을 사용합니다. 자세한 내용은 다음을 참조하세요.

트랜잭션 및 동시 실행

Spanner Omni는 다음과 같은 트랜잭션 관리 기능을 지원합니다.

격리 수준

데이터 일관성을 보장하기 위해 Spanner Omni에서 지원하는 다양한 격리 수준을 이해합니다.

최적화

이러한 기법을 사용하여 트랜잭션 성능과 처리량을 최적화하세요.

잠금

명시적 잠금을 사용하여 데이터에 대한 동시 액세스를 관리하는 방법을 알아봅니다.

데이터 액세스 및 수정

클라이언트 라이브러리, CLI, DML 등 표준 Spanner 메서드를 사용하여 데이터에 액세스하고 데이터를 수정합니다.

클라이언트 라이브러리에서 세션을 관리하는 방법을 알아보려면 세션을 참고하세요. 기본 세션 개념은 Spanner Omni에 적용되지만 멀티플렉스 세션만 지원합니다.

데이터 읽기

비활성 읽기 및 지시된 읽기를 비롯한 다양한 방법을 사용하여 Spanner Omni에서 데이터를 읽습니다.

데이터 수정

DML, 변형 또는 CLI를 사용하여 데이터를 수정합니다.

데이터 유형

Spanner Omni는 애플리케이션의 데이터를 나타내는 다음 데이터 유형을 지원합니다.

개발 및 테스트

개발 환경과 애플리케이션 동작을 구성하여 안정적인 성능과 오류 처리를 보장합니다.

데이터 변경사항 스트리밍

Spanner 변경 내역은 삽입, 업데이트, 삭제와 같은 데이터베이스 변경사항을 거의 실시간으로 추적합니다. DDL을 사용하여 관리되며 전체 데이터베이스 또는 특정 테이블의 기본 키, 커밋 타임스탬프와 같은 세부정보를 캡처합니다. Spanner와 Spanner Omni 간의 기능은 거의 동일하지만 Spanner Omni에서는 Dataflow가 지원되지 않습니다.

자세한 내용은 다음을 참조하세요.

Spanner 전체 텍스트 검색 (FTS)을 사용하여 테이블에서 단어, 문구 또는 숫자를 검색합니다. FTS는 커밋된 최신 데이터를 읽습니다.

FTS의 주요 기능은 다음과 같습니다.

FTS를 사용하려면 검색하려는 열에 검색 색인을 만드세요. Spanner는 이러한 열의 데이터를 개별 단어로 분류합니다. 새 데이터가 추가되면 색인이 즉시 업데이트됩니다.

FTS 검색은 다음과 같은 표준 텍스트 일치 이상의 고급 기능을 제공합니다.

FTS 기능은 Spanner와 Spanner Omni 간에 일관됩니다.

Spanner의 전체 텍스트 차이점

Spanner는 다음과 같은 차이점을 제외하고 Spanner의 핵심 FTS 기능을 지원합니다.

다음 단계