In meinem Artikel "Umzug von Windows Azure HDInsight ins Management Portal" hatte ich bereits berichtet, dass für die Nutzung der neuen HDInsight Preview ein Windows Azure Storage Konto in der East US Region benötigt wird. Wie ich allerdings weitere Speicherkonten im Windows Azure HDInsight Dienst nutzen kann, möchte ich heute vorstellen…
So richtig glücklich war ich der neuen Voraussetzung eines Blob Speichers in der East US Region zu Anfang nicht.
Zum Einen bin ich mir noch nicht sicher, ob der Windows Azure Blob Storage genau so schnelle Analysen zulässt, wie es das Hadoop Distributed File System (HDFS) bislang tat.
Zum Anderen liegen meine Daten derzeit noch in den europäischen Microsoft Rechenzentren, und ich möchte diese nur Stück für Stück in die USA transferieren, damit die monatlichen Transferkosten nicht in die Höhe schnellen.
Die guten Neuigkeiten sind aber, dass sich weitere Speicherkonten in einem Windows Azure HDInisght Cluster hinzufügen lassen.
Hinzufügen eines Azure Storage Account
Nachdem man ein Windows Azure HDInsight Cluster erstellt hat, muss man sich zuerst mit dem Head-Node via Remote Desktop Connection verbinden:
Anschließend editiert man die Konfigurationsdatei core-site.xml im Verzeichnis C:appsdisthadoop-1.1.0-SNAPSHOTconf
Dort sucht man nach dem Eintrag mit dem Namen fs.azure.account.key.[…].blob.core.windows.net und dupliziert diesen.
Im Duplikat muss dann nur noch der Name und Zugriffsschlüssel des zweiten Speicherkontos angepasst werden:
<property> <name>fs.azure.account.key.[Account Name].blob.core.windows.net</name> <value>[Account Key]</value> </property>
Zugriff auf das zweite Storage Account
Mit der Pfadangabe "asv://[Blob Storage Container]@[Account Name].blob.core.windows.net/" kann auf die Daten des zweiten Speicherkontos zugreifen werden.
Dieses kann beispielsweise bei MapReduce-Jobs oder auch in der interaktiven JavaScript Konsole verwendet werden: