Udostępnij za pośrednictwem


Przekazywanie danych dla zadań platformy Apache Hadoop w usłudze HDInsight

Usługa HDInsight udostępnia rozproszony system plików Hadoop (HDFS) za pośrednictwem usługi Azure Storage i usługi Azure Data Lake Storage. Ten magazyn obejmuje gen2. Usługi Azure Storage i Data Lake Storage Gen2 są zaprojektowane jako rozszerzenia HDFS. Umożliwiają one pełny zestaw składników w środowisku hadoop do działania bezpośrednio na zarządzanych danych. Azure Storage, Data Lake Storage Gen2 to odrębne systemy plików. Systemy są zoptymalizowane pod kątem przechowywania danych i obliczeń na tych danych. Aby uzyskać informacje o zaletach korzystania z usługi Azure Storage, zobacz Używanie usługi Azure Storage z usługą HDInsight. Zobacz również Artykuł Use Data Lake Storage Gen2 with HDInsight (Używanie usługi Data Lake Storage Gen2 w usłudze HDInsight).

Wymagania wstępne

Przed rozpoczęciem należy zwrócić uwagę na następujące wymagania:

Przekazywanie danych do usługi Azure Storage

Narzędzia

Firma Microsoft udostępnia następujące narzędzia do pracy z usługą Azure Storage:

Narzędzie Linux OS X Windows
Witryna Azure Portal
Interfejs wiersza polecenia platformy Azure
Azure PowerShell
AzCopy
Hadoop, polecenie

Uwaga

Polecenie hadoop jest dostępne tylko w klastrze usługi HDInsight. Polecenie zezwala tylko na ładowanie danych z lokalnego systemu plików do usługi Azure Storage.

Wiersz polecenia usługi Hadoop

Wiersz polecenia usługi Hadoop jest przydatny tylko do przechowywania danych w obiekcie blob usługi Azure Storage, gdy dane są już obecne w węźle głównym klastra.

Aby użyć polecenia hadoop, musisz najpierw nawiązać połączenie z węzłem głównym przy użyciu protokołu SSH lub PuTTY.

Po nawiązaniu połączenia możesz użyć następującej składni, aby przekazać plik do magazynu.

hadoop fs -copyFromLocal <localFilePath> <storageFilePath>

Na przykład hadoop fs -copyFromLocal data.txt /example/data/data.txt

Ponieważ domyślny system plików dla usługi HDInsight znajduje się w usłudze Azure Storage, /example/data/data.txt jest rzeczywiście w usłudze Azure Storage. Możesz również odwołać się do pliku w następujący sposób:

wasbs:///example/data/data.txt

Or

wasbs://<ContainerName>@<StorageAccountName>.blob.core.windows.net/example/data/davinci.txt

Aby uzyskać listę innych poleceń usługi Hadoop, które działają z plikami, zobacz https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html

Ostrzeżenie

W klastrach Apache HBase domyślny rozmiar bloku używany podczas zapisywania danych wynosi 256 KB. Mimo że działa to dobrze w przypadku korzystania z interfejsów API bazy danych HBase lub interfejsów API REST, użycie hadoop poleceń lub hdfs dfs do zapisywania danych większych niż ~12 GB powoduje wystąpienie błędu. Aby uzyskać więcej informacji, zobacz Wyjątek magazynu dla zapisu w obiekcie blob.

Klienci graficzni

Istnieje również kilka aplikacji, które udostępniają interfejs graficzny do pracy z usługą Azure Storage. Poniższa tabela zawiera listę kilku z tych aplikacji:

Klient Linux OS X Windows
Microsoft Visual Studio Tools for HDInsight
Eksplorator usługi Azure Storage
Cerulea
CloudXplorer
CloudBerry Explorer dla platformy Microsoft Azure
Cyberduck

Instalowanie usługi Azure Storage jako dysku lokalnego

Zobacz Instalowanie usługi Azure Storage jako dysku lokalnego.

Przekazywanie przy użyciu usług

Azure Data Factory

Usługa Azure Data Factory to w pełni zarządzana usługa do tworzenia danych: magazynowania, przetwarzania i przenoszenia usług w usprawnionych, dostosowywanych i niezawodnych potokach produkcji danych.

Typ magazynu Dokumentacja
Azure Blob Storage Kopiowanie danych do lub z usługi Azure Blob Storage za pomocą usługi Azure Data Factory
(.. /data-factory/connector-azure-data-lake-store.md)
Azure Data Lake Storage Gen2 Ładowanie danych do usługi Azure Data Lake Storage Gen2 za pomocą usługi Azure Data Factory

Apache Sqoop

Sqoop to narzędzie przeznaczone do transferu danych między usługą Hadoop i relacyjnymi bazami danych. Służy do importowania danych z systemu zarządzania relacyjnymi bazami danych (RDBMS), takiego jak SQL Server, MySQL lub Oracle. Następnie w rozproszonym systemie plików Hadoop (HDFS). Przekształć dane w usłudze Hadoop przy użyciu technologii MapReduce lub Hive, a następnie wyeksportuj dane z powrotem do systemu RDBMS.

Aby uzyskać więcej informacji, zobacz Use Sqoop with HDInsight (Używanie narzędzia Sqoop z usługą HDInsight).

Zestawy SDK programowania

Dostęp do usługi Azure Storage można również uzyskać przy użyciu zestawu Azure SDK z następujących języków programowania:

  • .NET
  • Java
  • Node.js
  • PHP
  • Python
  • Ruby

Aby uzyskać więcej informacji na temat instalowania zestawów SDK platformy Azure, zobacz Pobieranie platformy Azure

Następne kroki

Teraz, gdy już wiesz, jak uzyskać dane w usłudze HDInsight, przeczytaj następujące artykuły, aby dowiedzieć się więcej na temat analizy: