1818 */
1919package io .milvus .v1 ;
2020
21- import com .fasterxml .jackson .annotation .JsonProperty ;
2221import com .fasterxml .jackson .dataformat .csv .CsvMapper ;
2322import com .fasterxml .jackson .dataformat .csv .CsvSchema ;
2423import com .google .common .collect .Lists ;
2524import com .google .gson .Gson ;
2625import com .google .gson .JsonElement ;
2726import com .google .gson .JsonObject ;
28- import com .google .gson .reflect .TypeToken ;
29- import io .milvus .bulkwriter .BulkImport ;
3027import io .milvus .bulkwriter .BulkWriter ;
3128import io .milvus .bulkwriter .LocalBulkWriter ;
3229import io .milvus .bulkwriter .LocalBulkWriterParam ;
4643import io .milvus .bulkwriter .request .import_ .MilvusImportRequest ;
4744import io .milvus .bulkwriter .request .list .CloudListImportJobsRequest ;
4845import io .milvus .bulkwriter .request .list .MilvusListImportJobsRequest ;
46+ import io .milvus .bulkwriter .restful .BulkImportUtils ;
4947import io .milvus .client .MilvusClient ;
5048import io .milvus .client .MilvusServiceClient ;
5149import io .milvus .common .utils .ExceptionUtils ;
6967import io .milvus .param .index .CreateIndexParam ;
7068import io .milvus .response .GetCollStatResponseWrapper ;
7169import io .milvus .response .QueryResultsWrapper ;
70+ import io .milvus .v2 .bulkwriter .CsvDataObject ;
7271import org .apache .avro .generic .GenericData ;
7372import org .apache .http .util .Asserts ;
7473
7574import java .io .File ;
7675import java .io .IOException ;
7776import java .net .URL ;
78- import java .nio .ByteBuffer ;
7977import java .util .ArrayList ;
8078import java .util .Iterator ;
8179import java .util .List ;
@@ -491,29 +489,6 @@ private static void readCsvSampleData(String filePath, BulkWriter writer) throws
491489 }
492490 }
493491
494- private static class CsvDataObject {
495- @ JsonProperty
496- private String vector ;
497- @ JsonProperty
498- private String path ;
499- @ JsonProperty
500- private String label ;
501-
502- public String getVector () {
503- return vector ;
504- }
505- public String getPath () {
506- return path ;
507- }
508- public String getLabel () {
509- return label ;
510- }
511- public List <Float > toFloatArray () {
512- return GSON_INSTANCE .fromJson (vector , new TypeToken <List <Float >>() {
513- }.getType ());
514- }
515- }
516-
517492 private void callBulkInsert (CollectionSchemaParam collectionSchema , List <List <String >> batchFiles ) throws InterruptedException {
518493 createCollection (ALL_TYPES_COLLECTION_NAME , collectionSchema , true );
519494
@@ -524,7 +499,7 @@ private void callBulkInsert(CollectionSchemaParam collectionSchema, List<List<St
524499 .partitionName ("" )
525500 .files (batchFiles )
526501 .build ();
527- String bulkImportResult = BulkImport .bulkImport (url , milvusImportRequest );
502+ String bulkImportResult = BulkImportUtils .bulkImport (url , milvusImportRequest );
528503 System .out .println (bulkImportResult );
529504
530505 JsonObject bulkImportObject = convertJsonObject (bulkImportResult );
@@ -533,7 +508,7 @@ private void callBulkInsert(CollectionSchemaParam collectionSchema, List<List<St
533508
534509 System .out .println ("\n ===================== listBulkInsertJobs() ====================" );
535510 MilvusListImportJobsRequest listImportJobsRequest = MilvusListImportJobsRequest .builder ().collectionName (ALL_TYPES_COLLECTION_NAME ).build ();
536- String listImportJobsResult = BulkImport .listImportJobs (url , listImportJobsRequest );
511+ String listImportJobsResult = BulkImportUtils .listImportJobs (url , listImportJobsRequest );
537512 System .out .println (listImportJobsResult );
538513 while (true ) {
539514 System .out .println ("Wait 5 second to check bulkInsert job state..." );
@@ -543,7 +518,7 @@ private void callBulkInsert(CollectionSchemaParam collectionSchema, List<List<St
543518 MilvusDescribeImportRequest request = MilvusDescribeImportRequest .builder ()
544519 .jobId (jobId )
545520 .build ();
546- String getImportProgressResult = BulkImport .getImportProgress (url , request );
521+ String getImportProgressResult = BulkImportUtils .getImportProgress (url , request );
547522 System .out .println (getImportProgressResult );
548523
549524 JsonObject getImportProgressObject = convertJsonObject (getImportProgressResult );
@@ -577,23 +552,23 @@ private void callCloudImport(List<List<String>> batchFiles, String collectionNam
577552 .clusterId (CloudImportConsts .CLUSTER_ID ).collectionName (collectionName ).partitionName (partitionName )
578553 .apiKey (CloudImportConsts .API_KEY )
579554 .build ();
580- String bulkImportResult = BulkImport .bulkImport (CloudImportConsts .CLOUD_ENDPOINT , bulkImportRequest );
555+ String bulkImportResult = BulkImportUtils .bulkImport (CloudImportConsts .CLOUD_ENDPOINT , bulkImportRequest );
581556 JsonObject bulkImportObject = convertJsonObject (bulkImportResult );
582557
583558 String jobId = bulkImportObject .getAsJsonObject ("data" ).get ("jobId" ).getAsString ();
584559 System .out .println ("Create a cloudImport job, job id: " + jobId );
585560
586561 System .out .println ("\n ===================== call cloudListImportJobs ====================" );
587562 CloudListImportJobsRequest listImportJobsRequest = CloudListImportJobsRequest .builder ().clusterId (CloudImportConsts .CLUSTER_ID ).currentPage (1 ).pageSize (10 ).apiKey (CloudImportConsts .API_KEY ).build ();
588- String listImportJobsResult = BulkImport .listImportJobs (CloudImportConsts .CLOUD_ENDPOINT , listImportJobsRequest );
563+ String listImportJobsResult = BulkImportUtils .listImportJobs (CloudImportConsts .CLOUD_ENDPOINT , listImportJobsRequest );
589564 System .out .println (listImportJobsResult );
590565 while (true ) {
591566 System .out .println ("Wait 5 second to check bulkInsert job state..." );
592567 TimeUnit .SECONDS .sleep (5 );
593568
594569 System .out .println ("\n ===================== call cloudGetProgress ====================" );
595570 CloudDescribeImportRequest request = CloudDescribeImportRequest .builder ().clusterId (CloudImportConsts .CLUSTER_ID ).jobId (jobId ).apiKey (CloudImportConsts .API_KEY ).build ();
596- String getImportProgressResult = BulkImport .getImportProgress (CloudImportConsts .CLOUD_ENDPOINT , request );
571+ String getImportProgressResult = BulkImportUtils .getImportProgress (CloudImportConsts .CLOUD_ENDPOINT , request );
597572 JsonObject getImportProgressObject = convertJsonObject (getImportProgressResult );
598573 String importProgressState = getImportProgressObject .getAsJsonObject ("data" ).get ("state" ).getAsString ();
599574 String progress = getImportProgressObject .getAsJsonObject ("data" ).get ("progress" ).getAsString ();
@@ -740,20 +715,20 @@ private static void exampleCloudImport() {
740715 .clusterId (CloudImportConsts .CLUSTER_ID ).collectionName (CloudImportConsts .COLLECTION_NAME ).partitionName (CloudImportConsts .PARTITION_NAME )
741716 .apiKey (CloudImportConsts .API_KEY )
742717 .build ();
743- String bulkImportResult = BulkImport .bulkImport (CloudImportConsts .CLOUD_ENDPOINT , request );
718+ String bulkImportResult = BulkImportUtils .bulkImport (CloudImportConsts .CLOUD_ENDPOINT , request );
744719 System .out .println (bulkImportResult );
745720
746721 System .out .println ("\n ===================== get import job progress ====================" );
747722
748723 JsonObject bulkImportObject = convertJsonObject (bulkImportResult );
749724 String jobId = bulkImportObject .getAsJsonObject ("data" ).get ("jobId" ).getAsString ();
750725 CloudDescribeImportRequest getImportProgressRequest = CloudDescribeImportRequest .builder ().clusterId (CloudImportConsts .CLUSTER_ID ).jobId (jobId ).apiKey (CloudImportConsts .API_KEY ).build ();
751- String getImportProgressResult = BulkImport .getImportProgress (CloudImportConsts .CLOUD_ENDPOINT , getImportProgressRequest );
726+ String getImportProgressResult = BulkImportUtils .getImportProgress (CloudImportConsts .CLOUD_ENDPOINT , getImportProgressRequest );
752727 System .out .println (getImportProgressResult );
753728
754729 System .out .println ("\n ===================== list import jobs ====================" );
755730 CloudListImportJobsRequest listImportJobsRequest = CloudListImportJobsRequest .builder ().clusterId (CloudImportConsts .CLUSTER_ID ).currentPage (1 ).pageSize (10 ).apiKey (CloudImportConsts .API_KEY ).build ();
756- String listImportJobsResult = BulkImport .listImportJobs (CloudImportConsts .CLOUD_ENDPOINT , listImportJobsRequest );
731+ String listImportJobsResult = BulkImportUtils .listImportJobs (CloudImportConsts .CLOUD_ENDPOINT , listImportJobsRequest );
757732 System .out .println (listImportJobsResult );
758733 }
759734
0 commit comments