Индекс
-
Firestore
(интерфейс) -
AggregationResult
(сообщение) -
ArrayValue
(сообщение) -
BatchGetDocumentsRequest
(сообщение) -
BatchGetDocumentsResponse
(сообщение) -
BatchWriteRequest
(сообщение) -
BatchWriteResponse
(сообщение) -
BeginTransactionRequest
(сообщение) -
BeginTransactionResponse
(сообщение) -
BitSequence
(сообщение) -
BloomFilter
(сообщение) -
CommitRequest
(сообщение) -
CommitResponse
(сообщение) -
CreateDocumentRequest
(сообщение) -
Cursor
(сообщение) -
DeleteDocumentRequest
(сообщение) -
Document
(сообщение) -
DocumentChange
(сообщение) -
DocumentDelete
(сообщение) -
DocumentMask
(сообщение) -
DocumentRemove
(сообщение) -
DocumentTransform
(сообщение) -
DocumentTransform.FieldTransform
(сообщение) -
DocumentTransform.FieldTransform.ServerValue
(перечисление) -
ExecutionStats
(сообщение) -
ExistenceFilter
(сообщение) -
ExplainMetrics
(сообщение) -
ExplainOptions
(сообщение) -
GetDocumentRequest
(сообщение) -
ListCollectionIdsRequest
(сообщение) -
ListCollectionIdsResponse
(сообщение) -
ListDocumentsRequest
(сообщение) -
ListDocumentsResponse
(сообщение) -
ListenRequest
(сообщение) -
ListenResponse
(сообщение) -
MapValue
(сообщение) -
PartitionQueryRequest
(сообщение) -
PartitionQueryResponse
(сообщение) -
PlanSummary
(сообщение) -
Precondition
(сообщение) -
RollbackRequest
(сообщение) -
RunAggregationQueryRequest
(сообщение) -
RunAggregationQueryResponse
(сообщение) -
RunQueryRequest
(сообщение) -
RunQueryResponse
(сообщение) -
StructuredAggregationQuery
(сообщение) -
StructuredAggregationQuery.Aggregation
(сообщение) -
StructuredAggregationQuery.Aggregation.Avg
(сообщение) -
StructuredAggregationQuery.Aggregation.Count
(сообщение) -
StructuredAggregationQuery.Aggregation.Sum
(сообщение) -
StructuredQuery
(сообщение) -
StructuredQuery.CollectionSelector
(сообщение) -
StructuredQuery.CompositeFilter
(сообщение) -
StructuredQuery.CompositeFilter.Operator
(перечисление) -
StructuredQuery.Direction
(перечисление) -
StructuredQuery.FieldFilter
(сообщение) -
StructuredQuery.FieldFilter.Operator
(перечисление) -
StructuredQuery.FieldReference
(сообщение) -
StructuredQuery.Filter
(сообщение) -
StructuredQuery.FindNearest
(сообщение) -
StructuredQuery.FindNearest.DistanceMeasure
(перечисление) -
StructuredQuery.Order
(сообщение) -
StructuredQuery.Projection
(сообщение) -
StructuredQuery.UnaryFilter
(сообщение) -
StructuredQuery.UnaryFilter.Operator
(перечисление) -
Target
(сообщение) -
Target.DocumentsTarget
(сообщение) -
Target.QueryTarget
(сообщение) -
TargetChange
(сообщение) -
TargetChange.TargetChangeType
(перечисление) -
TransactionOptions
(сообщение) -
TransactionOptions.ReadOnly
(сообщение) -
TransactionOptions.ReadWrite
(сообщение) -
UpdateDocumentRequest
(сообщение) -
Value
(сообщение) -
Write
(сообщение) -
WriteRequest
(сообщение) -
WriteResponse
(сообщение) -
WriteResult
(сообщение)
Пожарная лавка
Сервис Cloud Firestore.
Cloud Firestore — это быстрая, полностью управляемая, бессерверная, облачная база данных документов NoSQL, которая упрощает хранение, синхронизацию и запрос данных для ваших мобильных, веб-приложений и приложений Интернета вещей в глобальном масштабе. Его клиентские библиотеки обеспечивают синхронизацию в реальном времени и автономную поддержку, а функции безопасности и интеграция с Firebase и Google Cloud Platform ускоряют создание действительно бессерверных приложений.
Пакетное получение документов |
---|
Получает несколько документов. Документы, возвращаемые этим методом, не гарантированно возвращаются в том же порядке, в котором они были запрошены.
|
Пакетная запись |
---|
Применяет пакет операций записи. Метод BatchWrite не применяет операции записи атомарно и может применять их не по порядку. Метод не допускает более одной записи на документ. Каждая запись завершается успешно или неудачно независимо. См. Если вам требуется атомарный набор операций записи, используйте вместо этого
|
Бегинтранзакция |
---|
Начинает новую транзакцию.
|
Совершить |
---|
Фиксирует транзакцию, при необходимости обновляя документы.
|
Создать документ |
---|
Создает новый документ.
|
Удалить документ |
---|
Удаляет документ.
|
Получить документ |
---|
Получает один документ.
|
ListCollectionIds |
---|
Перечисляет все идентификаторы коллекций под документом.
|
Список документов |
---|
Перечисляет документы.
|
Слушать |
---|
Прислушивается к изменениям. Этот метод доступен только через gRPC или WebChannel (не REST).
|
Запрос раздела |
---|
Разделяет запрос, возвращая курсоры разделов, которые можно использовать для параллельного выполнения запроса. Возвращенные курсоры разделов представляют собой точки разделения, которые RunQuery может использовать в качестве начальной и конечной точек для результатов запроса.
|
Откат |
---|
Откатывает транзакцию.
|
Запустить агрегационный запрос |
---|
Запускает запрос агрегирования. Вместо того, чтобы создавать результаты Пример высокого уровня:
|
Выполнить запрос |
---|
Выполняет запрос.
|
Обновить документ |
---|
Обновляет или вставляет документ.
|
Писать |
---|
Потоковая передача пакетов обновлений и удалений документов по порядку. Этот метод доступен только через gRPC или WebChannel (не REST).
|
Результат агрегации
Результат одного сегмента из запроса агрегации Firestore.
aggregate_fields
одинаковы для всех результатов в запросе агрегации, в отличие от запросов документов, которые могут иметь разные поля для каждого результата.
Поля | |
---|---|
aggregate_fields | Результат функций агрегирования, например: Ключом является |
МассивЗначение
Значение массива.
Поля | |
---|---|
values[] | Значения в массиве. |
Пакетный запрос документов
Запрос Firestore.BatchGetDocuments
.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
documents[] | Имена документов, которые необходимо получить. В формате: |
mask | Поля для возврата. Если не установлено, возвращает все поля. Если в документе есть поле, которого нет в этой маске, это поле не будет возвращено в ответе. |
Объединённое поле consistency_selector . Режим согласованности для этой транзакции. Если не установлено, по умолчанию используется строгая согласованность. consistency_selector может быть только одним из следующих: | |
transaction | Считывает документы в транзакции. |
new_transaction | Начинает новую транзакцию и читает документы. По умолчанию используется транзакция только для чтения. Новый идентификатор транзакции будет возвращен в качестве первого ответа в потоке. |
read_time | Читает документы в том виде, в каком они были на данный момент. Это должна быть временная метка с точностью до микросекунды за последний час или, если включено восстановление на определенный момент времени, дополнительно может быть временная метка с точностью до целой минуты за последние 7 дней. |
Пакетный запрос документовОтвет
Потоковый ответ для Firestore.BatchGetDocuments
.
Поля | |
---|---|
transaction | Транзакция, которая была запущена в рамках этого запроса. Будет установлено только в первом ответе и только в том случае, если в запросе был установлен |
read_time | Время чтения документа. Это может быть монотически возрастающим, в этом случае предыдущие документы в потоке результатов гарантированно не изменились между их read_time и этим. |
result поля объединения. Единый результат. Это может быть пусто, если сервер просто возвращает транзакцию. result может быть только одним из следующих: | |
found | Документ, который был запрошен. |
missing | Имя документа, которое было запрошено, но не существует. В формате: |
Пакетная записьзапроса
Запрос Firestore.BatchWrite
.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
writes[] | Пишет подать заявку. Метод не применяет атомарную запись и не гарантирует упорядочивание. Каждая запись завершается успешно или неудачно независимо. Вы не можете писать в один и тот же документ более одного раза за запрос. |
labels | Метки, связанные с этой пакетной записью. |
Пакетная записьответа
Ответ от Firestore.BatchWrite
.
Поля | |
---|---|
write_results[] | Результат применения записи. Этот i-й результат записи соответствует i-й записи в запросе. |
status[] | Статус применения пишет. Этот i-й статус записи соответствует i-й записи в запросе. |
Бегинтранзакциярекуест
Запрос Firestore.BeginTransaction
.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
options | Варианты сделки. По умолчанию используется транзакция чтения-записи. |
Бегинтранзакцияответ
Ответ на Firestore.BeginTransaction
.
Поля | |
---|---|
transaction | Транзакция, которая была начата. |
Битовая последовательность
Последовательность битов, закодированная в массиве байтов.
Каждый байт в массиве байтов bitmap
хранит 8 бит последовательности. Единственным исключением является последний байт, который может хранить 8 или меньше бит. padding
определяет количество битов последнего байта, которые будут игнорироваться как «заполнение». Значения этих битов «заполнения» не указаны и их следует игнорировать.
Чтобы получить первый бит, бит 0, вычислите: (bitmap[0] & 0x01) != 0
. Чтобы получить второй бит, бит 1, вычислите: (bitmap[0] & 0x02) != 0
. Чтобы получить третий бит, бит 2, вычислите: (bitmap[0] & 0x04) != 0
. Чтобы получить четвертый бит, бит 3, вычислите: (bitmap[0] & 0x08) != 0
. Чтобы получить бит n, вычислите: (bitmap[n / 8] & (0x01 << (n % 8))) != 0
.
«Размер» BitSequence
(количество содержащихся в нем битов) рассчитывается по следующей формуле: (bitmap.length * 8) - padding
.
Поля | |
---|---|
bitmap | Байты, которые кодируют последовательность битов. Может иметь нулевую длину. |
padding | Число бит последнего байта в |
БлумФильтр
Фильтр Блума ( https://en.wikipedia.org/wiki/Bloom_filter) .
Фильтр Блума хэширует записи с помощью MD5 и обрабатывает полученный 128-битный хеш как два различных 64-битных значения хеш-функции, интерпретируемых как целые числа без знака с использованием кодировки с дополнением до 2.
Эти два хеш-значения, называемые h1
и h2
, затем используются для вычисления хэш-значений hash_count
по формуле, начиная с i=0
:
h(i) = h1 + (i * h2)
Эти результирующие значения затем берутся по модулю количества битов в фильтре Блума, чтобы получить биты фильтра Блума для проверки данной записи.
Поля | |
---|---|
bits | Данные фильтра Блума. |
hash_count | Количество хешей, используемых алгоритмом. |
Зафиксировать запрос
Запрос Firestore.Commit
.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
writes[] | Пишет подать заявку. Всегда выполняется атомарно и по порядку. |
transaction | Если установлено, применяются все записи в этой транзакции и фиксируются. |
КоммитОтвет
Ответ на Firestore.Commit
.
Поля | |
---|---|
write_results[] | Результат применения записи. Этот i-й результат записи соответствует i-й записи в запросе. |
commit_time | Время, когда произошла фиксация. Любое чтение с равным или большим |
СоздатьДокументЗапрос
Запрос Firestore.CreateDocument
.
Поля | |
---|---|
parent | Необходимый. Родительский ресурс. Например: |
collection_id | Необходимый. Идентификатор коллекции относительно |
document_id | Идентификатор документа, назначенный клиентом, который будет использоваться для этого документа. Необязательный. Если не указано, идентификатор будет назначен службой. |
document | Необходимый. Документ, который нужно создать. |
mask | Поля для возврата. Если не установлено, возвращает все поля. Если в документе есть поле, которого нет в этой маске, это поле не будет возвращено в ответе. |
Курсор
Позиция в наборе результатов запроса.
Поля | |
---|---|
values[] | Значения, представляющие позицию, в том порядке, в котором они появляются в предложении запроса. Может содержать меньше значений, чем указано в предложении order by. |
before | Если позиция находится непосредственно перед или сразу после заданных значений относительно порядка сортировки, определенного запросом. |
УдалитьДокументЗапрос
Запрос Firestore.DeleteDocument
.
Поля | |
---|---|
name | Необходимый. Имя ресурса документа, который необходимо удалить. В формате: |
current_document | Необязательное предварительное условие в документе. Запрос не будет выполнен, если он установлен и не соответствует целевому документу. |
Документ
Документ Firestore.
Не должен превышать 1 МБ — 4 байта.
Поля | |
---|---|
name | Имя ресурса документа, например |
fields | |
create_time | Только вывод. Время создания документа. Это значение монотонно увеличивается, когда документ удаляется, а затем создается заново. Его также можно сравнить со значениями из других документов и |
update_time | Только вывод. Время последнего изменения документа. Первоначально это значение установлено равным |
Изменение документа
Document
изменился.
Может быть результатом нескольких writes
, включая удаления, которые в конечном итоге привели к новому значению Document
.
Несколько сообщений DocumentChange
могут быть возвращены для одного и того же логического изменения, если затронуто несколько целей.
Поля | |
---|---|
document | Новое состояние Если |
target_ids[] | Набор целевых идентификаторов целей, соответствующих этому документу. |
removed_target_ids[] | Набор целевых идентификаторов для целей, которые больше не соответствуют этому документу. |
ДокументУдалить
Document
удален.
Может быть результатом нескольких writes
, включая обновления, последняя из которых удалила Document
.
Несколько сообщений DocumentDelete
могут быть возвращены для одного и того же логического удаления, если затронуто несколько целей.
Поля | |
---|---|
document | Имя ресурса удаленного |
removed_target_ids[] | Набор целевых идентификаторов для целей, которые ранее соответствовали этому объекту. |
read_time | Временная метка чтения, в которой было обнаружено удаление. Больше или равно |
Маска документа
Набор путей к полям в документе. Используется для ограничения операции получения или обновления документа подмножеством его полей. Это отличается от стандартных масок полей, поскольку всегда ограничено Document
и учитывает динамическую природу Value
.
Поля | |
---|---|
field_paths[] | Список путей к полям в маске. См. |
ДокументУдалить
Document
был удален из поля зрения целей.
Отправляется, если документ больше не имеет отношения к цели и находится вне поля зрения. Может быть отправлено вместо DocumentDelete или DocumentChange, если сервер не может отправить новое значение документа.
Несколько сообщений DocumentRemove
могут быть возвращены для одной и той же логической записи или удаления, если затронуто несколько целей.
Поля | |
---|---|
document | Имя ресурса |
removed_target_ids[] | Набор целевых идентификаторов для целей, которые ранее соответствовали этому документу. |
read_time | Временная метка чтения, в которой наблюдалось удаление. Больше или равно времени |
ДокументПреобразование
Трансформация документа.
Поля | |
---|---|
document | Имя документа, который нужно преобразовать. |
field_transforms[] | Список преобразований, применяемых к полям документа, по порядку. Это не должно быть пусто. |
Преобразование поля
Преобразование поля документа.
Поля | |
---|---|
field_path | Путь поля. См. |
Поле объединения transform_type . Преобразование, применяемое к полю. transform_type может быть только одним из следующих: | |
set_to_server_value | Устанавливает в поле указанное значение сервера. |
increment | Добавляет заданное значение к текущему значению поля. Это должно быть целое число или двойное значение. Если поле не является целым или двойным числом или если поле еще не существует, преобразование установит для поля заданное значение. Если какое-либо из заданных значений или текущего значения поля имеют двойное значение, оба значения будут интерпретироваться как двойные. Двойная арифметика и представление двойных значений соответствуют семантике IEEE 754. Если происходит переполнение положительного/отрицательного целого числа, поле разрешается до положительного/отрицательного целого числа наибольшей величины. |
maximum | Устанавливает для поля максимальное значение из текущего значения и заданного значения. Это должно быть целое число или двойное значение. Если поле не является целым или двойным числом или если поле еще не существует, преобразование установит для поля заданное значение. Если применяется операция максимума, когда поле и входное значение имеют смешанные типы (то есть одно целое число, а другое двойное), поле принимает тип большего операнда. Если операнды эквивалентны (например, 3 и 3.0), поле не изменяется. 0, 0,0 и -0,0 равны нулю. Максимум нулевого сохраненного значения и нулевого входного значения всегда является сохраненным значением. Максимум любого числового значения x и NaN равен NaN. |
minimum | Устанавливает для поля минимальное значение из его текущего значения и заданного значения. Это должно быть целое число или двойное значение. Если поле не является целым или двойным числом или если поле еще не существует, преобразование установит для поля входное значение. Если применяется операция минимума, когда поле и входное значение имеют смешанные типы (то есть одно целое число, а другое двойное), поле принимает тип меньшего операнда. Если операнды эквивалентны (например, 3 и 3.0), поле не меняется. 0, 0,0 и -0,0 равны нулю. Минимальное из нулевого сохраненного значения и нулевого входного значения всегда является сохраненным значением. Минимум любого числового значения x и NaN равен NaN. |
append_missing_elements | Добавьте данные элементы по порядку, если они еще не присутствуют в текущем значении поля. Если поле не является массивом или поле еще не существует, сначала ему присваивается пустой массив. Эквивалентные числа разных типов (например, 3L и 3.0) считаются равными при проверке отсутствия значения. NaN равно NaN, а Null равно Null. Если входные данные содержат несколько эквивалентных значений, будет учитываться только первое. Соответствующий Transform_result будет иметь нулевое значение. |
remove_all_from_array | Удалить все заданные элементы из массива в поле. Если поле не является массивом или поле еще не существует, ему присваивается пустой массив. Эквивалентные количества разных типов (например, 3L и 3.0) считаются равными при принятии решения о необходимости удаления элемента. NaN равно NaN, а Null равно Null. Это удалит все эквивалентные значения, если есть дубликаты. Соответствующий Transform_result будет иметь нулевое значение. |
значение сервера
Значение, рассчитываемое сервером.
Перечисления | |
---|---|
SERVER_VALUE_UNSPECIFIED | Не указано. Это значение нельзя использовать. |
REQUEST_TIME | Время обработки запроса сервером с точностью до миллисекунды. Если используется в нескольких полях (одных или разных документах) в транзакции, все поля получат одну и ту же метку времени сервера. |
Статистика выполнения
Статистика выполнения запроса.
Поля | |
---|---|
results_returned | Общее количество возвращенных результатов, включая документы, прогнозы, результаты агрегирования, ключи. |
execution_duration | Общее время выполнения запроса в серверной части. |
read_operations | Общее количество оплачиваемых операций чтения. |
debug_stats | Отладка статистики выполнения запроса. Обратите внимание, что статистика отладки может меняться по мере развития Firestore. Оно может включать: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } } |
СуществованиеФильтр
Дайджест всех документов, соответствующих заданной цели.
Поля | |
---|---|
target_id | Целевой идентификатор, к которому применяется этот фильтр. |
count | Общее количество документов, соответствующих Если количество соответствующих документов в клиенте отличается от числа, клиент должен вручную определить, какие документы больше не соответствуют целевому значению. Клиент может использовать фильтр Блума |
unchanged_names | Фильтр Блума, который, несмотря на свое название, содержит байтовые кодировки UTF-8 имен ресурсов ВСЕХ документов, соответствующих Этот фильтр Блума может быть опущен по усмотрению сервера, например, если считается, что клиент не будет его использовать, или если его вычисление или передача слишком затратны в вычислительном отношении. Клиенты должны корректно обрабатывать отсутствие этого поля, возвращаясь к логике, использовавшейся до того, как это поле существовало; то есть повторно добавьте цель без токена возобновления, чтобы выяснить, какие документы в кэше клиента не синхронизированы. |
ОбъяснениеМетрики
Объясните метрики для запроса.
Поля | |
---|---|
plan_summary | Информация о этапе планирования для запроса. |
execution_stats | Агрегированная статистика выполнения запроса. Присутствует только в том случае, если |
ОбъяснениеПараметры
Объясните варианты запроса.
Поля | |
---|---|
analyze | Необязательный. Выполнять ли этот запрос. Если установлено значение false (по умолчанию), запрос будет планироваться, возвращая только метрики с этапов планирования. Если это значение равно true, запрос будет запланирован и выполнен, возвращая полные результаты запроса вместе с метриками этапов планирования и выполнения. |
Получить документзапрос
Запрос Firestore.GetDocument
.
Поля | |
---|---|
name | Необходимый. Имя ресурса документа, который требуется получить. В формате: |
mask | Поля для возврата. Если не установлено, возвращает все поля. Если в документе есть поле, которого нет в этой маске, это поле не будет возвращено в ответе. |
Объединённое поле consistency_selector . Режим согласованности для этой транзакции. Если не установлено, по умолчанию используется строгая согласованность. consistency_selector может быть только одним из следующих: | |
transaction | Считывает документ в транзакции. |
read_time | Считывает версию документа в данный момент. Это должна быть метка времени с точностью до микросекунды за последний час или, если включено восстановление на момент времени, дополнительно может быть метка времени с точностью до целой минуты за последние 7 дней. |
ListCollectionIdsRequest
Запрос Firestore.ListCollectionIds
.
Поля | |
---|---|
parent | Необходимый. Родительский документ. В формате: |
page_size | Максимальное количество возвращаемых результатов. |
page_token | Токен страницы. Должно быть значение из |
Объединяющее поле consistency_selector . Режим согласованности для этого запроса. Если не установлено, по умолчанию используется строгая согласованность. consistency_selector может быть только одним из следующих: | |
read_time | Читает документы в том виде, в каком они были на данный момент. Это должна быть метка времени с точностью до микросекунды за последний час или, если включено восстановление на момент времени, дополнительно может быть метка времени с точностью до целой минуты за последние 7 дней. |
ListCollectionIdsResponse
Ответ от Firestore.ListCollectionIds
.
Поля | |
---|---|
collection_ids[] | Идентификаторы коллекции. |
next_page_token | Токен страницы, который можно использовать для продолжения списка. |
СписокДокументовЗапрос
Запрос Firestore.ListDocuments
.
Поля | |
---|---|
parent | Необходимый. Имя родительского ресурса. В формате: Например: |
collection_id | Необязательный. Идентификатор коллекции относительно Например: Это необязательно, и если оно не указано, Firestore будет отображать документы из всех коллекций, принадлежащих указанному |
page_size | Необязательный. Максимальное количество документов, возвращаемых в одном ответе. Firestore может возвращать меньшее значение, чем это значение. |
page_token | Необязательный. Токен страницы, полученный из предыдущего ответа Предоставьте это, чтобы получить следующую страницу. При разбиении на страницы все остальные параметры (за исключением |
order_by | Необязательный. Факультативный заказ документов для возврата. Например: Это отражает |
mask | Необязательный. Поля для возврата. Если не установлено, возвращает все поля. Если в документе есть поле, которого нет в этой маске, это поле не будет возвращено в ответе. |
show_missing | Если в списке должны быть указаны недостающие документы. Документ отсутствует, если он не существует, но под ним находятся вложенные документы. Если это правда, такие отсутствующие документы будут возвращены с ключом, но не будут иметь установленных полей, Запросы с |
Объединённое поле consistency_selector . Режим согласованности для этой транзакции. Если не установлено, по умолчанию используется строгая согласованность. consistency_selector может быть только одним из следующих: | |
transaction | Выполните чтение как часть уже активной транзакции. |
read_time | Выполняйте чтение в отведенное время. Это должна быть метка времени с точностью до микросекунды за последний час или, если включено восстановление на момент времени, дополнительно может быть метка времени с точностью до целой минуты за последние 7 дней. |
Список документовОтвет
Ответ на Firestore.ListDocuments
.
Поля | |
---|---|
documents[] | Документы найдены. |
next_page_token | Токен для получения следующей страницы документов. Если это поле опущено, последующие страницы отсутствуют. |
СлушатьЗапрос
Запрос на Firestore.Listen
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
labels | Ярлыки, связанные с этой целью, изменяются. |
Поле объединения target_change . Поддерживаемая цель изменяется. target_change может быть только одним из следующих: | |
add_target | Цель, которую нужно добавить в этот поток. |
remove_target | Идентификатор цели, которую необходимо удалить из этого потока. |
СлушайтеОтвет
Ответ на Firestore.Listen
.
Поля | |
---|---|
Поле объединения response_type . Поддерживаемые ответы. response_type может быть только одним из следующих: | |
target_change | Цели изменились. |
document_change | |
document_delete | |
document_remove | |
filter | Фильтр, применяемый к набору документов, ранее возвращенных для данного целевого объекта. Возвращается, когда документы могли быть удалены из заданной цели, но точные документы неизвестны. |
MapValue
Значение карты.
Поля | |
---|---|
fields | Поля карты. Ключи карты представляют имена полей. Имена полей, соответствующие регулярному выражению |
PartitionQueryRequest
Запрос Firestore.PartitionQuery
.
Поля | |
---|---|
parent | Необходимый. Имя родительского ресурса. В формате: |
partition_count | Желаемое максимальное количество точек разделения. Разделы могут возвращаться на нескольких страницах результатов. Число должно быть положительным. Фактическое количество возвращаемых разделов может быть меньше. Например, это значение может быть установлено на единицу меньше, чем количество выполняемых параллельных запросов, или при запуске задания конвейера данных — на единицу меньше, чем количество доступных рабочих или вычислительных экземпляров. |
page_token | Значение Например, два последующих вызова с использованием page_token могут вернуть:
Чтобы получить полный набор результатов, упорядоченный по результатам запроса, переданного в PartitionQuery, наборы результатов следует объединить: курсор A, курсор B, курсор M, курсор Q, курсор U, курсор W. |
page_size | Максимальное количество разделов, возвращаемых в этом вызове, с учетом Например, если |
Поле объединения query_type . Запрос на разделение. query_type может быть только одним из следующих: | |
structured_query | Структурированный запрос. Запрос должен указывать коллекцию со всеми потомками и быть упорядочен по возрастанию имени. Другие фильтры, порядок, пределы, смещения и курсоры начала/конца не поддерживаются. |
Объединяющее поле consistency_selector . Режим согласованности для этого запроса. Если не установлено, по умолчанию используется строгая согласованность. consistency_selector может быть только одним из следующих: | |
read_time | Читает документы в том виде, в каком они были на данный момент. Это должна быть метка времени с точностью до микросекунды за последний час или, если включено восстановление на момент времени, дополнительно может быть метка времени с точностью до целой минуты за последние 7 дней. |
PartitionQueryResponse
Ответ на Firestore.PartitionQuery
.
Поля | |
---|---|
partitions[] | Результаты раздела. Каждый раздел представляет собой точку разделения, которую RunQuery может использовать в качестве начальной или конечной точки для результатов запроса. Запросы RunQuery должны выполняться с использованием того же запроса, который указан в этом запросе PartitionQuery. Курсоры разделов будут упорядочены в том же порядке, что и результаты запроса, переданного в PartitionQuery. Например, если запрос PartitionQuery возвращает курсоры разделов A и B, выполнение следующих трех запросов вернет весь набор результатов исходного запроса:
Пустой результат может указывать на то, что запрос имеет слишком мало результатов для секционирования или что запрос еще не поддерживается для секционирования. |
next_page_token | Токен страницы, который можно использовать для запроса дополнительного набора результатов, вплоть до числа, указанного в |
ПланСводка
Информация о этапе планирования для запроса.
Поля | |
---|---|
indexes_used[] | Индексы, выбранные для запроса. Например: [ {"query_scope": "Collection", "properties": "(foo ASC, name ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, name ASC)" } ] |
Предварительное условие
Предварительное условие документа, используемое для условных операций.
Поля | |
---|---|
Поле объединения condition_type . Тип предварительного условия. condition_type может быть только одним из следующих: | |
exists | Если установлено значение |
update_time | Если этот параметр установлен, целевой документ должен существовать и быть последний раз обновлен на данный момент. Временная метка должна быть выровнена по микросекундам. |
ОткатЗапрос
Запрос Firestore.Rollback
.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
transaction | Необходимый. Транзакция для отката. |
Запустить агрегационный запросрекуест
Запрос Firestore.RunAggregationQuery
.
Поля | |
---|---|
parent | Необходимый. Имя родительского ресурса. В формате: |
explain_options | Необязательный. Объясните варианты запроса. Если установлено, будет возвращена дополнительная статистика запросов. В противном случае будут возвращены только результаты запроса. |
Поле объединения query_type . Запрос для выполнения. query_type может быть только одним из следующих: | |
structured_aggregation_query | Агрегирующий запрос. |
Объединённое поле consistency_selector . Режим согласованности для запроса по умолчанию — строгая согласованность. consistency_selector может быть только одним из следующих: | |
transaction | Запустите агрегацию в рамках уже активной транзакции. Значением здесь является непрозрачный идентификатор транзакции, в которой будет выполнен запрос. |
new_transaction | Запускает новую транзакцию как часть запроса, по умолчанию доступную только для чтения. Новый идентификатор транзакции будет возвращен в качестве первого ответа в потоке. |
read_time | Выполняет запрос в заданную временную метку. Это должна быть метка времени с точностью до микросекунды за последний час или, если включено восстановление на момент времени, дополнительно может быть метка времени с точностью до целой минуты за последние 7 дней. |
ЗапускАгрегацииQueryResponse
Ответ на Firestore.RunAggregationQuery
.
Поля | |
---|---|
result | Единый результат агрегирования. Не отображается при сообщении о частичном прогрессе. |
transaction | Транзакция, которая была запущена в рамках этого запроса. Присутствует только в первом ответе, когда запрос запрашивает начало новой транзакции. |
read_time | Время, за которое был вычислен совокупный результат. Оно всегда монотонно возрастает; в этом случае предыдущий AggregationResult в потоке результатов гарантированно не изменится между их Если запрос не возвращает результатов, будет отправлен ответ с |
explain_metrics | Метрики объяснения запроса. Это присутствует только в том случае, когда предоставляется |
RUNQUERYREQUEST
Запрос на Firestore.RunQuery
.
Поля | |
---|---|
parent | Необходимый. Имя родительского ресурса. В формате: |
explain_options | Необязательный. Объясните варианты запроса. Если установлена, будет возвращена дополнительная статистика запроса. Если нет, то только результаты запроса будут возвращены. |
Полевое поле Union query_type . Запрос для бега. query_type может быть только одним из следующих: | |
structured_query | Структурированный запрос. |
Союз поля consistency_selector . Режим согласованности для этой транзакции. Если не установлено, по умолчанию к сильной последовательности. consistency_selector может быть только одним из следующих: | |
transaction | Запустите запрос в уже активной транзакции. Значение здесь - непрозрачный идентификатор транзакции для выполнения запроса. |
new_transaction | Запускает новую транзакцию и читает документы. По умолчанию в транзакцию только для чтения. Новый идентификатор транзакции будет возвращен как первый ответ в потоке. |
read_time | Читает документы, как они были в данный момент времени. Это должна быть микросекундная точная метка времени в течение последнего часа, или, если включено восстановление времени, может быть дополнительно быть целой минутной меткой времени в течение последних 7 дней. |
RUNQUERYRESPONSE
Ответ для Firestore.RunQuery
.
Поля | |
---|---|
transaction | Транзакция, которая была начата как часть этого запроса. Может быть установлен только в первом ответе, и только в том случае, если в запросе был установлен |
document | Результат запроса, не установленным при отчете о частичном прогрессе. |
read_time | Время, в которое был прочитал документ. Это может быть монотонно увеличивать; В этом случае предыдущие документы в потоке результатов гарантируются, что не изменились между их Если запрос не возвращает результатов, ответ с |
skipped_results | Количество результатов, которые были пропущены из -за смещения между последним ответом и текущим ответом. |
explain_metrics | Запрос объяснить метрики. Это присутствует только в том случае, когда предоставляется |
continuation_selector поля Союза_SELECTOR. Режим продолжения для запроса. Если присутствует, это указывает, что текущий поток отклика запроса завершился. Это может быть установлено с присутствующим document или без него, но при установке больше результатов не возвращаются. continuation_selector может быть только одним из следующих: | |
done | Если присутствует, Firestore полностью завершил запрос, и больше никаких документов не будет возвращено. |
StructuredAggregationQuery
Запрос Firestore для проведения агрегации по StructuredQuery
.
Поля | |
---|---|
aggregations[] | Необязательный. Серия агрегаций для применения в результате результатов Требует:
|
Полевое поле Union query_type . Базовый запрос для агрегирования. query_type может быть только одним из следующих: | |
structured_query | Вложенный структурированный запрос. |
Агрегация
Определяет агрегацию, которая дает один результат.
Поля | |
---|---|
alias | Необязательный. Необязательное название поля для хранения результата агрегации в. Если не предоставлено, Firestore выберет имя по умолчанию после формата
становится:
Требует:
|
Полевой operator Союза. Тип агрегации для выполнения, требуется. operator может быть только одним из следующих: | |
count | График агрегатор. |
sum | Сумма агрегатора. |
avg | Средний агрегатор. |
Среднее
Среднее значение значений запрошенного поля.
Только числовые значения будут агрегированы. Все ненужные значения, включая
NULL
пропущены.Если агрегированные значения содержат
NaN
, возвращаетNaN
. Бесконечная математика следует стандартам IEEE-754.Если набор агрегированных значений пуст, возвращает
NULL
.Всегда возвращает результат как двойник.
Поля | |
---|---|
field | Поле для агрегирования. |
Считать
Подсчет документов, которые соответствуют запросу.
Функция агрегирования COUNT(*)
работает на весь документ, поэтому она не требует ссылки на поле.
Поля | |
---|---|
up_to | Необязательный. Необязательное ограничение на максимальное количество документов для подсчета. Это дает способ установить верхнюю границу на количество документов для сканирования, ограничения задержки и стоимости. Неуказано интерпретируется как не связанный. Пример высокого уровня:
Требует:
|
Сумма
Сумма значений запрошенного поля.
Только числовые значения будут агрегированы. Все ненужные значения, включая
NULL
пропущены.Если агрегированные значения содержат
NaN
, возвращаетNaN
. Бесконечная математика следует стандартам IEEE-754.Если набор агрегированных значений пуст, возвращает 0.
Возвращает 64-разрядное целое число, если все агрегированные числа являются целыми числами, и результат суммы не переполняется. В противном случае результат возвращается как двойник. Обратите внимание, что даже если все агрегированные значения являются целыми числами, результат возвращается как двойник, если он не может соответствовать 64-битному подписанному целому числу. Когда это произойдет, возвращаемое значение потеряет точность.
Когда возникает недостаточность, агрегация с плавающей точкой является не определенной. Это означает, что запуск одного и того же запроса неоднократно без каких -либо изменений в базовых значениях может каждый раз приносить несколько разных результатов. В этих случаях значения должны храниться в виде целых чисел по номерам с плавающей точкой.
Поля | |
---|---|
field | Поле для агрегирования. |
StructuredQuery
Запрос Firestore.
Стадии запроса выполняются в следующем порядке: 1. Из 2. Где 3. Выберите 4. order_by + start_at + end_at 5. Смещение 6. Предел
Поля | |
---|---|
select | Необязательный подставок полей для возврата. Это действует какмана |
from[] | Коллекции к запросу. |
where | Фильтр для применения. |
order_by[] | Приказ применить к результатам запроса. Firestore позволяет абонентам предоставить полный заказ, частичный заказ или вообще нет. Во всех случаях Firestore гарантирует стабильное упорядочение по следующим правилам:
Поля добавляются с тем же направлением сортировки, что и в последнем указанном порядке, или «поднимающийся», если не было указано никакого порядка. Например:
|
start_at | Потенциальный префикс позиции в результате, установленном для начала запроса. Заказ набора результатов основан на пункте
Результаты этого запроса упорядочены Курсоры могут ссылаться на полное упорядочение или префикс местоположения, хотя он не может ссылаться на большее количество полей, чем в предоставленном Продолжение примера выше, прикрепление следующих курсоров старта окажет различное воздействие:
В отличие от Требует:
|
end_at | Потенциальный префикс позиции в результате, установленном для завершения запроса. Это похоже на Требует:
|
offset | Количество документов для пропуска перед возвращением первого результата. Это применимо после ограничений, указанных с помощью того, Требует:
|
limit | Максимальное количество результатов для возврата. Применяется после всех других ограничений. Требует:
|
find_nearest | Необязательный. Потенциал ближайших соседей ищут поиск. Применяется после всех других фильтров и упорядочения. Находит наиболее близкие векторные встраивания в данное вектор запросов. |
Коллекция
Выбор коллекции, такой как messages as m1
.
Поля | |
---|---|
collection_id | Идентификатор коллекции. При установке выбирает только коллекции с этим идентификатором. |
all_descendants | Когда FALSE выбирает только коллекции, которые являются непосредственными детьми |
Композитныйфильтер
Фильтр, который объединяет несколько других фильтров с использованием данного оператора.
Поля | |
---|---|
op | Оператор для объединения нескольких фильтров. |
filters[] | Список фильтров для объединения. Требует:
|
Оператор
Оператор композитного фильтра.
Перечисления | |
---|---|
OPERATOR_UNSPECIFIED | Не указано. Это значение не должно использоваться. |
AND | Документы необходимы для удовлетворения всех комбинированных фильтров. |
OR | Документы необходимы для удовлетворения хотя бы одного из комбинированных фильтров. |
Направление
Сортуя направление.
Перечисления | |
---|---|
DIRECTION_UNSPECIFIED | Не указано. |
ASCENDING | Восходящий. |
DESCENDING | По убыванию. |
Полевойфильтер
Фильтр на определенном поле.
Поля | |
---|---|
field | Поле для фильтрации по. |
op | Оператор для фильтрации. |
value | Значение для сравнения. |
Оператор
Полевой оператор фильтра.
Перечисления | |
---|---|
OPERATOR_UNSPECIFIED | Не указано. Это значение не должно использоваться. |
LESS_THAN | Данное Требует:
|
LESS_THAN_OR_EQUAL | Данное Требует:
|
GREATER_THAN | Данное Требует:
|
GREATER_THAN_OR_EQUAL | Данное Требует:
|
EQUAL | Указанное field равно заданному value . |
NOT_EQUAL | Указанное Требует:
|
ARRAY_CONTAINS | Данное field - это массив, который содержит заданное value . |
IN | Данное Требует:
|
ARRAY_CONTAINS_ANY | Данное Требует:
|
NOT_IN | Значение Требует:
|
FieldReference
Ссылка на поле в документе, пример: stats.operations
.
Поля | |
---|---|
field_path | Ссылка на поле в документе. Требует:
|
Фильтр
Фильтр.
Поля | |
---|---|
filter_type поля Союза_type. Тип фильтра. filter_type может быть только одним из следующих: | |
composite_filter | Составной фильтр. |
field_filter | Фильтр на поле документа. |
unary_filter | Фильтр, который занимает ровно один аргумент. |
Findnearest
Ближайшие соседские поисковые конфигурации.
Поля | |
---|---|
vector_field | Необходимый. Индексированное векторное поле для поиска. Только документы, которые содержат векторы, размерность которых соответствует Query_Vector, могут быть возвращены. |
query_vector | Необходимый. Вектор запросов, на котором мы ищем. Должен быть вектор не более 2048 измерений. |
distance_measure | Необходимый. Требуется мера расстояния. |
limit | Необходимый. Количество ближайших соседей, чтобы вернуться. Должно быть положительным целым числом не более 1000. |
Дистанционная машина
Мера расстояния для использования при сравнении векторов.
Перечисления | |
---|---|
DISTANCE_MEASURE_UNSPECIFIED | Не должно быть установлено. |
EUCLIDEAN | Измеряет евклидово расстояние между векторами. Смотрите евклидова , чтобы узнать больше |
COSINE | Сравнивает векторы на основе угла между ними, что позволяет измерять сходство, которое не основано на величине векторов. Мы рекомендуем использовать dot_product с нормированными векторами единицы вместо косинусного расстояния, что математически эквивалентно с лучшей производительностью. Смотрите сходство косинуса , чтобы узнать больше. |
DOT_PRODUCT | Подобно косинусу, но на него влияет величина векторов. Смотрите точечный продукт, чтобы узнать больше. |
Заказ
Заказ на поле.
Поля | |
---|---|
field | Поле на заказ. |
direction | Направление на заказ. По умолчанию |
Проекция
Проекция полей документа для возврата.
Поля | |
---|---|
fields[] | Поля вернуться. Если пустые, все поля возвращаются. Чтобы вернуть только имя документа, используйте |
Унарифильтер
Фильтр с одним операндом.
Поля | |
---|---|
op | Унарный оператор для подачи заявления. |
Поле Союза operand_type . Аргумент в фильтр. operand_type может быть только одним из следующих: | |
field | Поле, на которое применить оператор. |
Оператор
Унарно -оператор.
Перечисления | |
---|---|
OPERATOR_UNSPECIFIED | Не указано. Это значение не должно использоваться. |
IS_NAN | Данное field равно NaN . |
IS_NULL | Данное field равно NULL . |
IS_NOT_NAN | Данное Требует:
|
IS_NOT_NULL | Данное Требует:
|
Цель
Спецификация набора документов для прослушивания.
Поля | |
---|---|
target_id | Целевой идентификатор, который идентифицирует цель на потоке. Должен быть положительное число и ненулевое. Если Обратите внимание, что если клиент отправляет несколько запросов Если |
once | Если цель должна быть удалена после того, как она будет тока и последовательна. |
expected_count | Количество документов, которые в последний раз соответствовали запросу в токене резюме или времени чтения. Это значение имеет отношение только к предоставлению |
Поле Союза target_type . Тип цели для прослушивания. target_type может быть только одним из следующих: | |
query | Цель, указанная в запросе. |
documents | Цель, указанная набором имен документов. |
Полевое поле Если указано, будут возвращены только соответствующие документы, которые были обновлены после возврата | |
resume_token | Токен резюме от предыдущей Использование токена резюме с другой целью не поддерживается и может потерпеть неудачу. |
read_time | Начните слушать после конкретного Клиент должен знать состояние соответствующих документов в настоящее время. |
DocumentStarget
Цель, указанная набором имен документов.
Поля | |
---|---|
documents[] | Имена документов для извлечения. В формате: |
QueryTarget
Цель, указанная в запросе.
Поля | |
---|---|
parent | Имя родительского ресурса. В формате: |
Полевое поле Union query_type . Запрос для бега. query_type может быть только одним из следующих: | |
structured_query | Структурированный запрос. |
TargetChange
Цели, которые наблюдаются, изменились.
Поля | |
---|---|
target_change_type | Тип изменения, которые произошли. |
target_ids[] | Целевые идентификаторы целей, которые изменились. Если пустое, изменение относится ко всем целям. Порядок целевых идентификаторов не определен. |
cause | Ошибка, которая привела к этому изменению, если применимо. |
resume_token | Токен, который можно использовать для возобновления потока для данной Не устанавливается на все изменения цели. |
read_time | Последовательный Поток гарантированно отправит Для данного потока |
TargetChangeType
Тип изменения.
Перечисления | |
---|---|
NO_CHANGE | Никаких изменений не произошло. Используется только для отправки обновленного resume_token . |
ADD | Цели были добавлены. |
REMOVE | Цели были удалены. |
CURRENT | Цели отражают все изменения, совершенные до того, как цели были добавлены в поток. Это будет отправлено после или с Слушатели могут ждать этого изменения, если желательна семантика чтения-записи. |
RESET | Цели были сброшены, и новое начальное состояние для целей будет возвращено в последующих изменениях. После завершения начального состояния |
Transactionoptions
Варианты создания новой транзакции.
Поля | |
---|---|
Полевой mode Союза. Режим транзакции. mode может быть только одним из следующих: | |
read_only | Транзакция может использоваться только для операций чтения. |
read_write | Транзакция может использоваться как для операций чтения, так и для записи. |
Только чтение
Варианты транзакции, которую можно использовать только для чтения документов.
Поля | |
---|---|
Союз поля consistency_selector . Режим согласованности для этой транзакции. Если не установлено, по умолчанию к сильной последовательности. consistency_selector может быть только одним из следующих: | |
read_time | Читает документы в данный момент. Это должна быть микросекундная точная метка времени в течение последнего часа, или, если включено восстановление времени, может быть дополнительно быть целой минутной меткой времени в течение последних 7 дней. |
ЧтениеЗапись
Параметры для транзакции, которую можно использовать для чтения и написания документов.
Firestore не разрешает сторонние запросы автозаправочных запросов на создание чтения. транзакции.
Поля | |
---|---|
retry_transaction | Дополнительная транзакция для повторения. |
UpdatedocumentRequest
Запрос на Firestore.UpdateDocument
.
Поля | |
---|---|
document | Необходимый. Обновленный документ. Создает документ, если его еще не существует. |
update_mask | Поля для обновления. Ни один из полевых путей в маске не может содержать зарезервированное имя. Если документ существует на сервере и имеет поля, не упомянутые в маске, они остаются без изменений. Поля, упомянутые в маске, но не присутствуют во входном документе, удалены из документа на сервере. |
mask | Поля вернуться. Если не установлено, возвращает все поля. Если в документе есть поле, которого нет в этой маске, это поле не будет возвращено в ответ. |
current_document | Дополнительное предварительное условие в документе. Запрос потерпит неудачу, если он будет установлен и не будет выполнен целевым документом. |
Ценить
Сообщение, которое может удерживать любой из поддерживаемых типов значений.
Поля | |
---|---|
value_type поля Union_type. Должен иметь набор значений. value_type может быть только одним из следующих: | |
null_value | Нулевое значение. |
boolean_value | Логическое значение. |
integer_value | Целочисленное значение. |
double_value | Двойное значение. |
timestamp_value | Значение временной метки. Точно только к микросекундам. При хранении любая дополнительная точность округлена. |
string_value | Строковое значение. Строка, представленная как UTF -8, не должна превышать 1 Mib - 89 байтов. Только первые 1500 байтов представления UTF-8 рассматриваются запросами. |
bytes_value | Значение байтов. Не должно превышать 1 миб - 89 байт. Только первые 1500 байтов рассматриваются по запросам. |
reference_value | Ссылка на документ. Например: |
geo_point_value | Значение точки гео, представляющее точку на поверхности Земли. |
array_value | Значение массива. Не может напрямую содержать другое значение массива, хотя может содержать карту, которая содержит другой массив. |
map_value | Значение карты. |
Писать
Написать на документе.
Поля | |
---|---|
update_mask | Поля для обновления в этой записи. Это поле можно установить только при |
update_transforms[] | Преобразования для выполнения после обновления. Это поле можно установить только при |
current_document | Дополнительное предварительное условие в документе. Запись потерпит неудачу, если это будет установлено и не будет выполнено целевым документом. |
Полевой operation Союза. Операция для выполнения. operation может быть только одним из следующих: | |
update | Документ для написания. |
delete | Имя документа для удаления. В формате: |
transform | Применяет преобразование в документ. |
WriteRequest
Запрос на Firestore.Write
.
Первый запрос создает поток или возобновляет существующий из токена.
При создании нового потока сервер отвечает ответом, содержащим только идентификатор и токен, для использования в следующем запросе.
При возобновлении потока сервер сначала транслирует любые ответы позже, чем заданный токен, затем ответ, содержащий только современный токен, для использования в следующем запросе.
Поля | |
---|---|
database | Необходимый. Имя базы данных. В формате: |
stream_id | Идентификатор потока записи, чтобы возобновить. Это может быть установлено только в первом сообщении. Когда останется пустым, будет создан новый поток записи. |
writes[] | Писает, чтобы подать заявку. Всегда выполняется атомно и в порядке. Это должно быть пусто по первым запросам. Это может быть пусто по последнему запросу. Это не должно быть пустым по всем другим запросам. |
stream_token | Токен потока, который ранее был отправлен сервером. Клиент должен установить это поле в токен из последнего полученного Сервер может закрыть поток, если есть слишком много неподтвержденных ответов. Оставьте это поле неоткрыто при создании нового потока. Чтобы возобновить поток в определенной точке, установите это поле и поле Оставьте это поле неоткрыто при создании нового потока. |
labels | Метки, связанные с этим запросом на запись. |
Писательница
Ответ для Firestore.Write
.
Поля | |
---|---|
stream_id | Идентификатор потока. Установите только первое сообщение, когда был создан новый поток. |
stream_token | Токен, который представляет позицию этого ответа в потоке. Это может использоваться клиентом для возобновления потока на этом этапе. Это поле всегда установлено. |
write_results[] | Результат применения записей. Этот результат записи соответствует i-th write в запросе. |
commit_time | Время, в которое произошел коммит. Любое чтение с равным или большим |
Писатель
Результат применения записи.
Поля | |
---|---|
update_time | Последнее время обновления документа после применения записи. Не установлен после Если запись фактически не изменила документ, это будет предыдущее Update_time. |
transform_results[] | Результаты применения каждого |