Použití úložiště Azure s clustery Azure HDInsight
Data můžete ukládat ve službě Azure Blob Storage, Azure Data Lake Storage Gen1 nebo Azure Data Lake Storage Gen2. Nebo kombinaci těchto možností. Tyto možnosti úložiště umožňují bezpečně odstranit clustery HDInsight, které se používají pro výpočty, bez ztráty uživatelských dat.
Apache Hadoop podporuje koncept výchozího systému souborů. Výchozí systém souborů znamená výchozí schéma a autoritu. Lze ho také použít k vyřešení relativní cesty. Během procesu vytváření clusteru HDInsight můžete jako výchozí systém souborů zadat kontejner objektů blob ve službě Azure Storage. Nebo s HDInsight 3.6 můžete s několika výjimkami jako výchozí systém souborů vybrat azure Blob Storage nebo Azure Data Lake Storage Gen1/Azure Data Lake Storage Gen2. Informace o podpoře použití Data Lake Storage Gen1 jako výchozího i propojeného úložiště najdete v tématu Dostupnost clusteru HDInsight.
V tomto článku se dozvíte, jak služba Azure Storage pracuje s clustery HDInsight.
- Informace o tom, jak Data Lake Storage Gen1 fungují s clustery HDInsight, najdete v tématu Použití Azure Data Lake Storage Gen1 s clustery Azure HDInsight.
- Informace o tom, jak Data Lake Storage Gen2 fungují s clustery HDInsight, najdete v tématu Použití Azure Data Lake Storage Gen2 s clustery Azure HDInsight.
- Další informace o vytváření clusteru HDInsight najdete v tématu Vytváření clusterů Apache Hadoop ve službě HDInsight.
Důležité
Typ účtu úložiště BlobStorage se dá použít pouze jako sekundární úložiště pro clustery HDInsight.
Druh účtu úložiště | Podporované služby | Podporované úrovně výkonu | Nepodporovaná úroveň výkonu | Podporované úrovně přístupu |
---|---|---|---|---|
StorageV2 (obecné účely v2) | Objekt blob | Standard | Premium | Horká, studená, archivní* |
Úložiště (obecné účely v1) | Objekt blob | Standard | Premium | – |
Blob Storage | Objekt blob | Standard | Premium | Horká, studená, archivní* |
Nedoporučujeme používat výchozí kontejner objektů blob k ukládání obchodních dat. Ideální postup je výchozí kontejner objektů blob po každém použití odstranit a snížit tak náklady na úložiště. Výchozí kontejner obsahuje aplikační a systémové protokoly. Než odstraníte kontejner, nezapomeňte tyto protokoly načíst.
Sdílení jednoho kontejneru objektů blob jako výchozího systému souborů pro více clusterů se nepodporuje.
Poznámka
Archivní úroveň přístupu je offline úroveň, která má několikahodinovou latenci načítání a nedoporučuje se používat se službou HDInsight. Další informace najdete v tématu Archivní úroveň přístupu.
Přístup k souborům z clusteru
Existuje několik způsobů, jak získat přístup k souborům v Data Lake Storage z clusteru HDInsight. Schéma identifikátoru URI poskytuje nešifrovaný přístup (s předponou wasb: ) a šifrovaný přístup TLS (s wasbs). Doporučujeme používat wasbs kdykoli je to možné, i v případě přístupu k datům, umístěným uvnitř stejné oblasti v Azure.
Pomocí plně kvalifikovaného názvu. S tímto přístupem zadáváte úplnou cestu k souboru, ke kterému chcete získat přístup.
wasb://<containername>@<accountname>.blob.core.windows.net/<file.path>/ wasbs://<containername>@<accountname>.blob.core.windows.net/<file.path>/
Pomocí zkráceného formátu cesty. Při použití tohoto přístupu nahradíte cestu ke kořenovému adresáři clusteru tímto:
wasb:///<file.path>/ wasbs:///<file.path>/
Pomocí relativní cesty. S tímto přístupem zadáváte pouze relativní cestu k souboru, ke kterému chcete získat přístup.
/<file.path>/
Příklady přístupu k datům
Příklady jsou založené na připojení SSH k hlavnímu uzlu clusteru. V příkladech se používají všechna tři schémata identifikátorů URI. Nahraďte CONTAINERNAME
a STORAGEACCOUNT
příslušnými hodnotami.
Několik příkazů hdfs
Vytvořte soubor v místním úložišti.
touch testFile.txt
Vytvořte adresáře v úložišti clusteru.
hdfs dfs -mkdir wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/sampledata1/ hdfs dfs -mkdir wasbs:///sampledata2/ hdfs dfs -mkdir /sampledata3/
Kopírování dat z místního úložiště do úložiště clusteru
hdfs dfs -copyFromLocal testFile.txt wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/sampledata1/ hdfs dfs -copyFromLocal testFile.txt wasbs:///sampledata2/ hdfs dfs -copyFromLocal testFile.txt /sampledata3/
Vypíše obsah adresáře v úložišti clusteru.
hdfs dfs -ls wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/sampledata1/ hdfs dfs -ls wasbs:///sampledata2/ hdfs dfs -ls /sampledata3/
Poznámka
Při práci s objekty blob mimo HDInsight většina nástrojů nerozpozná formát WASB a místo toho očekávají základní formát cesty, jako je například example/jars/hadoop-mapreduce-examples.jar
.
Vytvoření tabulky Hive
Pro ilustraci jsou zobrazena tři umístění souborů. Pro skutečné spuštění použijte pouze jednu z LOCATION
položek.
DROP TABLE myTable;
CREATE EXTERNAL TABLE myTable (
t1 string,
t2 string,
t3 string,
t4 string,
t5 string,
t6 string,
t7 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
STORED AS TEXTFILE
LOCATION 'wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/example/data/';
LOCATION 'wasbs:///example/data/';
LOCATION '/example/data/';
Přístup k souborům z vnějšího clusteru
Microsoft poskytuje následující nástroje pro práci se službou Azure Storage:
Nástroj | Linux | OS X | Windows |
---|---|---|---|
Azure Portal | ✔ | ✔ | ✔ |
Azure CLI | ✔ | ✔ | ✔ |
Azure PowerShell | ✔ | ||
AzCopy | ✔ | ✔ |
Identifikace cesty k úložišti z Ambari
Pokud chcete zjistit úplnou cestu k nakonfigurované výchozí úložišti, přejděte na:
HDFS>Konfigurace a zadejte
fs.defaultFS
do vstupního pole filtru.Pokud chcete zkontrolovat, jestli je úložiště Wasb nakonfigurované jako sekundární úložiště, přejděte na:
HDFS>Konfigurace a zadejte
blob.core.windows.net
do vstupního pole filtru.
Pokud chcete získat cestu pomocí rozhraní Ambari REST API, přečtěte si téma Získání výchozího úložiště.
Kontejnery objektů blob
K použití objektů blob je třeba nejprve vytvořit Účet služby Azure Storage. V rámci tohoto kroku zadáte oblast Azure, ve které se účet úložiště vytvoří. Účet úložiště a clusteru musí být uloženy ve stejné oblasti. Databáze metastoru Hive SQL Server a databáze metastoru Apache Oozie SQL Server se musí nacházet ve stejné oblasti.
Bez ohledu na svoje umístění patří každý objekt blob, který vytvoříte, do kontejneru v účtu úložiště Azure. Tento kontejner může být existující objekt blob vytvořený mimo HDInsight. Nebo se může jednat o kontejner vytvořený pro cluster HDInsight.
Výchozí kontejner objektu blob ukládá konkrétní informace, jako je historie úlohy a protokoly. Výchozí kontejner objektu Blob nesdílejte s více clustery služby HDInsight. Tato akce může poškodit historii úloh. Pro každý cluster se doporučuje použít jiný kontejner. Umístěte sdílená data do propojeného účtu úložiště určeného pro všechny relevantní clustery místo do výchozího účtu úložiště. Další informace o konfiguraci propojených účtů úložiště najdete v tématu Tvorba clusterů HDInsight. Nicméně, po odstranění původního clusteru HDInsight můžete znovu použít výchozí kontejner úložiště. V případě clusterů HBase můžete zachovat schéma a data tabulky HBase vytvořením nového clusteru HBase pomocí výchozího kontejneru objektů blob, který používá odstraněný cluster HBase.
Poznámka
Funkce, která vyžaduje zabezpečený přenos, vynucuje všechny požadavky na váš účet prostřednictvím zabezpečeného připojení. Tuto funkci podporuje pouze cluster HDInsight verze 3.6 nebo novější. Další informace najdete v tématu Vytvoření clusteru Apache Hadoop se zabezpečeným přenosem účtů úložiště ve službě Azure HDInsight.
Použití dalších účtů úložiště
Při vytváření clusteru HDInsight zadáváte účet služby Azure Storage, který k němu chcete přidružit. Během procesu vytváření nebo po vytvoření clusteru můžete také přidat další účty úložiště ze stejného předplatného Azure nebo různých předplatných Azure. Pokyny pro přidání dalších účtů úložiště najdete v tématu Tvorba clusterů HDInsight.
Upozornění
Použití dalšího účtu úložiště v jiném umístění, než je cluster HDInsight, není podporováno.
Další kroky
V tomto článku jste zjistili, jak používat HDFS kompatibilní úložiště Azure se službou HDInsight. Toto úložiště umožňuje vytvářet přizpůsobitelná, dlouhodobá řešení pro získávání archivovaných dat a používat HDInsight k odemknutí informací uvnitř uložených strukturovaných a nestrukturovaných dat.
Další informace naleznete v tématu:
- Rychlý start: Vytvoření clusteru Apache Hadoop
- Kurz: Vytváření clusterů HDInsight
- Použití služby Azure Data Lake Storage Gen2 s clustery Azure HDInsight
- Nahrání dat do služby HDInsight
- Kurz: Extrakce, transformace a načítání dat pomocí Interactive Query ve službě Azure HDInsight
- Použití sdílených přístupových podpisů služby Azure Storage k omezení přístupu k datům pomocí HDInsight
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro