Afin d’utiliser HDInsight, ou encore dans certains cas d’utilisation de Polybase vous allez devoir placer vos fichiers sur Windows Azure Blob Storage, or ce n’est pas forcement évident, voici donc le script PowerShell que j’utilise.
Comme toujours lorsque l’on veut jouer avec PowerShell et azure, il nous faut installer Azure PowerShell.
Notre point de départ est un dossier contenant les fichiers à copier dans notre container Azure.
J’ai choisi ici une approche interactive pour la connexion au container, j’aurai aussi pu utiliser le couple Account Name / Account Key comme dans mon article sur les backup dans Azure.
Import-Module Azure #Nom de votre abonnement à Azure / cela peut être remplacé par l'utilisation de la clé du container $subscriptionName = "Microsoft Partner Network" #Le nom du compte de stockage de destination $storageAccountName = "scopitp" #Nom du container Azure de destination $containerName = "secu" #Dossier ou se trouve votre / vos fichiers $directory = "Z:\2009\" #Pattern des fichiers à charger $filePattern = "*.csv.gz" # Récupération de la clé du compte de stockage après authentification Add-AzureAccount Select-AzureSubscription -SubscriptionName $subscriptionName –Default $storageaccountkey = get-azurestoragekey $storageAccountName | %{$_.Primary} $destContext = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageaccountkey Get-ChildItem $directory -Filter $filePattern |foreach { Set-AzureStorageBlobContent -File $_.FullName -Container $containerName -Blob $_.Name -context $destContext #Write-Host $_.Name }
Résultat :
1 – Nous sommes invité à nous authentifier sur Azure.
2 – Les fichiers sont transférés