Autonomous Database의 SODA Collection 메타데이터

Autonomous Database의 기본 및 사용자정의 모음 메타데이터에 대해 설명합니다.

Autonomous Database의 SODA 기본 수집 메타데이터

사용자정의 메타데이터가 제공되지 않을 때 추가되는 모음에 대한 메타데이터인 Autonomous Database의 기본 모음 메타데이터를 설명합니다.

각 SODA 구현은 모음 이름을 제공할 때 기본 모음을 만드는 방법을 제공합니다. 예를 들어, Java용 SODA에서는 createCollection 메소드를 사용하고 컬렉션 이름 파라미터만 제공합니다.

db.admin().createCollection("myCol");

그러면 기본 모음 메타데이터가 있는 모음이 생성됩니다. Autonomous Database에서 기본 모음을 생성하는 경우 모음 메타데이터에는 기본 모음을 생성하는 데 사용하는 SODA 구현에 관계없이 다음 정보가 포함됩니다.

{
   "keyColumn" :
   {
      "name" : "ID",
      "sqlType" : "VARCHAR2",
      "maxLength" : 255,
      "assignmentMethod" : "UUID"
   },

   "contentColumn" :
   {
      "name" : "JSON_DOCUMENT",
      "sqlType" : "BLOB",
      "jsonFormat" : "OSON"
   },
   "versionColumn" :
   {
     "name" : "VERSION",
     "method" : "UUID"
   },
   
   "lastModifiedColumn" :
   {
     "name" : "LAST_MODIFIED"
   },
   
   "creationTimeColumn" :
   {
      "name" : "CREATED_ON"
   },
   
   "readOnly" : false
}

Autonomous Database의 SODA 맞춤형 컬렉션 메타데이터

Autonomous Database의 SODA 모음 사용자정의 메타데이터에 대해 설명합니다.

각 SODA 구현은 모음 생성 중 모음 메타데이터를 사용자 정의하는 방법을 제공합니다. 예를 들어, Java용 SODA에서 다음 명령을 사용할 수 있습니다.

OracleDocument metadata = db.createDocumentFromString("metadata_string");
OracleCollection col = db.admin().createCollection("myCustomColl", metadata);

이 예에서 metadata_string의 경우 기본 메타데이터를 시작점으로 사용하고 다음을 사용자정의할 수 있습니다.

  • keyColumn.assignmentMethodCLIENT로 변경합니다. 메타데이터에서 keyColumn 아래의 assignmentMethod 값을 UUID가 아닌 CLIENT로 변경합니다.

    Autonomous DatabasekeyColumn.assignmentMethod에 대해 적합한 값은 다음과 같습니다.

    • UUID(기본값): 키는 UUID를 기반으로 SODA에 의해 생성됩니다.

    • CLIENT: 키는 클라이언트 응용 프로그램에서 지정합니다.

  • mediaTypeColumn name 값을 제공합니다. 모음이 이기종인 경우 매체 유형 열이 필요합니다. 즉, JavaScript JSON(객체 표기법) 이외의 문서를 저장할 수 있습니다. 자세한 내용은 Media Type Column Name을 참조하십시오.

다음 예에서는 클라이언트 지정 키와 사용자 정의 매체 유형 열을 지정합니다. mediaTypeColumn nameYOUR_MEDIA_TYPE_COLUMN_NAME 값으로 지정됩니다. 그렇지 않은 경우 기본 설정이 사용됩니다.

{
   "keyColumn" :
   {
      "name" : "ID",
      "sqlType" : "VARCHAR2",
      "maxLength" : 255,
      "assignmentMethod" : "CLIENT"
   },
   
   "contentColumn" :
   {
      "name" : "JSON_DOCUMENT",
      "sqlType" : "BLOB"
   },

   "versionColumn" :
   {
     "name" : "VERSION",
     "method" : "UUID"
   },

   "lastModifiedColumn" :
   {
     "name" : "LAST_MODIFIED"
   },

   "creationTimeColumn" :
   {
      "name" : "CREATED_ON"
   },

   "mediaTypeColumn" :
   {
      "name" : "YOUR_MEDIA_TYPE_COLUMN_NAME"
   },

   "readOnly" : false
}