Приборная панель метрик Milvus
Во время работы Milvus выводит список подробных метрик с временными рядами. Для визуализации метрик можно использовать Prometheus и Grafana. В этой теме представлены метрики мониторинга, отображаемые в Grafana Milvus Dashboard.
Единицей времени в этой теме являются миллисекунды. А "99-й процентиль" в этой теме означает, что 99 процентов времени статистика контролируется в пределах определенного значения.
Для понимания метрик Prometheus мы рекомендуем сначала прочитать обзор фреймворка мониторинга Milvus.
Прокси
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Скорость подсчета поисковых векторов | Среднее количество векторов, запрашиваемых в секунду каждым прокси в течение последних двух минут. | sum(increase(milvus_proxy_search_vectors_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (pod, node_id) | milvus_proxy_search_vectors_count | Накопленное количество запрошенных векторов. |
Insert Vector Count Rate | Среднее количество векторов, вставленных в секунду каждым прокси в течение последних двух минут. | sum(increase(milvus_proxy_insert_vectors_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (pod, node_id) | milvus_proxy_insert_vectors_count | Накопленное количество вставленных векторов. |
Латентность поиска | Средняя задержка и 99-й процентиль задержки получения запросов на поиск и запрос каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_sq_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_sq_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_sq_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) | milvus_proxy_sq_latency | Задержка запросов на поиск и запросы. |
Задержка поиска коллекции | Средняя задержка и 99-й процентиль задержки получения запросов поиска и запросов к определенной коллекции каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_collection_sq_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m]))) avg: sum(increase(milvus_proxy_collection_sq_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_collection_sq_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m])) by (pod, node_id, query_type) | milvus_proxy_collection_sq_latency_sum | Время ожидания запросов поиска и запросов к определенной коллекции |
Мутационная задержка | Средняя задержка и 99-й процентиль задержки получения запросов на мутацию каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, msg_type, pod, node_id) (rate(milvus_proxy_mutation_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_mutation_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, msg_type) / sum(increase(milvus_proxy_mutation_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, msg_type) | milvus_proxy_mutation_latency_sum | Задержка запросов на мутацию. |
Латентность мутации коллекции | Средняя задержка и 99-й процентиль задержки получения запросов мутации к определенной коллекции каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_collection_sq_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m]))) avg: sum(increase(milvus_proxy_collection_sq_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_collection_sq_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", collection_name=~"$collection"}[2m])) by (pod, node_id, query_type) | milvus_proxy_collection_sq_latency_sum | Задержка запросов мутации к определенной коллекции |
Задержка ожидания результатов поиска | Средняя задержка и 99-й процентиль задержки между отправкой запросов поиска и запросов и получением результатов прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_sq_wait_result_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_sq_wait_result_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_sq_wait_result_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) | milvus_proxy_sq_wait_result_latency | Задержка между отправкой запросов на поиск и получение результатов. |
Уменьшить задержку результатов поиска | Средняя задержка и 99-й процентиль задержки агрегирования результатов поиска и запросов через прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_sq_reduce_result_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_sq_reduce_result_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_sq_reduce_result_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) | milvus_proxy_sq_reduce_result_latency | Задержка объединения результатов поиска и запросов, возвращаемых каждым узлом запроса. |
Задержка декодирования результатов поиска | Средняя задержка и 99-й процентиль задержки декодирования результатов поиска и запросов по прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_proxy_sq_decode_result_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_sq_decode_result_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) / sum(increase(milvus_proxy_sq_decode_resultlatency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, query_type) | milvus_proxy_sq_decode_result_latency | Задержка декодирования каждого результата поиска и запроса. |
Msg Stream Object Num | Среднее, максимальное и минимальное количество объектов msgstream, созданных каждым прокси на соответствующей физической теме за последние две минуты. | avg(milvus_proxy_msgstream_obj_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) max(milvus_proxy_msgstream_obj_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) min(milvus_proxy_msgstream_obj_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_proxy_msgstream_obj_num | Количество объектов msgstream, созданных в каждой физической теме. |
Задержка отправки мутаций | Средняя задержка и 99-й процентиль задержки отправки запросов на вставку или удаление каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, msg_type, pod, node_id) (rate(milvus_proxy_mutation_send_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_mutation_send_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, msg_type) / sum(increase(milvus_proxy_mutation_send_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, msg_type) | milvus_proxy_mutation_send_latency | Задержка отправки запросов на вставку или удаление. |
Скорость попадания в кэш | Средний показатель попадания в кэш операций, включая GeCollectionID , GetCollectionInfo и GetCollectionSchema в секунду в течение последних двух минут. | sum(increase(milvus_proxy_cache_hit_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", cache_state="hit"}[2m])/120) by(cache_name, pod, node_id) / sum(increase(milvus_proxy_cache_hit_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by(cache_name, pod, node_id) | milvus_proxy_cache_hit_count | Статистика попаданий и отказов для каждой операции чтения кэша. |
Задержка обновления кэша | Средняя задержка и 99-й процентиль задержки обновления кэша по прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_proxy_cache_update_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_cache_update_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) / sum(increase(milvus_proxy_cache_update_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) | milvus_proxy_cache_update_latency | Задержка обновления кэша каждый раз. |
Время синхронизации | Среднее, максимальное и минимальное количество эпохального времени, синхронизированного каждым прокси в соответствующем физическом канале. | avg(milvus_proxy_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) max(milvus_proxy_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) min(milvus_proxy_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_proxy_sync_epoch_time | Время эпохи каждого физического канала (время Unix, миллисекунды, прошедшие с 1 января 1970 года). По умолчанию существует ChannelName , не относящийся к физическим каналам. |
Применить задержку PK | Средняя задержка и 99-й процентиль задержки применения первичного ключа каждым прокси за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_proxy_apply_pk_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_apply_pk_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) / sum(increase(milvus_proxy_apply_pk_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) | milvus_proxy_apply_pk_latency | Задержка применения первичного ключа. |
Задержка применения временной метки | Средняя задержка и 99-й процентиль задержки применения временной метки каждым прокси в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_proxy_apply_timestamp_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_apply_timestamp_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) / sum(increase(milvus_proxy_apply_timestamp_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id) | milvus_proxy_apply_timestamp_latency | Задержка применения временной метки. |
Коэффициент успешности запросов | Количество успешных запросов, полученных в секунду каждым прокси, с подробной разбивкой по типам запросов. Возможные типы запросов: DescribeCollection, DescribeIndex, GetCollectionStatistics, HasCollection, Search, Query, ShowPartitions, Insert и т. д. | |||
sum(increase(milvus_proxy_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", status="success"}[2m])/120) by(function_name, pod, node_id) | milvus_proxy_req_count | Количество всех типов полученных запросов | ||
Частота неудачных запросов | Количество неудачных запросов, полученных в секунду каждым прокси, с подробной разбивкой по каждому типу запросов. Возможные типы запросов: DescribeCollection, DescribeIndex, GetCollectionStatistics, HasCollection, Search, Query, ShowPartitions, Insert и т. д. | |||
sum(increase(milvus_proxy_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace", status="fail"}[2m])/120) by(function_name, pod, node_id) | milvus_proxy_req_count | Количество всех типов полученных запросов | ||
Латентность запроса | Средняя задержка и 99-й процентиль задержки всех типов принимаемых запросов каждым прокси-сервером | p99: histogram_quantile(0.99, sum by (le, pod, node_id, function_name) (rate(milvus_proxy_req_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_proxy_req_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, function_name) / sum(increase(milvus_proxy_req_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (pod, node_id, function_name) | milvus_proxy_req_latency | Задержка всех типов запросов на получение |
Количество байт запросов на вставку/удаление | Количество байт запросов на вставку и удаление, полученных прокси в секунду за последние две минуты. | sum(increase(milvus_proxy_receive_bytes_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by(pod, node_id) | milvus_proxy_receive_bytes_count | Количество запросов на вставку и удаление. |
Скорость отправки байтов | Количество байт в секунду, отправленных обратно клиенту, когда каждый прокси отвечает на запросы поиска и запросов в течение последних двух минут. | sum(increase(milvus_proxy_send_bytes_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by(pod, node_id) | milvus_proxy_send_bytes_count | Количество байт, отправленных обратно клиенту, пока каждый прокси отвечает на запросы поиска и запросов. |
Корневой координатор
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Количество прокси-узлов | Количество созданных прокси. | sum(milvus_rootcoord_proxy_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_proxy_num | Количество прокси-узлов. |
Sync Time | Среднее, максимальное и минимальное количество эпохального времени, синхронизированного каждым корневым коордом в каждом физическом канале (PChannel). | avg(milvus_rootcoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) max(milvus_rootcoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) min(milvus_rootcoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_sync_epoch_time | Время эпохи каждого физического канала (время Unix, миллисекунды, прошедшие с 1 января 1970 года). |
Скорость выполнения DDL-запросов | Состояние и количество DDL-запросов в секунду в течение последних двух минут. | sum(increase(milvus_rootcoord_ddl_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status, function_name) | milvus_rootcoord_ddl_req_count | Общее количество DDL-запросов, включая CreateCollection , DescribeCollection , DescribeSegments , HasCollection , ShowCollections , ShowPartitions и ShowSegments . |
Латентность DDL-запросов | Средняя задержка и 99-й процентиль задержки DDL-запросов за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, function_name) (rate(milvus_rootcoord_ddl_req_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_rootcoord_ddl_req_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (function_name) / sum(increase(milvus_rootcoord_ddl_req_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by (function_name) | milvus_rootcoord_ddl_req_latency | Задержка всех типов DDL-запросов. |
Sync Timetick Latency | Средняя задержка и 99-й процентиль времени, использованного root coord для синхронизации всех временных меток с PChannel в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le) (rate(milvus_rootcoord_sync_timetick_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_rootcoord_sync_timetick_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) / sum(increase(milvus_rootcoord_sync_timetick_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) | milvus_rootcoord_sync_timetick_latency | время, использованное корневым координатором для синхронизации всех временных меток с PChannel. |
Скорость распределения идентификаторов | Количество идентификаторов, присваиваемых корневым коордом в секунду в течение последних двух минут. | sum(increase(milvus_rootcoord_id_alloc_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) | milvus_rootcoord_id_alloc_count | Накопленное количество идентификаторов, присвоенных корневым коордом. |
Временная метка | Последняя временная метка корневого коорда. | milvus_rootcoord_timestamp{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"} | milvus_rootcoord_timestamp | Последняя временная метка корневого координатора. |
Сохраненные временные метки | Предварительно назначенные временные метки, которые root coord сохраняет в метахранилище. | milvus_rootcoord_timestamp_saved{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"} | milvus_rootcoord_timestamp_saved | Предварительно назначенные временные метки, которые root coord сохраняет в метахранилище. Временные метки назначаются на 3 секунды раньше. Временная метка обновляется и сохраняется в метахранилище каждые 50 миллисекунд. |
Количество коллекций | Общее количество коллекций. | sum(milvus_rootcoord_collection_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_collection_num | Общее количество коллекций, существующих в Milvus на данный момент. |
Partition Num | Общее количество разделов. | sum(milvus_rootcoord_partition_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_partition_num | Общее количество разделов, существующих в Milvus на данный момент. |
DML Channel Num | Общее количество каналов DML. | sum(milvus_rootcoord_dml_channel_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_dml_channel_num | Общее количество каналов DML, существующих в Milvus в настоящее время. |
Msgstream Num | Общее количество msgstreams. | sum(milvus_rootcoord_msgstream_obj_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_msgstream_obj_num | Общее количество msgstreams в Milvus на данный момент. |
Credential Num | Общее количество учетных данных. | sum(milvus_rootcoord_credential_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_credential_num | Общее количество учетных данных в Milvus на данный момент. |
Задержка временного тика | Сумма максимальной временной задержки тиков графиков потока на всех DataNodes и QueryNodes. | sum(milvus_rootcoord_time_tick_delay{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_rootcoord_time_tick_delay | Максимальная временная задержка тиков графиков потока на каждом DataNode и QueryNode. |
Координатор запросов
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Collection Loaded Num | Количество коллекций, которые в данный момент загружены в память. | sum(milvus_querycoord_collection_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_querycoord_collection_num | Количество коллекций, которые в данный момент загружены Milvus. |
Entity Loaded Num | Количество сущностей, загруженных в память в данный момент. | sum(milvus_querycoord_entity_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_querycoord_entitiy_num | Количество сущностей, загруженных Milvus в данный момент. |
Скорость запросов на загрузку | Количество запросов на загрузку в секунду за последние две минуты. | sum(increase(milvus_querycoord_load_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])120) by (status) | milvus_querycoord_load_req_count | Накопленное количество запросов на загрузку. |
Скорость запросов на освобождение | Количество запросов на освобождение в секунду в течение последних двух минут. | sum(increase(milvus_querycoord_release_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status) | milvus_querycoord_release_req_count | Накопленное количество запросов на освобождение. |
Латентность запросов нагрузки | Средняя задержка и 99-й процентиль задержки запросов нагрузки за последние две минуты. | p99: histogram_quantile(0.99, sum by (le) (rate(milvus_querycoord_load_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querycoord_load_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) / sum(increase(milvus_querycoord_load_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) | milvus_querycoord_load_latency | Время, затраченное на выполнение запроса на нагрузку. |
Задержка запроса на освобождение | Средняя задержка и 99-й процентиль задержки запросов на освобождение в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le) (rate(milvus_querycoord_release_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querycoord_release_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) / sum(increase(milvus_querycoord_release_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) | milvus_querycoord_release_latency | Время, затраченное на завершение запроса на освобождение. |
Задача поднагрузки | Количество задач подзагрузки. | sum(milvus_querycoord_child_task_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_querycoord_child_task_num | Количество подзадач нагрузки. Коорд запроса разбивает запрос нагрузки на несколько подзадач. |
Родительское задание нагрузки | Количество родительских заданий нагрузки. | sum(milvus_querycoord_parent_task_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_querycoord_parent_task_num | Количество подзадач. Каждый запрос нагрузки соответствует родительской задаче в очереди задач. |
Латентность подзадач нагрузки | Средняя задержка и 99-й процентиль задержки задачи подзагрузки за последние две минуты. | p99: histogram_quantile(0.99, sum by (le) (rate(milvus_querycoord_child_task_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querycoord_child_task_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) / sum(increase(milvus_querycoord_child_task_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) namespace"}[2m]))) | milvus_querycoord_child_task_latency | Время ожидания завершения задачи подзагрузки. |
Query Node Num | Количество узлов запроса, управляемых коорд. запросом. | sum(milvus_querycoord_querynode_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_querycoord_querynode_num | Количество узлов запроса, управляемых координатором запроса. |
Узел запроса
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Collection Loaded Num | Количество коллекций, загруженных в память каждым узлом запроса. | sum(milvus_querynode_collection_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_collection_num | Количество коллекций, загруженных каждым узлом запроса. |
Partition Loaded Num | Количество разделов, загруженных в память каждым узлом запроса. | sum(milvus_querynode_partition_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_partition_num | Количество разделов, загруженных каждым узлом запроса. |
Segment Loaded Num | Количество сегментов, загруженных в память каждым узлом запроса. | sum(milvus_querynode_segment_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_segment_num | Количество сегментов, загруженных каждым узлом запроса. |
Queryable Entity Num | Количество сущностей, доступных для запроса и поиска, на каждом узле запроса. | sum(milvus_querynode_entity_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_entity_num | Количество сущностей, доступных для запроса и поиска, на каждом узле запроса. |
Виртуальный канал DML | Количество виртуальных каналов DML, просматриваемых каждым узлом запроса. | sum(milvus_querynode_dml_vchannel_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_dml_vchannel_num | Количество виртуальных каналов DML, просматриваемых каждым узлом запроса. |
Виртуальный дельта-канал | Количество дельта-каналов, просматриваемых каждым узлом запроса. | sum(milvus_querynode_delta_vchannel_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_delta_vchannel_num | Количество дельта-каналов, просматриваемых каждым узлом запроса. |
Количество потребителей | Количество потребителей в каждом узле запроса. | sum(milvus_querynode_consumer_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_consumer_num | Количество потребителей в каждом узле запроса. |
Количество поисковых запросов | Общее количество запросов на поиск и запрос, полученных в секунду каждым узлом запроса, и количество успешных запросов на поиск и запрос за последние две минуты. | sum(increase(milvus_querynode_sq_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (query_type, status, pod, node_id) | milvus_querynode_sq_req_count | Накопленное количество запросов поиска и запросов. |
Латентность поисковых запросов | Средняя задержка и 99-й процентиль времени, затраченного на поиск и запросы каждым узлом запроса в течение последних двух минут. На этой панели отображается задержка запросов поиска и запросов, статус которых "успех" или "итог". | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_sq_req_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_sq_req_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) / sum(increase(milvus_querynode_sq_req_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) | milvus_querynode_sq_req_latency | Задержка поисковых запросов узла запроса. |
Латентность поиска в очереди | Средняя задержка и 99-й процентиль задержки запросов поиска и запросов в очереди за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id, query_type) (rate(milvus_querynode_sq_queue_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_sq_queue_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) / sum(increase(milvus_querynode_sq_queue_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) | milvus_querynode_sq_queue_latency | Задержка запросов поиска и запросов, полученных узлом запроса. |
Латентность поискового сегмента | Средняя задержка и 99-й процентиль времени, затраченного узлом запроса на поиск и запрос сегмента в течение последних двух минут. Статус сегмента может быть закрытым или растущим. | p99: histogram_quantile(0.99, sum by (le, query_type, segment_state, pod, node_id) (rate(milvus_querynode_sq_segment_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_sq_segment_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type, segment_state) / sum(increase(milvus_querynode_sq_segment_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type, segment_state) | milvus_querynode_sq_segment_latency | Время, затрачиваемое узлом запроса на поиск и запрос каждого сегмента. |
Задержка запроса сегмента | Средняя задержка и 99-й процентиль времени, затраченного каждым узлом запроса на поиск и запрос в сегменте за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, query_type, pod, node_id) (rate(milvus_querynode_sq_core_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_sq_core_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) / sum(increase(milvus_querynode_sq_core_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) | milvus_querynode_sq_core_latency | Время, затрачиваемое каждым узлом запроса на поиск и запрос в segcore. |
Латентность уменьшения поиска | Средняя задержка и 99-й процентиль времени, использованного каждым узлом запроса на этапе уменьшения поиска или запроса в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id, query_type) (rate(milvus_querynode_sq_reduce_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_sq_reduce_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) / sum(increase(milvus_querynode_sq_reduce_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id, query_type) | milvus_querynode_sq_reduce_latency | Время, затрачиваемое каждым запросом на этапе уменьшения. |
Латентность сегмента нагрузки | Средняя задержка и 99-й процентиль времени, затрачиваемого каждым узлом запроса на загрузку сегмента за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_load_segment_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_load_segment_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_load_segment_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | Время, затрачиваемое каждым узлом запроса на загрузку сегмента. |
Flowgraph Num | Количество графов потока в каждом узле запроса. | sum(milvus_querynode_flowgraph_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_flowgraph_num | Количество графов потока в каждом узле запроса. |
Длина очереди нерешенных задач чтения | Длина очереди неразрешенных запросов на чтение в каждом узле запроса. | sum(milvus_querynode_read_task_unsolved_len{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_read_task_unsolved_len | Длина очереди неразрешенных запросов на чтение. |
Длина готовой задачи чтения | Длина очереди запросов на чтение, которые должны быть выполнены в каждом узле запроса. | sum(milvus_querynode_read_task_ready_len{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_read_task_ready_len | Длина очереди запросов на чтение, подлежащих выполнению. |
Parallel Read Task Num | Количество параллельных запросов на чтение, выполняемых в настоящее время в каждом узле запроса. | sum(milvus_querynode_read_task_concurrency{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_read_task_concurrency | Количество параллельных запросов на чтение, выполняемых в данный момент. |
Оценка использования ЦП | Использование ЦП каждым узлом запроса, оцененное планировщиком. | sum(milvus_querynode_estimate_cpu_usage{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_querynode_estimate_cpu_usage | Использование процессора каждым узлом запроса, оцененное планировщиком. Если значение равно 100, это означает, что используется целый виртуальный процессор (vCPU). |
Размер группы поиска | Среднее число и 99-й процентиль размера группы поиска (т. е. общее число исходных поисковых запросов в совокупности поисковых запросов, выполняемых каждым узлом запроса) за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_search_group_size_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_search_group_size_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_search_group_size_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | Количество оригинальных поисковых задач среди объединенных поисковых задач из разных ведер (т. е. размер поисковой группы). |
Поиск NQ | Среднее число и 99-й процентиль количества запросов (NQ), выполненных каждым узлом запроса в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_search_group_size_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_search_group_size_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_search_group_size_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | Количество запросов (NQ) поисковых запросов. |
Группа поиска NQ | Среднее число и 99-й процентиль NQ поисковых запросов, объединенных и выполненных каждым узлом запроса в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_search_group_nq_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_search_group_nq_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_search_group_nq_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | NQ поисковых запросов, объединенных из разных ведер. |
Search Top_K | Среднее число и 99-й процентиль Top_K поисковых запросов, выполненных каждым узлом запроса за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_search_topk_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_search_topk_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_search_topk_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | Число Top_K поисковых запросов. |
Поисковая группа Top_K | Среднее число и 99-й процентиль Top_K поисковых запросов, объединенных и выполненных каждым узлом запроса за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_querynode_search_group_topk_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_querynode_search_group_topk_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_querynode_search_group_topk_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_querynode_load_segment_latency_bucket | Top_K поисковых запросов, объединенных из разных ведер. |
Количество вытесненных запросов на чтение | Количество запросов на чтение, отклоненных в секунду каждым узлом запроса в течение последних двух минут. | sum(increase(milvus_querynode_read_evicted_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (pod, node_id) | milvus_querynode_sq_req_count | Накопленное количество запросов на чтение, отклоненных узлом запроса из-за ограничения трафика. |
Координатор данных
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Data Node Num | Количество узлов данных, управляемых data coord. | sum(milvus_datacoord_datanode_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_datacoord_datanode_num | Количество узлов данных, управляемых координатором данных. |
Segment Num | Количество всех типов сегментов, записанных в метаданных data coord. | sum(milvus_datacoord_segment_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (segment_state) | milvus_datacoord_segment_num | Количество всех типов сегментов, записанных в метаданных data coord. Типы сегментов включают: сброшенные, смытые, промытые, растущие и запечатанные. |
Количество коллекций | Количество коллекций, записанных в метаданные по коорд. данным. | sum(milvus_datacoord_collection_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_datacoord_collection_num | Количество коллекций, записанных в метаданных по коорд. данным. |
Stored Rows | Накопленное количество строк валидных и промытых данных в коорд. данных. | sum(milvus_datacoord_stored_rows_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_datacoord_stored_rows_num | Накопленное количество строк валидных и смытых данных в коорд. данных. |
Stored Rows Rate | Среднее количество строк, выгружаемых в секунду в течение последних двух минут. | sum(increase(milvus_datacoord_stored_rows_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (pod, node_id) | milvus_datacoord_stored_rows_count | Накопленное количество строк, промытых в data coord. |
Время синхронизации | Среднее, максимальное и минимальное количество эпохального времени синхронизации данных в каждом физическом канале. | avg(milvus_datacoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) max(milvus_datacoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) min(milvus_datacoord_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_datacoord_sync_epoch_time | Время эпохи каждого физического канала (время Unix, миллисекунды, прошедшие с 1 января 1970 года). |
Размер хранимого бинлога | Общий размер хранимого бинлога. | sum(milvus_datacoord_stored_binlog_size{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_datacoord_stored_binlog_size | Общий размер бинлога, хранящегося в Milvus. |
Узел данных
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Flowgraph Num | Количество объектов flowgraph, соответствующих каждому узлу данных. | sum(milvus_datanode_flowgraph_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_datanode_flowgraph_num | Количество объектов flowgraph. Каждый шард в коллекции соответствует объекту flowgraph. |
Скорость потребления строк сообщений | Количество строк потоковых сообщений, потребляемых в секунду каждым узлом данных в течение последних двух минут. | sum(increase(milvus_datanode_msg_rows_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (msg_type, pod, node_id) | milvus_datanode_msg_rows_count | Количество потребленных строк потоковых сообщений. В настоящее время потоковые сообщения, подсчитываемые по узлам данных, включают только сообщения о вставке и удалении. |
Скорость передачи данных при промывке | Размер каждого смываемого сообщения, регистрируемого в секунду каждым узлом данных в течение последних двух минут. | sum(increase(milvus_datanode_flushed_data_size{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (msg_type, pod, node_id) | milvus_datanode_flushed_data_size | Размер каждого переданного сообщения. В настоящее время потоковые сообщения, подсчитанные по узлам данных, включают только сообщения о вставке и удалении. |
Num потребителей | Количество потребителей, созданных на каждом узле данных. | sum(milvus_datanode_consumer_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_datanode_consumer_num | Количество потребителей, созданных на каждом узле данных. Каждый поток соответствует одному потребителю. |
Producer Num | Количество производителей, созданных на каждом узле данных. | sum(milvus_datanode_producer_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_datanode_producer_num | Количество потребителей, созданных на каждом узле данных. Каждому осколку в коллекции соответствует производитель дельта-канала и производитель канала timetick. |
Время синхронизации | Среднее, максимальное и минимальное количество времени эпохи, синхронизированное каждым узлом данных во всех физических темах. | avg(milvus_datanode_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) max(milvus_datanode_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) min(milvus_datanode_sync_epoch_time{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_datanode_sync_epoch_time | Время эпохи (время Unix, миллисекунды, прошедшие с 1 января 1970 года) каждой физической темы на узле данных. |
Число непромытых сегментов | Количество непромытых сегментов, созданных на каждом узле данных. | sum(milvus_datanode_unflushed_segment_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (pod, node_id) | milvus_datanode_unflushed_segment_num | Количество непромытых сегментов, созданных на каждом узле данных. |
Encode Buffer Latency | Средняя задержка и 99-й процентиль времени, затраченного на кодирование буфера каждым узлом данных за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_datanode_encode_buffer_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_datanode_encode_buffer_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_datanode_encode_buffer_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_datanode_encode_buffer_latency | Время, затрачиваемое каждым узлом данных на кодирование буфера. |
Задержка сохранения данных | Средняя задержка и 99-й процентиль времени, затраченного на запись буфера в слой хранения каждым узлом данных за последние две минуты. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_datanode_save_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_datanode_save_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_datanode_save_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_datanode_save_latency | Время, затрачиваемое каждым узлом данных на запись буфера в слой хранения. |
Частота операций промывки | Количество раз, которое каждый узел данных промывает буфер в секунду в течение последних двух минут. | sum(increase(milvus_datanode_flush_buffer_op_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status, pod, node_id) | milvus_datanode_flush_buffer_op_count | Накопленное количество раз, когда узел данных промывает буфер. |
Скорость работы автопромывки | Количество раз автопромывки буфера каждым узлом данных в секунду за последние две минуты. | sum(increase(milvus_datanode_autoflush_buffer_op_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status, pod, node_id) | milvus_datanode_autoflush_buffer_op_count | Накопленное количество раз автоматической очистки буфера узлом данных. |
Скорость запроса на промывку | Количество раз, когда каждый узел данных получает запрос на промывку буфера в секунду за последние две минуты. | sum(increase(milvus_datanode_flush_req_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status, pod, node_id) | milvus_datanode_flush_req_count | Накопленное количество раз, когда узел данных получает запрос на промывку от координатора данных. |
Латентность уплотнения | Средняя задержка и 99-й процентиль времени, затрачиваемого каждым узлом данных на выполнение задачи уплотнения в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_datanode_compaction_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_datanode_compaction_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_datanode_compaction_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_datanode_compaction_latency | Время, необходимое каждому узлу данных для выполнения задачи уплотнения. |
Индексный координатор
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Index Request Rate | Среднее количество запросов на построение индекса, полученных в секунду за последние две минуты. | sum(increase(milvus_indexcoord_indexreq_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status) | milvus_indexcoord_indexreq_count | Количество полученных запросов на построение индекса. |
Index Task Count | Количество всех задач индексирования, записанных в метаданных индекса. | sum(milvus_indexcoord_indextask_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (index_task_status) | milvus_indexcoord_indextask_count | Количество всех задач индексирования, записанных в метаданных индекса. |
Index Node Num | Количество управляемых индексных узлов. | sum(milvus_indexcoord_indexnode_num{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}) by (app_kubernetes_io_instance) | milvus_indexcoord_indexnode_num | Количество управляемых индексных узлов. |
Индексный узел
Панель | Описание панели | PromQL (язык запросов Prometheus) | Используемые метрики Milvus | Описание метрик Milvus |
---|---|---|---|---|
Index Task Rate | Среднее количество заданий на построение индекса, получаемых каждым индексным узлом в секунду в течение последних двух минут. | sum(increase(milvus_indexnode_index_task_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])/120) by (status, pod, node_id) | milvus_indexnode_index_task_count | Количество полученных заданий на построение индекса. |
Латентность поля загрузки | Средняя задержка и 99-й процентиль времени, затраченного каждым индексным узлом на загрузку данных сегментного поля каждый раз в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_indexnode_load_field_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_indexnode_load_field_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_indexnode_load_field_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_indexnode_load_field_latency | Время, затраченное индексным узлом на загрузку данных сегментного поля. |
Задержка декодирования поля | Средняя задержка и 99-й процентиль времени, использованного каждым индексным узлом для кодирования данных поля каждый раз в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_indexnode_decode_field_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_indexnode_decode_field_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_indexnode_decode_field_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_indexnode_decode_field_latency | Время, затраченное на декодирование полевых данных. |
Задержка построения индекса | Средняя задержка и 99-й процентиль времени, использованного каждым индексным узлом для построения индексов в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_indexnode_build_index_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_indexnode_build_index_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_indexnode_build_index_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_indexnode_build_index_latency | Время, затраченное на создание индексов. |
Латентность индекса кодирования | Средняя задержка и 99-й процентиль времени, использованного каждым индексным узлом для кодирования индексных файлов в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_indexnode_encode_index_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_indexnode_encode_index_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_indexnode_encode_index_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_indexnode_encode_index_latency | Время, затраченное на кодирование индексных файлов. |
Задержка сохранения индекса | Средняя задержка и 99-й процентиль времени, использованного каждым индексным узлом для сохранения индексных файлов в течение последних двух минут. | p99: histogram_quantile(0.99, sum by (le, pod, node_id) (rate(milvus_indexnode_save_index_latency_bucket{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m]))) avg: sum(increase(milvus_indexnode_save_index_latency_sum{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) / sum(increase(milvus_indexnode_save_index_latency_count{app_kubernetes_io_instance=~"$instance", app_kubernetes_io_name="$app_name", namespace="$namespace"}[2m])) by(pod, node_id) | milvus_indexnode_save_index_latency | Время, затраченное на сохранение индексных файлов. |