Package google.firestore.admin.v1beta1

索引

FirestoreAdmin

Cloud Firestore Admin API。

此 API 为 Cloud Firestore 提供了多项管理服务。

概念

按照 Google Cloud Firestore API 中的定义,使用项目、数据库、命名空间、集合和文档。

操作:操作表示在后台执行的工作。

Service

索引

索引服务管理 Cloud Firestore 索引。

索引创建是异步执行的。系统会为每个此类异步操作创建一个 Operation 资源。可以通过 Operation 资源查询操作状态(包括遇到的任何错误)。

元数据

提供 Cloud Firestore 中数据的元数据和统计信息。此 API 中提供的数据可能已过时。

操作

“操作”集合用于记录对指定项目执行的操作(包括任何正在进行的操作)。操作不是直接创建的,而是通过调用其他集合或资源创建的。

尚未完成的操作可能会被取消。取消请求是异步进行的,在发出取消请求后,操作可能会继续运行一段时间。

已完成的操作可以删除,这样它就不再列于 Operation 集合中。

操作由服务 FirestoreAdmin 创建,但通过服务 google.longrunning.Operations 访问。

CreateIndex

rpc CreateIndex(CreateIndexRequest) returns (Operation)

创建指定的索引。新创建的索引的初始状态为 CREATING。完成返回的 google.longrunning.Operation 后,状态将为 READY。如果索引已存在,则调用将返回 ALREADY_EXISTS 状态。

在创建期间,该过程可能会导致错误,在这种情况下,索引将变为 ERROR 状态。如需恢复此过程,可以修复导致错误的数据,使用 delete 移除索引,然后使用 create 重新创建索引。

无法创建包含单个字段的索引。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

DeleteIndex

rpc DeleteIndex(DeleteIndexRequest) returns (Empty)

删除索引。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

ExportDocuments

rpc ExportDocuments(ExportDocumentsRequest) returns (Operation)

将全部或部分文档的副本从 Google Cloud Firestore 导出到其他存储系统(例如 Google Cloud Storage)。近期的文档更新可能不会反映在导出的内容中。导出在后台进行,您可以通过创建的 Operation 资源监控和管理导出进度。完成关联操作后才能使用导出的输出。如果导出操作在完成之前被取消,则可能会将部分数据保留在 Google Cloud Storage 中。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

GetIndex

rpc GetIndex(GetIndexRequest) returns (Index)

获取索引。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

ImportDocuments

rpc ImportDocuments(ImportDocumentsRequest) returns (Operation)

将文档导入 Google Cloud Firestore。同名的现有文档会被覆盖。导入操作在后台进行,您可以通过所创建的 Operation 资源监控和管理其进度。如果 ImportDocuments 操作被取消,有可能一部分数据已经导入到 Cloud Firestore。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

ListIndexes

rpc ListIndexes(ListIndexesRequest) returns (ListIndexesResponse)

列出与指定过滤条件匹配的索引。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览

CreateIndexRequest

FirestoreAdmin.CreateIndex 的请求。

字段
parent

string

此索引将应用到的数据库的名称。例如:projects/{project_id}/databases/{database_id}

index

Index

要创建的索引。名称和状态字段仅输出,会被忽略。无法创建或删除某些单字段索引。

DeleteIndexRequest

FirestoreAdmin.DeleteIndex 的请求。

字段
name

string

索引名称。例如:projects/{project_id}/databases/{database_id}/indexes/{index_id}

ExportDocumentsMetadata

ExportDocuments 操作的元数据。

字段
start_time

Timestamp

开始操作的时间。

end_time

Timestamp

操作结束的时间,可能成功,也可能以其他方式。如果操作仍处于活动状态,则不设置此字段。

operation_state

OperationState

导出操作的状态。

progress_documents

Progress

处理的文档数量的估算值。

progress_bytes

Progress

估算的处理字节数。

collection_ids[]

string

要导出哪些集合 ID。

output_uri_prefix

string

实体要导出到的位置。

ExportDocumentsRequest

FirestoreAdmin.ExportDocuments 的请求。

字段
name

string

要导出的数据库。应采用以下格式:projects/{project_id}/databases/{database_id}

collection_ids[]

string

要导出哪些集合 ID。“未指定”表示所有集合。

output_uri_prefix

string

输出 URI。目前仅支持 gs://BUCKET_NAME[/NAMESPACE_PATH] 形式的 Google Cloud Storage URI,其中 BUCKET_NAME 是 Google Cloud Storage 存储分区的名称,NAMESPACE_PATH 是可选的 Google Cloud Storage 命名空间路径。选择名称时,请务必遵循 Google Cloud Storage 的命名准则:https://cloud.google.com/storage/docs/naming。如果 URI 是一个存储分区(没有命名空间路径),系统将根据开始时间生成一个前缀。

ExportDocumentsResponse

google.longrunning.Operation 响应字段中返回。

字段
output_uri_prefix

string

输出文件的位置。此操作可用于在操作成功完成后开始将数据导入到 Cloud Firestore(此项目或其他项目)。

GetIndexRequest

FirestoreAdmin.GetIndex 的请求。

字段
name

string

索引的名称。例如:projects/{project_id}/databases/{database_id}/indexes/{index_id}

ImportDocumentsMetadata

ImportDocuments 操作的元数据。

字段
start_time

Timestamp

开始操作的时间。

end_time

Timestamp

操作结束的时间,可能成功,也可能以其他方式。如果操作仍处于活动状态,则不设置此字段。

operation_state

OperationState

导入操作的状态。

progress_documents

Progress

处理的文档数量的估算值。

progress_bytes

Progress

估算的处理字节数。

collection_ids[]

string

要导入的集合 ID。

input_uri_prefix

string

要导入的文档的位置。

ImportDocumentsRequest

FirestoreAdmin.ImportDocuments 的请求。

字段
name

string

要导入到的数据库。应采用以下格式:projects/{project_id}/databases/{database_id}

collection_ids[]

string

要导入的集合 ID。“未指定”表示导入中包含的所有集合。

input_uri_prefix

string

导出文件的位置。此值必须与成功完成的导出作业中的 ExportDocumentsResponse 的 output_uri_prefix 匹配。请参阅:google.firestore.admin.v1beta1.ExportDocumentsResponse.output_uri_prefix

索引

索引定义。

字段
name

string

索引的资源名称。仅限输出。

collection_id

string

此索引适用的集合 ID。必填。

fields[]

IndexField

要编入索引的字段。

state

State

索引的状态。仅限输出。

状态

索引的状态。在索引创建期间,索引将处于 CREATING 状态。如果索引创建成功,则会转换为 READY 状态。如果无法创建索引,它将转换为 ERROR 状态。

枚举
STATE_UNSPECIFIED 未指定状态。
CREATING 正在创建索引。有一项正在进行的长时间运行的索引操作。写入文档时索引会更新。可能存在一些索引数据。
READY 索引已准备就绪,可供使用。写入文档时索引会更新。索引会根据其适用的所有存储文档完全填充。
ERROR 正在创建索引,但出了点问题。索引没有正在进行的长时间运行的操作,并且最近完成的长时间运行的操作失败。写入文档时索引不会更新。可能存在一些索引数据。

IndexField

索引的字段。

字段
field_path

string

字段的路径。必须符合 [google.firestore.v1beta1.Document.fields][fields] 说明的字段路径规范。特殊字段路径 __name__ 可以单独使用,也可以在路径末尾使用。__type__ 只能在路径末尾使用。

mode

Mode

字段的模式。

模式

该模式决定了如何将字段编入索引。

枚举
MODE_UNSPECIFIED 未指定模式。
ASCENDING 该字段的值会编入索引以支持按升序排序,并且支持按 <、>、<=、>= 和 = 进行查询。
DESCENDING 字段的值已编入索引,以支持按降序排序,并且按 <、>、<=、>= 和 = 进行查询。
ARRAY_CONTAINS 该字段的数组值会编入索引,以支持使用 ARRAY_CONTAINS 查询作为成员资格。

IndexOperationMetadata

索引操作的元数据。此元数据会填充 google.longrunning.Operation 的元数据字段。

字段
start_time

Timestamp

开始操作的时间。

end_time

Timestamp

操作结束的时间,可能成功,也可能以其他方式。如果操作仍处于活动状态,则不设置此字段。

index

string

此操作所针对的索引资源。例如:projects/{project_id}/databases/{database_id}/indexes/{index_id}

operation_type

OperationType

索引操作的类型。

cancelled

bool

如果 google.longrunning.Operation 被取消,则为 true。如果取消正在进行,则“已取消”将为 true,但 google.longrunning.Operation.done 将为 false。

document_progress

Progress

现有操作的进度(以文档数为单位)。

OperationType

索引操作的类型。

枚举
OPERATION_TYPE_UNSPECIFIED 未指定。从未由服务器设置。
CREATING_INDEX 操作正在创建索引。通过 CreateIndex 调用发起。

ListIndexesRequest

FirestoreAdmin.ListIndexes 的请求。

字段
parent

string

数据库名称。例如:projects/{project_id}/databases/{database_id}

filter

string

page_size

int32

标准列表页面大小。

page_token

string

标准列表页面令牌。

ListIndexesResponse

FirestoreAdmin.ListIndexes 的响应。

字段
indexes[]

Index

索引。

next_page_token

string

标准列表下一页令牌。

LocationMetadata

此类型没有任何字段。

google.cloud.location.Location.metadata 的元数据消息。

OperationState

持续性操作的各种可能状态。

枚举
STATE_UNSPECIFIED 未指定。
INITIALIZING 系统正在准备处理该请求。
PROCESSING 正在处理请求。
CANCELLING 当用户对操作调用 google.longrunning.Operations.CancelOperation 后,系统正在取消请求。
FINALIZING 请求已处理完毕,目前处于敲定阶段。
SUCCESSFUL 请求已成功完成。
FAILED 请求已处理完毕,但遇到了错误。
CANCELLED 用户调用 google.longrunning.Operations.CancelOperation 后,已取消请求。

进度

衡量特定指标的进度。

字段
work_completed

int64

已完成工作量的估算值。请注意,此值可能会大于 work_estimated

work_estimated

int64

估算需要执行多少工作量。如果工作估算不可用,则为零。可能会随着工作的推进而更改。