🚀 Testen Sie Zilliz Cloud, die vollständig verwaltete Milvus, kostenlos – erleben Sie 10x schnellere Leistung! Jetzt testen>>

milvus-logo
LFAI
  • Home
  • Blog
  • Milvus Metadata Management (2) Felder in der Metadatentabelle

Milvus Metadata Management (2) Felder in der Metadatentabelle

  • Engineering
December 27, 2019
Yihua Mo

Felder in der Metadatentabelle

Autor: Yihua Mo

Datum: 2019-12-27

Im letzten Blog haben wir erwähnt, wie Sie Ihre Metadaten mit MySQL oder SQLite anzeigen können. In diesem Artikel sollen vor allem die Felder in den Metadaten-Tabellen im Detail vorgestellt werden.

Felder in der Tabelle "Tables"

Nehmen Sie SQLite als Beispiel. Das folgende Ergebnis stammt aus 0.5.0. In 0.6.0 wurden einige Felder hinzugefügt, die später vorgestellt werden. Es gibt eine Zeile in Tables, die eine 512-dimensionale Vektortabelle mit dem Namen table_1 angibt. Wenn die Tabelle erstellt wird, ist index_file_size 1024 MB, engine_type ist 1 (FLAT), nlist ist 16384, metric_type ist 1 (Euklidischer Abstand L2). id ist der eindeutige Bezeichner der Tabelle. state ist der Zustand der Tabelle, wobei 0 einen normalen Zustand anzeigt. created_on ist die Erstellungszeit. flag ist das für interne Zwecke reservierte Flag.

tables Tabellen

Die folgende Tabelle zeigt die Feldtypen und Beschreibungen der Felder in Tables.

FeldnameDatentypBeschreibung
idint64Eindeutiger Bezeichner der Vektortabelle. id wird automatisch inkrementiert.
table_idstringName der Vektortabelle. table_id muss benutzerdefiniert sein und den Linux-Richtlinien für Dateinamen entsprechen.
stateint32Zustand der Vektortabelle. 0 steht für normal und 1 steht für gelöscht (soft delete).
dimensionint16Vektordimension der Vektortabelle. Muss benutzerdefiniert sein.
created_onint64Anzahl der Millisekunden vom 1. Januar 1970 bis zum Zeitpunkt der Erstellung der Tabelle.
flagint64Flag zur internen Verwendung, z. B. ob die Vektor-ID benutzerdefiniert ist. Die Voreinstellung ist 0.
index_file_sizeint64Wenn die Größe einer Datendatei index_file_size erreicht, wird die Datei nicht kombiniert und zum Aufbau von Indizes verwendet. Die Vorgabe ist 1024 (MB).
engine_typeint32Typ des zu erstellenden Index für eine Vektortabelle. Die Vorgabe ist 0, was einen ungültigen Index angibt. 1 spezifiziert FLAT. 2 spezifiziert IVFLAT. 3 spezifiziert IVFSQ8. 4 gibt NSG an. 5 legt IVFSQ8H fest.
nlistint32Anzahl der Cluster, in die die Vektoren in jeder Datendatei unterteilt werden, wenn der Index erstellt wird. Die Vorgabe ist 16384.
metric_typeint32Methode zur Berechnung des Vektorabstands. 1 spezifiziert den euklidischen Abstand (L1) und 2 spezifiziert das innere Produkt.

Die Tabellenpartitionierung ist in 0.6.0 mit einigen neuen Feldern aktiviert, darunter owner_tablepartition_tag und version. Eine Vektortabelle, table_1, hat eine Partition namens table_1_p1, die ebenfalls eine Vektortabelle ist. partition_name entspricht table_id. Felder in einer Partitionstabelle werden von der Eigentümertabelle geerbt, wobei das Feld owner table den Namen der Eigentümertabelle und das Feld partition_tag den Tag der Partition angibt.

tables_new tabellen_neu

Die folgende Tabelle zeigt die neuen Felder in 0.6.0:

FeldnameDatentypBeschreibung
owner_tablestringÜbergeordnete Tabelle der Partition.
partition_tagstringTag der Partition. Darf keine leere Zeichenkette sein.
versionstringMilvus-Version.

Felder in der Tabelle "TableFiles"

Das folgende Beispiel enthält zwei Dateien, die beide zur Vektortabelle table_1 gehören. Der Indextyp (engine_type) der ersten Datei ist 1 (FLAT); der Dateistatus (file_type) ist 7 (Backup der Originaldatei); file_size ist 411200113 bytes; die Anzahl der Vektorzeilen ist 200.000. Der Indextyp der zweiten Datei ist 2 (IVFLAT); der Dateistatus ist 3 (Indexdatei). Die zweite Datei ist eigentlich der Index der ersten Datei. Weitere Informationen werden wir in den nächsten Artikeln vorstellen.

tablefiles tablefiles

Die folgende Tabelle zeigt die Felder und Beschreibungen von TableFiles:

FeldnameDatentypBeschreibung
idint64Eindeutiger Bezeichner einer Vektortabelle. id wird automatisch inkrementiert.
table_idstringName der Vektortabelle.
engine_typeint32Typ des zu erstellenden Index für eine Vektortabelle. Der Standardwert ist 0, was einen ungültigen Index angibt. 1 spezifiziert FLAT. 2 spezifiziert IVFLAT. 3 spezifiziert IVFSQ8. 4 gibt NSG an. 5 legt IVFSQ8H fest.
file_idZeichenfolgeDateiname, der aus der Erstellungszeit der Datei generiert wird. Entspricht 1000 multipliziert mit der Anzahl der Millisekunden vom 1. Januar 1970 bis zum Zeitpunkt der Erstellung der Tabelle.
file_typeint32Dateistatus. 0 gibt eine neu erzeugte Rohvektordatei an. 1 gibt eine rohe Vektordatendatei an. 2 gibt an, dass ein Index für die Datei erstellt wird. 3 gibt an, dass die Datei eine Indexdatei ist. 4 gibt an, dass die Datei gelöscht wird (soft delete). 5 gibt an, dass die Datei neu erzeugt wird und zur Speicherung von Kombinationsdaten dient. 6 gibt an, dass es sich um eine neu erzeugte Datei handelt, die zur Speicherung von Indexdaten verwendet wird. 7 gibt den Sicherungsstatus der Rohvektordatei an.
file_sizeint64Dateigröße in Bytes.
row_countint64Anzahl der Vektoren in einer Datei.
updated_timeint64Zeitstempel für den letzten Aktualisierungszeitpunkt, der die Anzahl der Millisekunden vom 1. Januar 1970 bis zum Zeitpunkt der Erstellung der Tabelle angibt.
created_onint64Anzahl der Millisekunden vom 1. Januar 1970 bis zum Zeitpunkt der Erstellung der Tabelle.
dateint32Datum, an dem die Tabelle erstellt wurde. Sie ist aus historischen Gründen noch vorhanden und wird in zukünftigen Versionen entfernt.

Try Managed Milvus for Free

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

Get Started

Like the article? Spread the word

Weiterlesen