私の理解に基づいて、blobのファイル拡張の概念はありません。ファイル拡張子が便利な場所は、ローカルコンピュータ上でこれらのファイルをダウンロードするときです。ファイル拡張子に基づいて、ローカルコンピュータはこれらのファイルを開くために使用するアプリケーションを決定することができます。
私はADF
我々はそれを行うためにAzureのデータファクトリーカスタムアクティビティを使用することができますすることができて、これを達成することができますどのような方法があります。私たちは自分で論理を実装することができます。カスタムアクティビティの使用方法の詳細については、tutorialsを参照してください。
また、Azure WebJobを使用して、時間トリガーでそれを行うことができます。
Azure Data Factoryが唯一の選択肢であれば、ロジックでコピーBLOBを実装できます。以下は私のデモコードです。私は私の側でそれをテストした、それは正常に動作します
CloudStorageAccount storageAccountSource = CloudStorageAccount.Parse("connection string");
CloudStorageAccount storageAccountDest = CloudStorageAccount.Parse("connection string");
// Create the blob client.
CloudBlobClient blobClientSource = storageAccountSource.CreateCloudBlobClient();
CloudBlobClient blobClientDest = storageAccountDest.CreateCloudBlobClient();
CloudBlobContainer containerSource = blobClientSource.GetContainerReference("test");
CloudBlobContainer containerDest = blobClientDest.GetContainerReference("test");
containerDest.CreateIfNotExists();
SharedAccessBlobPolicy sharedPolicy = new SharedAccessBlobPolicy()
{
SharedAccessExpiryTime = DateTime.UtcNow.AddHours(24),
Permissions = SharedAccessBlobPermissions.Read | SharedAccessBlobPermissions.List |
SharedAccessBlobPermissions.Write | SharedAccessBlobPermissions.Create | SharedAccessBlobPermissions.Delete
};
// Get the container's existing permissions.
BlobContainerPermissions permissions = containerSource.GetPermissions();
permissions.SharedAccessPolicies.Add("policy", sharedPolicy);
containerSource.SetPermissionsAsync(permissions);
var blobToken = containerSource.GetSharedAccessSignature(sharedPolicy);
foreach (IListBlobItem item in containerSource.ListBlobs())
{
CloudBlob destBlob;
CloudBlob srcBlob;
if (item.GetType() == typeof(CloudBlockBlob))
{
srcBlob = (CloudBlockBlob)item;
destBlob = containerDest.GetBlockBlobReference(srcBlob.Name);
}
else
{
srcBlob = (CloudPageBlob)item;
destBlob = containerDest.GetPageBlobReference(srcBlob.Name);
}
if (srcBlob.Name.Contains("format"))
{
destBlob.StartCopy(new Uri(srcBlob.Uri.AbsoluteUri + blobToken));
}
}
このフィルタがあることを知ってうれしいです。しかし、あなたが共有した記事には、「fileFilterは入力FileShareデータセットに適用可能であることに注意してください。 BLOB入力データセットでこれが機能しているかどうかはわかりません。 – Venky
Blast!申し訳ありませんがそれを逃した。私はとてもシンプルなものを両者に当てはめると思いました!マイクロソフトの別のユーザーフィードバック投稿を作成する時間:-) –
はい。 ADFには多くの基本機能が欠けています。 'Last Modified'カラムによるインクリメンタルバックアップとブロブタイプによるブロブのフィルタリングがあります。 Azure DMLは今のところBlobストレージにとって最適なソリューションです。 – Venky