REST Resource: projects.databases

리소스: Database

Cloud Firestore 데이터베이스

JSON 표현
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "locationId": string,
  "type": enum (DatabaseType),
  "concurrencyMode": enum (ConcurrencyMode),
  "versionRetentionPeriod": string,
  "earliestVersionTime": string,
  "pointInTimeRecoveryEnablement": enum (PointInTimeRecoveryEnablement),
  "appEngineIntegrationMode": enum (AppEngineIntegrationMode),
  "keyPrefix": string,
  "deleteProtectionState": enum (DeleteProtectionState),
  "cmekConfig": {
    object (CmekConfig)
  },
  "previousId": string,
  "etag": string
}
필드
name

string

데이터베이스의 리소스 이름입니다. 형식: projects/{project}/databases/{database}

uid

string

출력 전용입니다. 이 데이터베이스의 시스템 생성 UUID4입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 데이터베이스가 생성된 타임스탬프입니다. 2016년 이전에 생성된 데이터베이스는 createTime을 채우지 않습니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 이 데이터베이스가 가장 최근에 업데이트된 타임스탬프입니다. 여기에는 데이터베이스 리소스 업데이트만 포함되며 데이터베이스에 포함된 데이터는 포함되지 않습니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

deleteTime

string (Timestamp format)

출력 전용입니다. 데이터베이스가 삭제된 타임스탬프입니다. 데이터베이스가 삭제된 경우에만 설정됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

locationId

string

데이터베이스의 위치입니다. 사용 가능한 위치는 https://cloud.google.com/firestore/docs/locations에서 확인할 수 있습니다.

type

enum (DatabaseType)

데이터베이스의 유형입니다. 선택 방법에 대한 자세한 내용은 https://cloud.google.com/datastore/docs/firestore-or-datastore를 참조하세요.

concurrencyMode

enum (ConcurrencyMode)

이 데이터베이스에 사용할 동시 실행 제어 모드입니다.

versionRetentionPeriod

string (Duration format)

출력 전용입니다. 이전 버전의 데이터가 데이터베이스에 보관되는 기간입니다.

모든 read 또는 query는 이 기간 내에 readTime를 지정할 수 있으며 그 시점의 데이터베이스 상태를 읽습니다.

PITR 기능이 사용 설정된 경우 보관 기간은 7일입니다. 그 외의 경우에는 보관 기간은 1시간입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

earliestVersionTime

string (Timestamp format)

출력 전용입니다. 데이터베이스에서 이전 버전의 데이터를 읽을 수 있는 가장 이른 타임스탬프입니다. 위의 [versionRetainPeriod] 를 참조하세요. 이 필드는 now - versionRetentionPeriod로 채워집니다.

이 값은 지속적으로 업데이트되며 쿼리되는 순간 비활성 상태가 됩니다. 이 값을 사용하여 데이터를 복구하는 경우, 값이 쿼리된 순간부터 복구를 시작하는 순간까지의 기간을 고려해야 합니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

pointInTimeRecoveryEnablement

enum (PointInTimeRecoveryEnablement)

이 데이터베이스에서 PITR 기능을 사용 설정할지 여부입니다.

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

이 데이터베이스에 사용할 App Engine 통합 모드입니다.

keyPrefix

string

출력 전용입니다. 이 데이터베이스의 keyPrefix입니다. 이 keyPrefix는 프로젝트 ID('~')와 함께 사용하여 Google App Engine 1세대 런타임의 Cloud Datastore API에서 반환되는 애플리케이션 ID를 구성하는 데 사용됩니다.

이 값은 비어 있을 수 있습니다. 이 경우 URL로 인코딩된 키에 사용할 appid는 projectId입니다 (예: v~foo 대신 foo).

deleteProtectionState

enum (DeleteProtectionState)

데이터베이스에 대한 삭제 보호 상태입니다.

cmekConfig

object (CmekConfig)

선택사항입니다. 현재 상태는 이 데이터베이스에 CMEK가 사용 설정되어 있음을 나타냅니다.

previousId

string

출력 전용입니다. 데이터베이스 리소스의 이전 데이터베이스 ID입니다. 이 필드는 삭제된 데이터베이스에만 채워집니다.

etag

string

이 체크섬은 다른 필드의 값을 기준으로 서버에서 계산되며, 처리 전 클라이언트에 최신 값이 적용되도록 업데이트 및 삭제 요청이 있을 때 전송될 수 있습니다.

DatabaseType

데이터베이스의 유형입니다. 선택 방법에 대한 자세한 내용은 https://cloud.google.com/datastore/docs/firestore-or-datastore를 참조하세요.

데이터베이스가 비어 있는 경우에만 모드 변경이 허용됩니다.

