클라우드 개념

Oracle NoSQL Database Cloud Service 개념을 알아봅니다.

  • 표: 테이블은 각 행이 애플리케이션의 데이터 레코드를 보유하는 행의 모음입니다.

    각 테이블 행은 테이블이 생성될 때 정의되는 키 및 데이터 필드로 구성됩니다. 또한 테이블에는 지정된 저장 영역이 있고 정의된 최대 읽기 및 쓰기 처리량을 지원할 수 있으며 최대 크기를 가집니다. 스토리지 용량은 테이블 생성 시 지정되며 나중에 변경할 수 있습니다.

    • 상위 레벨 데이터 유형: Oracle NoSQL Database Cloud Service는 세 가지 유형의 빅데이터를 모두 지원합니다. NoSQL 테이블을 생성하여 구조적, 비구조적 또는 반구조적 데이터를 저장할 수 있습니다.

      • 구조화됨: 이 유형의 데이터는 미리 정의된 구조 또는 스키마를 사용하여 테이블에 구성 및 저장할 수 있습니다. 예를 들어, 일반 관계형 데이터베이스 테이블에 저장된 데이터는 이 범주 아래에 있습니다. 고정 스키마를 준수하며 관리 및 분석이 간편합니다. 신용 카드 거래 및 전자 상거래 거래에서 생성된 데이터는 구조화된 데이터의 몇 가지 예입니다.

      • 반구조적: 관계형 데이터베이스에 맞지 않지만 특정 레벨의 처리가 반구조적 데이터라고 하면 행과 열로 구성될 수 있는 데이터를 말합니다. Oracle NoSQL Database Cloud Service는 키-값 쌍을 NoSQL 테이블에 저장하여 반구조적 데이터를 저장하고 처리할 수 있습니다. XML 데이터는 반구조적 데이터의 예입니다.

      • 구조화되지 않음: 고정 스키마 또는 구조가 있는 테이블에 구성하거나 저장할 수 없는 데이터를 구조화되지 않은 데이터라고 합니다. 비디오, 이미지 및 미디어는 구조화되지 않은 데이터의 몇 가지 예입니다. Oracle NoSQL Database Cloud Service에서는 구조화되지 않은 데이터를 저장할 JSON 데이터 유형 행이 포함된 테이블을 정의할 수 있습니다.

    • 데이터 유형: 테이블에 사용되는 데이터 유형 및 기본 키를 정의하는 DDL(데이터 정의어)을 사용하여 테이블이 생성됩니다.

      Oracle NoSQL Database Cloud Service는 여러 숫자 유형, 문자열, 이진, 시간 기록, 맵, 배열, 레코드 및 적합한 JSON 데이터를 보유할 수 있는 특수 JSON 데이터 유형을 비롯한 여러 데이터 유형을 지원합니다. 애플리케이션은 행이 JSON 데이터 유형을 사용하여 데이터를 저장하는 비정형 테이블을 사용하거나 모든 행 유형이 정의되고 적용되는 구조화된 테이블을 사용할 수 있습니다. See Supported Data Types to view the list of data types supported in Oracle NoSQL Database Cloud Service.

      구조화되지 않은 테이블은 유연합니다. 그러나 입력된 데이터는 적용 및 저장 효율성의 관점에서 더 안전합니다. 테이블 스키마는 수정할 수 있지만 테이블 구조는 변경할 수 있는 유연성이 떨어집니다.

    • 인덱스: 애플리케이션은 JSON 데이터 필드를 포함하여 인덱스화를 허용하는 데이터 유형이 있는 모든 데이터 필드에 인덱스를 생성할 수 있습니다. JSON 인덱스는 JSON 데이터에 대한 경로 표현식을 사용하여 생성됩니다.

    • 용량: 테이블을 생성할 때 프로비전된 용량과 요청 시 용량 중에서 선택할 수 있습니다.
      • Provisioned Capacity를 선택하여 테이블에 사용할 수 있는 처리량 및 저장 영역 리소스도 지정합니다. 테이블에 대한 읽기 및 쓰기 작업은 사용자가 정의한 읽기 및 쓰기 처리량으로 제한됩니다. 테이블에서 사용할 수 있는 공간은 스토리지 용량에 따라 제한됩니다.
      • 온디맨드 용량을 선택하면 테이블에 대한 읽기 및 쓰기 작업이 Oracle에 의해 자동으로 관리됩니다. 테이블에서 사용할 수 있는 공간은 스토리지 용량에 따라 제한됩니다.

      애플리케이션 워크로드의 용량을 추정하는 방법은 용량 추정을 참조하십시오.

  • 배포 및 샤딩: 사용자에게는 표시되지 않지만 Oracle NoSQL Database Cloud Service 테이블은 가용성 및 성능을 위해 샤딩 및 복제됩니다. 따라서 스키마를 설계할 때 이를 고려해야 합니다.
    • 기본 및 샤드 키: 테이블에 대한 중요한 고려 사항은 기본 키와 샤드 키의 지정입니다. Oracle NoSQL Database Cloud Service에서 테이블을 생성하면 테이블의 데이터가 샤드 키라고 하는 테이블 기본 키의 일부를 기반으로 자동으로 샤딩됩니다. 기본 및 샤드 키를 지정하는 방법에 대한 고려 사항은 기본 키 및 샤드 키를 참조하십시오.

    • 읽기 일관성: 읽기 일관성은 읽기 작업을 수행하는 데 사용되는 데이터 복사본에 대해 서로 다른 레벨의 유연성을 지정합니다. Oracle NoSQL Database Cloud ServiceEVENTUALABSOLUTE의 두 가지 일관성을 제공합니다.

      응용 프로그램은 모든 읽기 작업이 지정된 키에 대해 가장 최근에 기록된 값을 반환하도록 보장하는 ABSOLUTE 일관성을 지정할 수 있습니다. 또는 일관성 없는 데이터를 허용할 수 있는 응용 프로그램은 EVENTUAL 일관성을 지정할 수 있으므로 데이터베이스가 최신이 아닌 경우에도 더 빨리 값을 반환할 수 있습니다.

      ABSOLUTE 일관성은 더 높은 비용으로, EVENTUAL 일관성을 기준으로 동일한 데이터에 대해 두 배의 읽기 단위 수를 소비하며, 필요한 경우에만 사용해야 합니다. NoSQL 핸들에 대해 일관성을 설정하거나 모든 읽기 작업에 대해 선택적 인수로 설정할 수 있습니다.

  • ID 액세스 및 관리: Oracle NoSQL Database Cloud ServiceOracle Cloud Infrastructure Identity and Access Management를 사용하여 Oracle Cloud에 대한 보안 액세스를 제공합니다. Oracle Cloud Infrastructure Identity and Access Management를 사용하면 사용자 계정을 생성하고 사용자에게 Oracle NoSQL Database Cloud Service 테이블을 검사, 읽기, 사용 또는 관리할 수 있는 권한을 부여할 수 있습니다. Oracle Cloud Infrastructure 문서Oracle Cloud Infrastructure Identity and Access Management 개요를 참조하십시오.