Package google.firestore.admin.v1beta2

索引

FirestoreAdmin

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

CreateIndex

rpc CreateIndex(CreateIndexRequest) returns (Operation)

创建复合索引。这将返回一个 google.longrunning.Operation,可用于跟踪创建操作的状态。操作的元数据将类型为 IndexOperationMetadata

授权范围

需要以下 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

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

GetField

rpc GetField(GetFieldRequest) returns (Field)

获取字段的元数据和配置。

授权范围

需要以下 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

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

ListFields

rpc ListFields(ListFieldsRequest) returns (ListFieldsResponse)

列出此数据库的字段配置和元数据。

目前,FirestoreAdmin.ListFields 仅支持已明确替换的列表字段。如需发出此查询,请调用 FirestoreAdmin.ListFields 并将过滤条件设置为 indexConfig.usesAncestorConfig:false

授权范围

需要以下 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

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

UpdateField

rpc UpdateField(UpdateFieldRequest) returns (Operation)

更新字段配置。目前,字段更新仅适用于单字段索引配置。不过,调用 FirestoreAdmin.UpdateField 时应提供字段掩码,以避免更改调用方不知道的任何配置。应按如下方式指定字段掩码:{ paths: "index_config" }

此调用会返回一个 google.longrunning.Operation,它可用于跟踪字段更新的状态。操作的元数据将类型为 FieldOperationMetadata

如需为数据库配置默认字段设置,请使用特殊的 Field,其资源名称为:projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*

授权范围

需要以下 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}/collectionGroups/{collection_id} 的父级名称

index

Index

要创建的复合索引。

DeleteIndexRequest

FirestoreAdmin.DeleteIndex 的请求。

字段
name

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id} 的名称

ExportDocumentsMetadata

来自 FirestoreAdmin.ExportDocumentsgoogle.longrunning.Operation 结果的元数据。

字段
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(此项目或其他项目)。

野战

表示数据库中的单个字段。

字段按其“集合组”进行分组,集合组表示数据库中具有相同 ID 的所有集合。

字段
name

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path} 的字段名称

字段路径可以是简单的字段名称(如 address),也可以是指向 map_value 中字段的路径(如 address.city)或特殊字段路径。唯一有效的特殊字段是 *,它表示任何字段。

可以使用 (backtick). The only character that needs to be escaped within a quoted field path is the backtick character itself, escaped using a backslash. Special characters in field paths that must be quoted include:*,., ``` (backtick),[,]` 以及任何 ASCII 符号字符引用字段路径。

示例:(注意:此处的注释采用 Markdown 语法编写,因此还有一层额外的反引号来表示代码块)\address.city`represents a field namedaddress.city, not the map key cityin the fieldaddress. `*`represents a field named*`,而不是任何字段。

特殊的 Field 包含所有字段的默认索引编制设置。此字段的资源名称为:projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*。在此 Field 中定义的索引将应用于自身没有 Field 索引配置的所有字段。

index_config

IndexConfig

此字段的索引配置。如果未设置,字段索引编制将还原为 ancestor_field 定义的配置。如需明确移除此字段的所有索引,请使用空索引列表指定索引配置。

IndexConfig

此字段的索引配置。

字段
indexes[]

Index

此字段支持的索引。

uses_ancestor_config

bool

仅供输出。如果为 true,则 Field 的索引配置根据 ancestor_field 指定的配置设置。如果为 false,系统会明确定义 Field 的索引配置。

ancestor_field

string

仅供输出。指定 Field 的资源名称,系统将根据此资源名称设置此字段的索引配置(当 uses_ancestor_config 为 true 时),或根据此资源设置此字段(如果此字段没有索引配置,则基于此资源名称(当 uses_ancestor_config 为 false 时)。

reverting

bool

仅在输出结果为 true 时,正在还原 Field 的索引配置。完成后,索引配置将转换为与 ancestor_field 指定的字段相同的状态,此时 uses_ancestor_config 将变为 truereverting 将变为 false

FieldOperationMetadata

来自 FirestoreAdmin.UpdateFieldgoogle.longrunning.Operation 结果的元数据。

字段
start_time

Timestamp

此操作的开始时间。

end_time

Timestamp

此操作完成的时间。如果操作仍在进行中,则将取消设置。

field

string

此操作所作用于的字段资源。例如:projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path}

index_config_deltas[]

IndexConfigDelta

IndexConfigDelta 列表,用于描述此操作的意图。

state

OperationState

操作的状态。

document_progress

Progress

此操作的进度(以文档计)。

bytes_progress

Progress

此操作的进度(以字节为单位)。

IndexConfigDelta

有关索引配置更改的信息。

字段
change_type

ChangeType

指定索引的变化方式。

index

Index

要更改的索引。

ChangeType

指定索引的变化方式。

枚举
CHANGE_TYPE_UNSPECIFIED 更改类型未指定或未知。
ADD 正在添加单字段索引。
REMOVE 单字段索引即将移除。

GetFieldRequest

FirestoreAdmin.GetField 的请求。

字段
name

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_id} 的名称

GetIndexRequest

FirestoreAdmin.GetIndex 的请求。

字段
name

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id} 的名称

ImportDocumentsMetadata

来自 FirestoreAdmin.ImportDocumentsgoogle.longrunning.Operation 结果的元数据。

字段
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.v1beta2.ExportDocumentsResponse.output_uri_prefix

索引

借助 Cloud Firestore 索引,您可以对数据库中的文档执行简单和复杂的查询。

字段
name

string

