Class MilvusClientV2


  • public class MilvusClientV2
    extends Object
    • Constructor Detail

      • MilvusClientV2

        public MilvusClientV2​(ConnectConfig connectConfig)
        Creates a Milvus client instance.
        Parameters:
        connectConfig - Milvus server connection configuration
    • Method Detail

      • retryConfig

        public void retryConfig​(RetryConfig retryConfig)
      • currentUsedDatabase

        public String currentUsedDatabase()
      • createDatabase

        public void createDatabase​(CreateDatabaseReq request)
        Creates a database in Milvus.
        Parameters:
        request - create database request
      • dropDatabase

        public void dropDatabase​(DropDatabaseReq request)
        Drops a database. Note that this method drops all data in the database.
        Parameters:
        request - drop database request
      • listDatabases

        public ListDatabasesResp listDatabases()
        List all databases.
        Returns:
        List of String database names
      • alterDatabase

        @Deprecated
        public void alterDatabase​(AlterDatabaseReq request)
        Deprecated.
        Alter database with key value pair. (Available from Milvus v2.4.4) Deprecated, replaced by alterDatabaseProperties from SDK v2.5.3, to keep consistence with other SDKs
        Parameters:
        request - alter database request
      • alterDatabaseProperties

        public void alterDatabaseProperties​(AlterDatabasePropertiesReq request)
        Alter a database's properties.
        Parameters:
        request - alter database properties request
      • dropDatabaseProperties

        public void dropDatabaseProperties​(DropDatabasePropertiesReq request)
        drop a database's properties.
        Parameters:
        request - alter database properties request
      • describeDatabase

        public DescribeDatabaseResp describeDatabase​(DescribeDatabaseReq request)
        Show detail of database base, such as replica number and resource groups. (Available from Milvus v2.4.4)
        Parameters:
        request - describe database request
        Returns:
        DescribeDatabaseResp
      • createCollection

        public void createCollection​(CreateCollectionReq request)
        Creates a collection in Milvus.
        Parameters:
        request - create collection request
      • createSchema

        @Deprecated
        public CreateCollectionReq.CollectionSchema createSchema()
        Deprecated.
        Creates a collection schema. This method is deprecated from v2.5.9, replaced by CreateSchema()
        Returns:
        CreateCollectionReq.CollectionSchema
      • listCollections

        public ListCollectionsResp listCollections()
        List milvus collections in the current database of the connection
        Returns:
        List of String collection names
      • listCollectionsV2

        public ListCollectionsResp listCollectionsV2​(ListCollectionsReq request)
        List milvus collections, can specify the target database Note: the old API listCollections() doesn't have a ListCollectionsReq argument, we have to create this new V2 API to avoid incompatible issue.
        Returns:
        List of String collection names
      • dropCollection

        public void dropCollection​(DropCollectionReq request)
        Drops a collection in Milvus.
        Parameters:
        request - drop collection request
      • alterCollection

        @Deprecated
        public void alterCollection​(AlterCollectionReq request)
        Deprecated.
        Alter a collection in Milvus. Deprecated, replaced by alterCollectionProperties from SDK v2.5.3, to keep consistence with other SDKs
        Parameters:
        request - alter collection request
      • alterCollectionProperties

        public void alterCollectionProperties​(AlterCollectionPropertiesReq request)
        Alter a collection's properties.
        Parameters:
        request - alter collection properties request
      • addCollectionField

        public void addCollectionField​(AddCollectionFieldReq request)
        Add a new field to collection.
        Parameters:
        request - add new field request
      • alterCollectionField

        public void alterCollectionField​(AlterCollectionFieldReq request)
        Alter a field's properties.
        Parameters:
        request - alter field properties request
      • dropCollectionProperties

        public void dropCollectionProperties​(DropCollectionPropertiesReq request)
        drop a collection's properties.
        Parameters:
        request - drop collection properties request
      • dropCollectionFieldProperties

        public void dropCollectionFieldProperties​(DropCollectionFieldPropertiesReq request)
        drop a field's properties.
        Parameters:
        request - drop field properties request
      • hasCollection

        public Boolean hasCollection​(HasCollectionReq request)
        Checks whether a collection exists in Milvus.
        Parameters:
        request - has collection request
        Returns:
        Boolean
      • describeCollection

        public DescribeCollectionResp describeCollection​(DescribeCollectionReq request)
        Gets the collection info in Milvus.
        Parameters:
        request - describe collection request
        Returns:
        DescribeCollectionResp
      • getCollectionStats

        public GetCollectionStatsResp getCollectionStats​(GetCollectionStatsReq request)
        get collection stats for a collection in Milvus.
        Parameters:
        request - get collection stats request
        Returns:
        GetCollectionStatsResp
      • renameCollection

        public void renameCollection​(RenameCollectionReq request)
        rename collection in a collection in Milvus.
        Parameters:
        request - rename collection request
      • loadCollection

        public void loadCollection​(LoadCollectionReq request)
        Loads a collection into memory in Milvus.
        Parameters:
        request - load collection request
      • refreshLoad

        public void refreshLoad​(RefreshLoadReq request)
        Refresh loads a collection. Mainly used when there are new segments generated by bulkinsert request. Force the new segments to be loaded into memory. Note: this interface will ignore the LoadCollectionReq.refresh flag
        Parameters:
        request - refresh load collection request
      • releaseCollection

        public void releaseCollection​(ReleaseCollectionReq request)
        Releases a collection from memory in Milvus.
        Parameters:
        request - release collection request
      • getLoadState

        public Boolean getLoadState​(GetLoadStateReq request)
        Checks whether a collection is loaded in Milvus.
        Parameters:
        request - get load state request
        Returns:
        Boolean
      • describeReplicas

        public DescribeReplicasResp describeReplicas​(DescribeReplicasReq request)
        Get information of all replicas from a collection.
        Parameters:
        request - describe replicas request
      • addCollectionFunction

        public void addCollectionFunction​(AddCollectionFunctionReq request)
        Add a function to collection.
        Parameters:
        request - add function request
      • alterCollectionFunction

        public void alterCollectionFunction​(AlterCollectionFunctionReq request)
        Alter a function of collection.
        Parameters:
        request - alter function request
      • dropCollectionFunction

        public void dropCollectionFunction​(DropCollectionFunctionReq request)
        Drop a function of collection.
        Parameters:
        request - drop function request
      • createIndex

        public void createIndex​(CreateIndexReq request)
        Creates an index for a specified field in a collection in Milvus.
        Parameters:
        request - create index request
      • dropIndex

        public void dropIndex​(DropIndexReq request)
        Drops an index for a specified field in a collection in Milvus.
        Parameters:
        request - drop index request
      • alterIndex

        @Deprecated
        public void alterIndex​(AlterIndexReq request)
        Deprecated.
        Alter an index in Milvus. Deprecated, replaced by alterIndexProperties from SDK v2.5.3, to keep consistence with other SDKs
        Parameters:
        request - alter index request
      • alterIndexProperties

        public void alterIndexProperties​(AlterIndexPropertiesReq request)
        Alter an index's properties.
        Parameters:
        request - alter index request
      • dropIndexProperties

        public void dropIndexProperties​(DropIndexPropertiesReq request)
        drop an index's properties.
        Parameters:
        request - drop index properties request
      • describeIndex

        public DescribeIndexResp describeIndex​(DescribeIndexReq request)
        Checks whether an index exists for a specified field in a collection in Milvus.
        Parameters:
        request - describe index request
        Returns:
        DescribeIndexResp
      • listIndexes

        public List<String> listIndexes​(ListIndexesReq request)
        Lists all indexes in a collection in Milvus.
        Parameters:
        request - list indexes request
        Returns:
        List of String names of the indexes
      • insert

        public InsertResp insert​(InsertReq request)
        Inserts vectors into a collection in Milvus.
        Parameters:
        request - insert request
        Returns:
        InsertResp
      • upsert

        public UpsertResp upsert​(UpsertReq request)
        Upsert vectors into a collection in Milvus.
        Parameters:
        request - upsert request
        Returns:
        UpsertResp
      • delete

        public DeleteResp delete​(DeleteReq request)
        Deletes vectors in a collection in Milvus.
        Parameters:
        request - delete request
        Returns:
        DeleteResp
      • get

        public GetResp get​(GetReq request)
        Gets vectors in a collection in Milvus.
        Parameters:
        request - get request
        Returns:
        GetResp
      • query

        public QueryResp query​(QueryReq request)
        Queries vectors in a collection in Milvus.
        Parameters:
        request - query request
        Returns:
        QueryResp
      • search

        public SearchResp search​(SearchReq request)
        Searches vectors in a collection in Milvus.
        Parameters:
        request - search request
        Returns:
        SearchResp
      • hybridSearch

        public SearchResp hybridSearch​(HybridSearchReq request)
        Conducts multi vector similarity search with a ranker for rearrangement.
        Parameters:
        request - search request
        Returns:
        SearchResp
      • queryIterator

        public QueryIterator queryIterator​(QueryIteratorReq request)
        Get queryIterator based on scalar field(s) filtered by boolean expression. Note that the order of the returned entities cannot be guaranteed.
        Parameters:
        request - query iterator request
        Returns:
        QueryIterator
      • searchIterator

        public SearchIterator searchIterator​(SearchIteratorReq request)
        Get searchIterator based on a vector field. Use expression to do filtering before search.
        Parameters:
        request - search iterator request
        Returns:
        SearchIterator
      • searchIteratorV2

        public SearchIteratorV2 searchIteratorV2​(SearchIteratorReqV2 request)
        Get searchIteratorV2 based on a vector field. Use expression to do filtering before search.
        Parameters:
        request - search iterator request V2
        Returns:
        SearchIteratorV2
      • runAnalyzer

        public RunAnalyzerResp runAnalyzer​(RunAnalyzerReq request)
        Run analyzer. Return result tokens of analysis. Milvus server supports this interface from v2.5.11
        Parameters:
        request - run analyzer request
        Returns:
        RunAnalyzerResp
      • createPartition

        public void createPartition​(CreatePartitionReq request)
        Creates a partition in a collection in Milvus.
        Parameters:
        request - create partition request
      • dropPartition

        public void dropPartition​(DropPartitionReq request)
        Drops a partition in a collection in Milvus.
        Parameters:
        request - drop partition request
      • hasPartition

        public Boolean hasPartition​(HasPartitionReq request)
        Checks whether a partition exists in a collection in Milvus.
        Parameters:
        request - has partition request
        Returns:
        Boolean
      • listPartitions

        public List<String> listPartitions​(ListPartitionsReq request)
        Lists all partitions in a collection in Milvus.
        Parameters:
        request - list partitions request
        Returns:
        List of String partition names
      • getPartitionStats

        public GetPartitionStatsResp getPartitionStats​(GetPartitionStatsReq request)
        get a partition stats in Milvus.
        Parameters:
        request - get partition stats request
        Returns:
        GetPartitionStatsResp
      • loadPartitions

        public void loadPartitions​(LoadPartitionsReq request)
        Loads partitions in a collection in Milvus.
        Parameters:
        request - load partitions request
      • releasePartitions

        public void releasePartitions​(ReleasePartitionsReq request)
        Releases partitions in a collection in Milvus.
        Parameters:
        request - release partitions request
      • listUsers

        public List<String> listUsers()
        list users
        Returns:
        List of String usernames
      • describeUser

        public DescribeUserResp describeUser​(DescribeUserReq request)
        describe user
        Parameters:
        request - describe user request
        Returns:
        DescribeUserResp
      • createUser

        public void createUser​(CreateUserReq request)
        create user
        Parameters:
        request - create user request
      • updatePassword

        public void updatePassword​(UpdatePasswordReq request)
        change password
        Parameters:
        request - change password request
      • dropUser

        public void dropUser​(DropUserReq request)
        drop user
        Parameters:
        request - drop user request
      • listRoles

        public List<String> listRoles()
        list roles
        Returns:
        List of String role names
      • describeRole

        public DescribeRoleResp describeRole​(DescribeRoleReq request)
        describe role
        Parameters:
        request - describe role request
        Returns:
        DescribeRoleResp
      • createRole

        public void createRole​(CreateRoleReq request)
        create role
        Parameters:
        request - create role request
      • dropRole

        public void dropRole​(DropRoleReq request)
        drop role
        Parameters:
        request - drop role request
      • grantPrivilege

        public void grantPrivilege​(GrantPrivilegeReq request)
        grant privilege
        Parameters:
        request - grant privilege request
      • revokePrivilege

        public void revokePrivilege​(RevokePrivilegeReq request)
        revoke privilege
        Parameters:
        request - revoke privilege request
      • grantRole

        public void grantRole​(GrantRoleReq request)
        grant role
        Parameters:
        request - grant role request
      • revokeRole

        public void revokeRole​(RevokeRoleReq request)
        revoke role
        Parameters:
        request - revoke role request
      • transferNode

        public void transferNode​(TransferNodeReq request)
        Transfer query nodes from source resource group to target resource_group.
        Parameters:
        request - TransferNodeReq
      • transferReplica

        public void transferReplica​(TransferReplicaReq request)
        Transfer a replica from source resource group to target resource_group.
        Parameters:
        request - TransferReplicaReq
      • createAlias

        public void createAlias​(CreateAliasReq request)
        create aliases
        Parameters:
        request - create alias request
      • dropAlias

        public void dropAlias​(DropAliasReq request)
        drop aliases
        Parameters:
        request - drop alias request
      • alterAlias

        public void alterAlias​(AlterAliasReq request)
        alter aliases
        Parameters:
        request - alter alias request
      • listAliases

        public ListAliasResp listAliases​(ListAliasesReq request)
        list aliases
        Parameters:
        request - list aliases request
        Returns:
        List of String alias names
      • describeAlias

        public DescribeAliasResp describeAlias​(DescribeAliasReq request)
        describe aliases
        Parameters:
        request - describe alias request
        Returns:
        DescribeAliasResp
      • flush

        public void flush​(FlushReq request)
        trigger a flush action in server side
        Parameters:
        request - flush request
      • getPersistentSegmentInfo

        public GetPersistentSegmentInfoResp getPersistentSegmentInfo​(GetPersistentSegmentInfoReq request)
        Gets the information of persistent segments from data node, including row count, persistence state(growing or flushed), etc.
        Parameters:
        request - get request
        Returns:
        GetPersistentSegmentInfoResp
      • getQuerySegmentInfo

        public GetQuerySegmentInfoResp getQuerySegmentInfo​(GetQuerySegmentInfoReq request)
        Gets the query information of segments in a collection from query node, including row count, memory usage size, index name, etc.
        Parameters:
        request - get request
        Returns:
        GetQuerySegmentInfoResp
      • compact

        public CompactResp compact​(CompactReq request)
        trigger an asynchronous compaction in server side
        Parameters:
        request - compact request
        Returns:
        CompactResp
      • getCompactionState

        public GetCompactionStateResp getCompactionState​(GetCompactionStateReq request)
        get a compact task state by its ID
        Parameters:
        request - get compact state request
        Returns:
        GetCompactStateResp
      • getCompactionPlans

        public GetCompactionPlansResp getCompactionPlans​(GetCompactionPlansReq request)
        get plans of a compact task by its ID
        Parameters:
        request - get compact plans request
        Returns:
        GetCompactPlansResp
      • getServerVersion

        public String getServerVersion()
        Get server version
        Returns:
        String
      • checkHealth

        public CheckHealthResp checkHealth()
        Check server health
        Returns:
        CheckHealthResp
      • close

        public void close​(long maxWaitSeconds)
                   throws InterruptedException
        Disconnects from a Milvus server with configurable timeout
        Parameters:
        maxWaitSeconds - max wait seconds
        Throws:
        InterruptedException - throws InterruptedException if the client failed to close connection
      • close

        public void close()
        Disconnects from a Milvus server with timeout of 1 second
      • clientIsReady

        public boolean clientIsReady()