Browse Source

support inverted index for scalar field (#487)

* support create multiple vectors in create collection dialog

Signed-off-by: ryjiang <jiangruiyi@gmail.com>

* support create index for sparse vector

Signed-off-by: ryjiang <jiangruiyi@gmail.com>

* support create index for bf16 and f16 vector

Signed-off-by: ryjiang <jiangruiyi@gmail.com>

* hide create index action if there are multiple vectors in the collection

Signed-off-by: ryjiang <jiangruiyi@gmail.com>

* support inverted index for scalar field

Signed-off-by: ryjiang <jiangruiyi@gmail.com>

---------

Signed-off-by: ryjiang <jiangruiyi@gmail.com>
ryjiang 1 year ago
parent
commit
5c17541380

+ 2 - 0
client/src/consts/Milvus.ts

@@ -50,6 +50,8 @@ export enum INDEX_TYPES_ENUM {
   // sparse
   SPARSE_INVERTED_INDEX = 'SPARSE_INVERTED_INDEX',
   SPARSE_WAND = 'SPARSE_WAND',
+  // inverted
+  INVERTED = 'INVERTED',
 }
 
 export enum METRIC_TYPES_VALUES {

+ 6 - 4
client/src/pages/databases/collections/overview/Create.tsx

@@ -39,7 +39,6 @@ const CreateIndex = (props: {
     handleCancel,
     fieldName,
     dataType,
-    dimension,
   } = props;
 
   const { t: indexTrans } = useTranslation('index');
@@ -64,9 +63,9 @@ const CreateIndex = (props: {
       case DataTypeStringEnum.Int16:
       case DataTypeStringEnum.Int32:
       case DataTypeStringEnum.Int64:
-        return INDEX_TYPES_ENUM.SORT;
+        return INDEX_TYPES_ENUM.INVERTED;
       default:
-        return INDEX_TYPES_ENUM.SORT;
+        return INDEX_TYPES_ENUM.INVERTED;
     }
   }, [fieldType]);
 
@@ -151,7 +150,10 @@ const CreateIndex = (props: {
         return INDEX_OPTIONS_MAP[DataTypeEnum.VarChar];
 
       default:
-        return [{ label: 'STL sort', value: INDEX_TYPES_ENUM.SORT }];
+        return [
+          { label: 'INVERTED', value: INDEX_TYPES_ENUM.INVERTED },
+          { label: 'STL sort', value: INDEX_TYPES_ENUM.SORT },
+        ];
     }
   }, [fieldType]);
 

+ 2 - 1
client/src/pages/databases/collections/overview/Types.ts

@@ -19,7 +19,8 @@ export type IndexType =
   | INDEX_TYPES_ENUM.SORT
   | INDEX_TYPES_ENUM.AUTOINDEX
   | INDEX_TYPES_ENUM.SPARSE_INVERTED_INDEX
-  | INDEX_TYPES_ENUM.SPARSE_WAND;
+  | INDEX_TYPES_ENUM.SPARSE_WAND
+  | INDEX_TYPES_ENUM.INVERTED;
 
 export interface IndexManageParam {
   collection_name: string;