仅供输出。服务器为此索引定义的名称。复合索引的此名称格式为:projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id}。对于单字段索引,此字段将为空。

query_scope

QueryScope

如果索引指定了集合查询范围,则索引支持对作为特定文档的子项、在查询时指定且具有相同集合 ID 的集合进行查询。

如果索引指定了集合组查询范围,则索引允许查询来自特定文档、在查询时指定并且与此索引具有相同集合 ID 的所有集合。

fields[]

IndexField

此索引支持的字段。

对于复合索引,此字段始终为 2 个或更多字段。最后一个字段条目始终针对字段路径 __name__。如果在创建时未指定 __name__ 作为最后一个字段,系统将按照与定义的最后一个字段相同的方向自动添加该字段。如果复合索引中的最后一个字段没有方向性,则 __name__ 将按升序排列(除非明确指定)。

对于单字段索引,此字段始终只有一个条目,其字段路径等于关联字段的字段路径。

state

State

仅供输出。索引的服务状态。

IndexField

索引中的字段。“field_path”用于描述编入索引的字段,“value_mode”描述如何将字段值编入索引。

字段
field_path

string

可以是 name。对于单字段索引,此字段必须与字段名称匹配,或者可以省略。

联合字段 value_mode。字段值的索引方式。value_mode 只能是下列其中一项:
order

Order

表示此字段支持按指定顺序排序或使用 =、<、<=、>、>= 进行比较。

array_config

ArrayConfig

表示此字段支持对 array_value 的操作。

ArrayConfig

支持的数组值配置。

枚举
ARRAY_CONFIG_UNSPECIFIED 索引不支持其他数组查询。
CONTAINS 索引支持数组包含查询。

订单

支持的排序。

枚举
ORDER_UNSPECIFIED 未指定排序。不是有效选项。
ASCENDING 该字段按字段值升序排序。
DESCENDING 该字段按字段值降序排列。

QueryScope

查询范围定义运行查询的范围。这是在 StructuredQuery 的 from 字段中指定的。

枚举
QUERY_SCOPE_UNSPECIFIED 未指定查询范围。不是有效选项。
COLLECTION 指定了集合查询范围的索引允许对某个集合进行查询,该集合是查询时指定的特定文档的子项,并且具有该索引指定的集合 ID。
COLLECTION_GROUP 如果索引指定了集合组查询范围,则可以查询具有该索引指定集合 ID 的所有集合。

状态

索引的状态。在索引创建期间,索引将处于 CREATING 状态。如果索引创建成功,则会转换为 READY 状态。如果索引创建遇到问题,索引将转换为 NEEDS_REPAIR 状态。

枚举
STATE_UNSPECIFIED 未指定状态。
CREATING 正在创建索引。有一项正在进行的长时间运行的索引操作。写入文档时索引会更新。可能存在一些索引数据。
READY 索引已准备就绪,可供使用。写入文档时索引会更新。索引会根据其适用的所有存储文档完全填充。
NEEDS_REPAIR 正在创建索引,但出了点问题。索引没有正在进行的长时间运行的操作,并且最近完成的长时间运行的操作失败。写入文档时索引不会更新。可能存在一些索引数据。请使用 google.longrunning.Operations API 确定上次尝试创建此索引的操作失败的原因,然后重新创建索引。

IndexOperationMetadata

来自 FirestoreAdmin.CreateIndexgoogle.longrunning.Operation 结果的元数据。

字段
start_time

Timestamp

此操作的开始时间。

end_time

Timestamp

此操作完成的时间。如果操作仍在进行中,则将取消设置。

index

string

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

state

OperationState

操作的状态。

progress_documents

Progress

此操作的进度(以文档计)。

progress_bytes

Progress

此操作的进度(以字节为单位)。

ListFieldsRequest

FirestoreAdmin.ListFields 的请求。

字段
parent

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id} 的父级名称

filter

string

要应用于列表结果的过滤条件。目前,FirestoreAdmin.ListFields 仅支持已明确替换的列表字段。如需发出此查询,请调用 FirestoreAdmin.ListFields 并将过滤条件设置为 indexConfig.usesAncestorConfig:false

page_size

int32

要返回的结果数量。

page_token

string

从上一次对 FirestoreAdmin.ListFields 的调用返回的页面令牌,可用于获取下一页结果。

ListFieldsResponse

FirestoreAdmin.ListFields 的响应。

字段
fields[]

Field

请求的字段。

next_page_token

string

可用于请求另一页结果的页面令牌。如果留空,则表示最后一页。

ListIndexesRequest

FirestoreAdmin.ListIndexes 的请求。

字段
parent

string

格式为 projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id} 的父级名称

filter

string

要应用于列表结果的过滤条件。

page_size

int32

要返回的结果数量。

page_token

string

从上一次对 FirestoreAdmin.ListIndexes 的调用返回的页面令牌,可用于获取下一页结果。

ListIndexesResponse

FirestoreAdmin.ListIndexes 的响应。

字段
indexes[]

Index

请求的索引。

next_page_token

string

可用于请求另一页结果的页面令牌。如果留空,则表示最后一页。

OperationState

描述操作的状态。

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

进度

描述操作的进度。工作单元是通用的,必须根据 Progress 的使用位置进行解释。

字段
estimated_work

int64

估算的工作量。

completed_work

int64

完成的工作量。

UpdateFieldRequest

FirestoreAdmin.UpdateField 的请求。

字段
field

Field

要更新的字段。

update_mask

FieldMask

相对于字段的掩码。如果指定,则仅在字段中更新此字段_mask 指定的配置。