На этой странице представлен обзор диагностического инструмента Key Visualizer для Cloud Firestore .
Что такое Key Visualizer?
Key Visualizer — это инструмент, который помогает анализировать закономерности использования Cloud Firestore . Он генерирует визуальные отчеты, которые показывают разбивку использования на основе документов, к которым вы обращаетесь, или записей индекса, которые записываются или удаляются при изменении документов.
Key Visualizer может предоставить информацию о моделях использования в больших масштабах. Примеры применения Key Visualizer:
- Устранение неполадок, связанных с производительностью. Key Visualizer помогает выявлять проблемы с производительностью вашей базы данных, вызванные узкими местами, возникающими из-за последовательных ключей документов или индексов, или внезапных увеличений трафика.
- Получение более глубокого понимания того, как осуществляется доступ к данным, хранящимся в Cloud Firestore .
- Итеративное проектирование модели данных или улучшение дизайна существующей модели данных. На каждой итерации вы можете использовать Key Visualizer для выявления проблем, которые вызывает ваша модель данных.
Для достижения этих целей Key Visualizer может помочь вам выполнить следующие задачи:
- Проверьте, не создают ли операции чтения или записи «горячие точки» в определенных диапазонах документов.
- Посмотрите, как внезапное увеличение трафика влияет на задержку.
- Проверьте, насколько сбалансированы шаблоны доступа к данным в вашей базе данных.
- Проверьте структуру ключей индекса, чтобы определить определения индексов, вызывающие проблемы с загрузкой индекса.
- Используйте визуализацию ключей индекса для более точного прогнозирования структуры рабочей нагрузки.
Право на сканирование
Каждое сканирование Key Visualizer охватывает двухчасовой период. Сканирование за определенный период доступно для баз данных, трафик которых превышает 3000 операций с документами в минуту в течение этого периода.
Возможность сканирования полностью зависит от активности в базе данных. Она не зависит от объема данных или типа данных в вашей базе данных.
Сканирование с помощью Key Visualizer
На следующем изображении показано сканирование с помощью Key Visualizer. Каждое сканирование включает тепловую карту, отображающую шаблоны доступа или показатели производительности для группы ключей документа или ключей индекса с течением времени.

Совместное использование URL-адресов сканирования
Вы можете поделиться ссылкой на сканирование Key Visualizer или добавить её в закладки. По этой ссылке откроется то же самое сканирование Key Visualizer и будет выбран тот же показатель. Эта ссылка действительна до истечения срока действия данных сканирования .
Тепловые карты
В основе сканирования Key Visualizer лежит тепловая карта, которая показывает изменение значения метрики во времени, разбитое на до 1000 смежных ключевых сегментов .
На тепловой карте ключей документа ось X представляет время, а ось Y — ключи документа, тогда как на тепловой карте ключей индекса ось X представляет время, а ось Y — ключи индекса.
Каждое сканирование Key Visualizer для Cloud Firestore охватывает два часа активности, разделенные на 10-секундные сегменты.
Низкое значение показателя считается «холодным» и отображается темным цветом. Высокое значение считается «горячим» и отображается ярким цветом. Самые высокие значения отображаются белым цветом.
Различные типы использования приводят к различным визуальным закономерностям на тепловой карте, что позволяет с первого взгляда диагностировать проблемы. Примеры распространенных закономерностей можно найти в разделах «Закономерности тепловой карты для ключей документа» или «Закономерности тепловой карты для ключей индекса» .
Key Visualizer предоставляет инструменты, которые помогут вам понять данные каждого сканирования. См. разделы «Начало работы с Key Visualizer» и «Изучение тепловых карт» .
Ключевые категории
Key Visualizer разделяет все ключи в вашей базе данных на до 1000 смежных диапазонов, в каждом из которых примерно одинаковое количество ключей и операций в секунду. Эти диапазоны называются сегментами ключей (key buckets) .
Key Visualizer использует общее количество операций в секунду (Ops/s) базы данных для разделения ключевых сегментов таким образом, чтобы каждый сегмент обрабатывал примерно одинаковое количество операций в секунду, при этом минимальный рекомендуемый размер составляет 50 операций в секунду на каждый ключевой сегмент. Для баз данных с большим общим количеством операций в секунду каждый ключевой сегмент может обрабатывать более 50 операций в секунду. В базах данных с менее чем 50 операциями в секунду сканирование выполняется с использованием одного ключевого сегмента.
Key Visualizer отображает большинство метрик в виде средних значений по каждому ключевому сегменту или в виде максимальных значений внутри каждого ключевого сегмента.
Метрики
В результатах сканирования Key Visualizer для ключей документов доступны следующие метрики:
| Метрики | Описание |
|---|---|
| Показатели активности | |
| Операции/ы | Среднее количество операций с документами в секунду. Примерно равно сумме операций записи, поиска и запросов в секунду. Этот показатель может указывать на наиболее часто используемые ключи. |
| Операции по написанию текстов | Среднее количество операций с документами в секунду для записи и удаления. |
| Операции поиска/ | Среднее количество операций с документами в секунду для поиска. |
| Операции запросов/с | Среднее количество операций с документами в секунду для запросов. |
| Показатели производительности | |
| Средняя задержка записи | Средняя задержка при записи и удалении данных, обрабатываемых в хранилище. |
| Средняя задержка поиска | Средняя задержка при поиске информации в обработанных данных в сегменте. |
| Средняя задержка запроса | Средняя задержка выполнения запросов в рамках обработанных данных в хранилище. |
| Задержка записи хвоста | Максимальная наблюдаемая задержка записи или удаления в обрабатываемых данных в хранилище. |
| Задержка хвоста поиска | Максимальная наблюдаемая задержка поиска в обработанных данных в сегменте. |
| Задержка в конце запроса | Максимальная наблюдаемая задержка запроса в обработанных данных в сегменте. |
В результатах сканирования Key Visualizer для ключей индекса доступна следующая метрика:
| Метрики | Описание |
|---|---|
| Операции записи индекса | Среднее количество операций записи в индекс в секунду. |
Средние показатели производительности
Метрика средней задержки вычисляет среднее значение по ключам в хранилище ключей. Поскольку это измерение производится на уровне хранения, сообщаемая здесь задержка может быть ниже общей задержки вызова API.
Пределы
Хотя Key Visualizer отображает множество метрик, он не показывает все метрики, которые могут повлиять на производительность Cloud Firestore . Например:
- Проблемы с сетью между вашим приложением и Google Cloud могут быть незаметны. В Key Visualizer они могут отображаться в виде вертикальных полос по всем ключам, что лишь намекает на момент возникновения проблем.
Продолжительность данных
Собранные Key Visualizer для Cloud Firestore данные удаляются через 14 дней.
Данные Key Visualizer доступны за последние 14 дней. Например, если вы запустите Key Visualizer 19 декабря в 12:45, самое раннее время начала, которое вы можете выбрать для двухчасового интервала, — это 5 декабря в 13:00.
Это ограничение также означает, что если вы добавите в закладки или поделитесь URL-адресом сканирования Key Visualizer, срок действия URL-адреса составит максимум 14 дней.
Что дальше?
- Узнайте, как начать работу с Key Visualizer .
- Разберитесь в шаблонах ключей документа или шаблонах ключей индекса, которые вы можете увидеть на тепловых картах Key Visualizer.
- Узнайте, как детально изучить тепловую карту .