🚀 Попробуйте Zilliz Cloud, полностью управляемый Milvus, бесплатно — ощутите 10-кратное увеличение производительности! Попробовать сейчас>

milvus-logo
LFAI
  • Home
  • Blog
  • Управление метаданными Milvus (2) Поля в таблице метаданных

Управление метаданными Milvus (2) Поля в таблице метаданных

  • Engineering
December 27, 2019
Yihua Mo

Поля в таблице метаданных

Автор: Yihua Mo

Дата: 2019-12-27

В прошлом блоге мы рассказали о том, как просматривать метаданные с помощью MySQL или SQLite. В этой статье мы хотим подробно рассказать о полях в таблицах метаданных.

Поля в таблице "Tables"

Возьмем для примера SQLite. Следующий результат получен в версии 0.5.0. В версии 0.6.0 добавлены некоторые поля, которые будут представлены позже. В Tables есть строка, определяющая 512-мерную векторную таблицу с именем table_1. Когда таблица создана, index_file_size - 1024 МБ, engine_type - 1 (FLAT), nlist - 16384, metric_type - 1 (евклидово расстояние L2). id - уникальный идентификатор таблицы. state - состояние таблицы, 0 означает нормальное состояние. created_on - время создания. flag - флаг, зарезервированный для внутреннего использования.

tables таблицы

В следующей таблице приведены типы полей и их описание в таблице Tables.

Имя поляТип данныхОписание
idint64Уникальный идентификатор векторной таблицы. id автоматически увеличивается.
table_idstringИмя векторной таблицы. table_id должно быть определено пользователем и соответствовать рекомендациям Linux по именам файлов.
stateint32Состояние векторной таблицы. 0 означает нормальное состояние, 1 - удалена (мягкое удаление).
dimensionint16Размерность вектора векторной таблицы. Должна быть определена пользователем.
created_onint64Количество миллисекунд с 1 января 1970 года до момента создания таблицы.
flagint64Флаг для внутреннего использования, например, является ли идентификатор вектора определенным пользователем. По умолчанию 0.
index_file_sizeint64Если размер файла данных достигает index_file_size, файл не объединяется и используется для построения индексов. По умолчанию - 1024 (МБ).
engine_typeint32Тип индекса для построения векторной таблицы. По умолчанию 0, что означает недействительный индекс. 1 - FLAT. 2 - IVFLAT. 3 - IVFSQ8. 4 - NSG. 5 - IVFSQ8H.
nlistint32Количество кластеров, на которые делятся векторы в каждом файле данных при построении индекса. По умолчанию - 16384.
metric_typeint32Метод вычисления расстояния между векторами. 1 задает евклидово расстояние (L1), а 2 - внутреннее произведение.

В 0.6.0 включено разделение таблиц с несколькими новыми полями, включая owner_tablepartition_tag и version. Векторная таблица table_1 имеет раздел table_1_p1, который также является векторной таблицей. partition_name соответствует table_id. Поля в таблице раздела наследуются от таблицы-владельца, при этом поле owner table указывает имя таблицы-владельца, а поле partition_tag - тег раздела.

tables_new таблицы_новые

В следующей таблице представлены новые поля в версии 0.6.0:

Имя поляТип данныхОписание
owner_tablestringРодительская таблица раздела.
partition_tagstringМетка раздела. Не должна быть пустой строкой.
versionstringВерсия Milvus.

Поля в таблице "TableFiles"

Следующий пример содержит два файла, которые оба принадлежат векторной таблице table_1. Тип индекса (engine_type) первого файла - 1 (FLAT); статус файла (file_type) - 7 (резервная копия исходного файла); file_size - 411200113 байт; количество строк вектора - 200 000. Тип индекса второго файла - 2 (IVFLAT); статус файла - 3 (индексный файл). Второй файл на самом деле является индексом первого файла. Более подробную информацию мы представим в следующих статьях.

tablefiles tablefiles

В следующей таблице приведены поля и описания TableFiles:

Имя поляТип данныхОписание
idint64Уникальный идентификатор векторной таблицы. id автоматически увеличивается.
table_idstringИмя векторной таблицы.
engine_typeint32Тип индекса для построения векторной таблицы. По умолчанию 0, что означает недействительный индекс. 1 - FLAT. 2 - IVFLAT. 3 - IVFSQ8. 4 - NSG. 5 - IVFSQ8H.
file_idстрокаИмя файла, сгенерированное по времени создания файла. Равняется 1000, умноженному на количество миллисекунд, прошедших с 1 января 1970 года до момента создания таблицы.
file_typeint32Статус файла. 0 указывает на только что созданный файл необработанных векторных данных. 1 указывает на файл необработанных векторных данных. 2 указывает, что для файла будет построен индекс. 3 указывает, что файл является индексным файлом. 4 указывает, что файл будет удален (мягкое удаление). 5 указывает, что файл создается заново и используется для хранения комбинированных данных. 6 указывает, что файл является вновь созданным и используется для хранения индексных данных. 7 - статус резервного копирования файла необработанных векторных данных.
file_sizeint64Размер файла в байтах.
row_countint64Количество векторов в файле.
updated_timeint64Временная метка для последнего времени обновления, которая указывает количество миллисекунд с 1 января 1970 года до момента создания таблицы.
created_onint64Число миллисекунд с 1 января 1970 года до момента создания таблицы.
dateint32Дата создания таблицы. Этот параметр остался здесь по историческим причинам и будет удален в будущих версиях.

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started

Like the article? Spread the word

Продолжить чтение