Datalakeへのuploadを下記を参考に進めていました。
https://sdk-spec.abeja.io/datalake/sample_tutorial.html#steps-2-upload-file-to-the-datalake-channel
この際、名前が同じファイルが既に存在する場合に、アップロードを行わないようにすることは可能でしょうか?
Datalakeへのuploadを下記を参考に進めていました。
https://sdk-spec.abeja.io/datalake/sample_tutorial.html#steps-2-upload-file-to-the-datalake-channel
この際、名前が同じファイルが既に存在する場合に、アップロードを行わないようにすることは可能でしょうか?
SDKを利用し、同一のファイル名をアップロード等実施させない場合、現状では、upload_file()のみでは、重複排除の機能はございません。そのため、アップロード処理の前にapi_client.list_channel_files()を利用し、同一ファイル名の検索を実施した後、処理を制御いただくことで実現可能となります。queryにファイル名を指定し、実行可能となります。
■サンプル
from abeja.datalake import APIClient
DATALAKE_CHANNEL_ID = 'XXXXXXXXXXX'
api_client = APIClient()
response = api_client.list_channel_files(DATALAKE_CHANNEL_ID, query="x-abeja-meta-filename:{file_name}")
■api_client.list_channel_files のReference
https://sdk-spec.abeja.io/datalake/apis/api_client.html#abeja.datalake.APIClient.list_channel_files
ご回答ありがとうございます。
ご返信いただいた方法で重複を排除しようと思います。