열거형
DATABASE_TYPE_UNSPECIFIED 기본값입니다. 데이터베이스 유형이 생략된 경우 이 값이 사용됩니다.
FIRESTORE_NATIVE Firestore 네이티브 모드
DATASTORE_MODE Datastore 모드의 Firestore

ConcurrencyMode

트랜잭션의 동시 실행 제어 모드 유형입니다.

열거형
CONCURRENCY_MODE_UNSPECIFIED 사용되지 않음.
OPTIMISTIC 기본적으로 낙관적 동시 실행 제어를 사용합니다. 이 모드는 Cloud Firestore 데이터베이스에 사용할 수 있습니다.
PESSIMISTIC

기본적으로 비관적 동시 실행 제어를 사용합니다. 이 모드는 Cloud Firestore 데이터베이스에 사용할 수 있습니다.

이는 Cloud Firestore의 기본 설정입니다.

OPTIMISTIC_WITH_ENTITY_GROUPS

기본적으로 항목 그룹과 함께 낙관적 동시 실행 제어를 사용합니다.

이는 Cloud Datastore에 사용할 수 있는 유일한 모드입니다.

이 모드는 Datastore 모드가 있는 Cloud Firestore에도 사용할 수 있지만 권장되지 않습니다.

특정 시점 복구 사용 설정

PITR(point-in-time recovery) 기능 사용 설정

열거형
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED 사용되지 않음.
POINT_IN_TIME_RECOVERY_ENABLED

지난 7일 이내의 일부 데이터 버전에서 읽기가 지원됩니다.

  • 지난 1시간 이내의 모든 타임스탬프에 대해 읽습니다.
  • 1시간 초과 및 7일 이내의 1분 스냅샷에 대해 읽습니다.

versionRetentionPeriodearliestVersionTime를 사용하여 지원되는 버전을 확인할 수 있습니다.

POINT_IN_TIME_RECOVERY_DISABLED 지난 1시간 이내의 모든 데이터 버전에서 읽기가 지원됩니다.

AppEngineIntegrationMode

App Engine 통합 모드의 유형입니다.

열거형
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED 사용되지 않음.
ENABLED App Engine 애플리케이션이 이 데이터베이스와 동일한 리전에 있으면 App Engine 구성이 이 데이터베이스에 영향을 줍니다. 여기에는 애플리케이션 사용 중지 및 데이터베이스에 대한 쓰기를 사용 중지할 수 있습니다.
DISABLED

App Engine은 이 데이터베이스의 요청 처리 기능에는 영향을 미치지 않습니다.

이는 Firestore API로 만든 데이터베이스의 기본 설정입니다.

DeleteProtectionState

데이터베이스의 삭제 보호 상태입니다.

열거형
DELETE_PROTECTION_STATE_UNSPECIFIED 기본값입니다. 삭제 보호 유형이 지정되지 않았습니다.
DELETE_PROTECTION_DISABLED 삭제 보호가 사용 중지되었습니다.
DELETE_PROTECTION_ENABLED 삭제 보호가 사용 설정됨

CmekConfig

Firestore 데이터베이스의 CMEK (고객 관리 암호화 키) 구성 없으면 데이터베이스가 기본 Google 암호화 키로 보호됩니다.

JSON 표현
{
  "kmsKeyName": string,
  "activeKeyVersion": [
    string
  ]
}
필드
kmsKeyName

string

필수 항목입니다. 이 데이터베이스와 동일한 위치에 있는 키만 암호화에 사용할 수 있습니다.

Firestore의 nam5 멀티 리전의 경우 이는 Cloud KMS 멀티 리전 us에 해당합니다. Firestore의 eur3 멀티 리전의 경우 Cloud KMS 멀티 리전 유럽에 해당합니다. https://cloud.google.com/kms/docs/locations를 참조하세요.

예상되는 형식은 projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}입니다.

activeKeyVersion[]

string

출력 전용입니다. 현재 사용 중인 KMS 키 버전. 키 순환 중에 사용 중인 키 버전이 여러 개 있을 수 있습니다.

예상되는 형식은 projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{key_version}입니다.

메소드

create

데이터베이스를 만듭니다.

delete

데이터베이스를 삭제합니다.

exportDocuments

Google Cloud Firestore에서 문서의 전체 또는 하위 집합 사본을 다른 스토리지 시스템(예: Google Cloud Storage)으로 내보냅니다.

get

데이터베이스에 대한 정보를 가져옵니다.

importDocuments

Google Cloud Firestore로 문서를 가져옵니다.

list

프로젝트의 모든 데이터베이스를 나열합니다.

patch

데이터베이스를 업데이트합니다.

restore

기존 백업에서 복원하여 새 데이터베이스를 만듭니다.