Korzystanie z usługi Azure Storage w połączeniu z klastrami usługi Azure HDInsightUse Azure storage with Azure HDInsight clusters

Aby analizować dane w klastrze usługi HDInsight, możesz przechowywać dane w usłudze Azure Storage, Azure Data Lake Storage gen 1/Azure Data Lake Storage Gen 2lub kombinację.To analyze data in HDInsight cluster, you can store the data either in Azure Storage, Azure Data Lake Storage Gen 1/Azure Data Lake Storage Gen 2, or a combination. Te opcje magazynu umożliwiają bezpieczne usuwanie klastrów usługi HDInsight, które są używane do obliczeń bez utraty danych użytkownika.These storage options enable you to safely delete HDInsight clusters that are used for computation without losing user data.

Apache Hadoop obsługuje pojęcie domyślnego systemu plików.Apache Hadoop supports a notion of the default file system. Domyślny system plików wyznacza domyślny schemat i element authority.The default file system implies a default scheme and authority. Może również służyć do rozpoznawania ścieżek względnych.It can also be used to resolve relative paths. Podczas procesu tworzenia klastra usługi HDInsight można określić kontener obiektów BLOB w usłudze Azure Storage jako domyślny system plików lub za pomocą usługi HDInsight 3,6. można wybrać usługę Azure Storage lub Azure Data Lake Storage Gen 1/Azure Data Lake Storage Gen 2 jako pliki domyślne System z kilkoma wyjątkami.During the HDInsight cluster creation process, you can specify a blob container in Azure Storage as the default file system, or with HDInsight 3.6, you can select either Azure Storage or Azure Data Lake Storage Gen 1/ Azure Data Lake Storage Gen 2 as the default files system with a few exceptions. Aby uzyskać pomoc techniczną dotyczącą korzystania z Data Lake Storage generacji 1 jako magazynu domyślnego i połączonego, zobacz dostępność klastra usługi HDInsight.For the supportability of using Data Lake Storage Gen 1 as both the default and linked storage, see Availability for HDInsight cluster.

W tym artykule omówiono współdziałanie usługi Azure Storage z klastrami usługi HDInsight.In this article, you learn how Azure Storage works with HDInsight clusters. Aby dowiedzieć się, jak Data Lake Storage Gen 1 współpracuje z klastrami usługi HDInsight, zobacz Korzystanie z Azure Data Lake Storage z klastrami Azure HDInsight.To learn how Data Lake Storage Gen 1 works with HDInsight clusters, see Use Azure Data Lake Storage with Azure HDInsight clusters. Aby uzyskać więcej informacji na temat tworzenia klastra usługi HDInsight, zobacz Tworzenie klastrów Apache Hadoop w usłudze HDInsight.For more information about creating an HDInsight cluster, see Create Apache Hadoop clusters in HDInsight.

Ważne

Rodzaj konta magazynu BlobStorage może być używany tylko jako magazyn pomocniczy dla klastrów usługi HDInsight.Storage account kind BlobStorage can only be used as secondary storage for HDInsight clusters.

Rodzaj konta magazynuStorage account kind Obsługiwane usługiSupported services Obsługiwane warstwy wydajnościSupported performance tiers Obsługiwane warstwy dostępuSupported access tiers
StorageV2 (ogólnego przeznaczenia wersja 2)StorageV2 (general-purpose v2) Obiekt blobBlob StandardowaStandard Gorące, chłodne i archiwalne*Hot, Cool, Archive*
Storage (ogólnego przeznaczenia w wersji 1)Storage (general-purpose v1) Obiekt blobBlob StandardowaStandard Nie dotyczyN/A
BlobStorageBlobStorage Obiekt blobBlob StandardowaStandard Gorące, chłodne i archiwalne*Hot, Cool, Archive*

Nie zaleca się używania domyślnego kontenera obiektów BLOB do przechowywania danych firmowych.We don't recommend that you use the default blob container for storing business data. Dobrym rozwiązaniem jest usunięcie domyślnego kontenera obiektów blob po każdym użyciu, aby obniżyć koszty magazynowania.Deleting the default blob container after each use to reduce storage cost is a good practice. Kontener domyślny zawiera Dzienniki aplikacji i systemu.The default container contains application and system logs. Koniecznie pobierz dzienniki przed usunięciem kontenera.Make sure to retrieve the logs before deleting the container.

Udostępnianie jednego kontenera obiektów BLOB jako domyślnego systemu plików dla wielu klastrów nie jest obsługiwane.Sharing one blob container as the default file system for multiple clusters isn't supported.

Uwaga

Warstwa dostępu archiwalna jest warstwą offline, która ma kilka opóźnień pobierania i nie jest zalecana do użycia z usługą HDInsight.The Archive access tier is an offline tier that has a several hour retrieval latency and isn't recommended for use with HDInsight. Aby uzyskać więcej informacji, zobacz Archiwizowanie warstwy dostępu.For more information, see Archive access tier.

Dostęp do plików z klastraAccess files from the cluster

Istnieje kilka sposobów uzyskiwania dostępu do plików w Data Lake Storage z klastra usługi HDInsight.There are several ways you can access the files in Data Lake Storage from an HDInsight cluster. Schemat identyfikatora URI zapewnia nieszyfrowany dostęp (z prefiksem wasb: ) oraz szyfrowany dostęp SSL (z prefiksem wasbs).The URI scheme provides unencrypted access (with the wasb: prefix) and SSL encrypted access (with wasbs). Zalecamy używanie prefiksu wasbs wszędzie tam, gdzie to możliwe, nawet w przypadku uzyskiwania dostępu do danych, które znajdują się wewnątrz tego samego regionu w systemie Azure.We recommend using wasbs wherever possible, even when accessing data that lives inside the same region in Azure.

  • Przy użyciu w pełni kwalifikowanej nazwy.Using the fully qualified name. W przypadku tej metody należy podać pełną ścieżkę do pliku, do którego chcesz uzyskać dostęp.With this approach, you provide the full path to the file that you want to access.

    wasb://<containername>@<accountname>.blob.core.windows.net/<file.path>/
    wasbs://<containername>@<accountname>.blob.core.windows.net/<file.path>/
    
  • Przy użyciu skróconego formatu ścieżki.Using the shortened path format. To podejście zastępuje ścieżkę do katalogu głównego klastra przy użyciu:With this approach, you replace the path up to the cluster root with:

    wasb:///<file.path>/
    wasbs:///<file.path>/
    
  • Przy użyciu ścieżki względnej.Using the relative path. W przypadku tej metody należy podać tylko względną ścieżkę do pliku, do którego chcesz uzyskać dostęp.With this approach, you only provide the relative path to the file that you want to access.

    /<file.path>/
    

Przykłady dostępu do danychData access examples

Przykłady są oparte na połączeniu SSH z węzłem głównym klastra.Examples are based on an ssh connection to the head node of the cluster. W przykładach użyto wszystkich trzech schematów URI.The examples use all three URI schemes. Zastąp CONTAINERNAME i STORAGEACCOUNT odpowiednimi wartościamiReplace CONTAINERNAME and STORAGEACCOUNT with the relevant values

Kilka poleceń systemu plików HDFSA few hdfs commands

  1. Utwórz prosty plik w magazynie lokalnym.Create a simple file on local storage.

    touch testFile.txt
    
  2. Utwórz katalogi w magazynie klastra.Create directories on cluster storage.

    hdfs dfs -mkdir wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/sampledata1/
    hdfs dfs -mkdir wasbs:///sampledata2/
    hdfs dfs -mkdir /sampledata3/
    
  3. Skopiuj dane z magazynu lokalnego do magazynu klastra.Copy data from local storage to cluster storage.

    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/
    
  4. Wyświetlanie zawartości katalogu w magazynie klastra.List directory contents on cluster storage.

    hdfs dfs -ls wasbs://CONTAINERNAME@STORAGEACCOUNT.blob.core.windows.net/sampledata1/
    hdfs dfs -ls wasbs:///sampledata2/
    hdfs dfs -ls /sampledata3/
    

Uwaga

Podczas pracy z obiektami blob poza usługą HDInsight, większość narzędzi nie rozpoznaje formatu WASB i zamiast tego oczekuje podstawowego formatu ścieżki, takiego jak example/jars/hadoop-mapreduce-examples.jar.When working with blobs outside of HDInsight, most utilities do not recognize the WASB format and instead expect a basic path format, such as example/jars/hadoop-mapreduce-examples.jar.

Tworzenie tabeli programu HiveCreating a Hive table

Trzy lokalizacje plików są pokazane w celach ilustracyjnych.Three file locations are shown for illustrative purposes. W przypadku rzeczywistego wykonywania należy użyć tylko jednego z wpisów LOCATION.For actual execution, use only one of the LOCATION entries.

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/';

Zidentyfikuj ścieżkę magazynu z AbmariIdentify storage path from Abmari

  • Aby zidentyfikować pełną ścieżkę do skonfigurowanego domyślnego magazynu, przejdź do:To identify the complete path to the configured default store, navigate to:

    > Konfiguracja systemu plików HDFS i wprowadź fs.defaultFS w polu wejściowym filtru.HDFS > Configs and enter fs.defaultFS in the filter input box.

  • Aby sprawdzić, czy magazyn wasb jest skonfigurowany jako magazyn pomocniczy, przejdź do:To check if wasb store is configured as secondary storage, navigate to:

    > Konfiguracja systemu plików HDFS i wprowadź blob.core.windows.net w polu wejściowym filtru.HDFS > Configs and enter blob.core.windows.net in the filter input box.

Kontenery obiektów blobBlob containers

Aby użyć obiektów blob, należy najpierw utworzyć konto usługi Azure Storage.To use blobs, you first create an Azure Storage account. W ramach tego procesu należy wskazać region świadczenia usługi Azure, w którym zostanie utworzone konto magazynu.As part of this, you specify an Azure region where the storage account is created. Klaster i konto magazynu muszą być hostowane w tym samym regionie.The cluster and the storage account must be hosted in the same region. Baza danych magazyn metadanych Hive SQL Server Database i Apache Oozie baza danych SQL Server muszą również znajdować się w tym samym regionie.The Hive metastore SQL Server database and Apache Oozie metastore SQL Server database must also be located in the same region.

Wszędzie tam, gdzie go umieszczono, każdy utworzony obiekt blob należy do kontenera na koncie usługi Azure Storage.Wherever it lives, each blob you create belongs to a container in your Azure Storage account. Ten kontener może być istniejącym obiektem blob utworzonym poza usługą HDInsight lub może być kontenerem, który jest tworzony dla klastra usługi HDInsight.This container may be an existing blob that was created outside of HDInsight, or it may be a container that is created for an HDInsight cluster.

Domyślny kontener obiektów blob przechowuje informacje dotyczące klastra, takie jak dzienniki i historia zadań.The default Blob container stores cluster-specific information such as job history and logs. Nie należy współużytkować domyślnego kontenera obiektów blob dla wielu klastrów usługi HDInsight.Don't share a default Blob container with multiple HDInsight clusters. Może to spowodować uszkodzenie historii zadań.This might corrupt job history. Zalecane jest użycie innego kontenera dla każdego klastra i umieszczenie danych udostępnionych na połączonym koncie magazynu określonym we wdrożeniu wszystkich odpowiednich klastrów, a nie na domyślnym koncie magazynu.It's recommended to use a different container for each cluster and put shared data on a linked storage account specified in deployment of all relevant clusters rather than the default storage account. Aby uzyskać więcej informacji na temat konfigurowania połączonych kont magazynu, zobacz Tworzenie klastrów usługi HDInsight.For more information on configuring linked storage accounts, see Create HDInsight clusters. Jednak po usunięciu oryginalnego klastra usługi HDInsight można ponownie użyć domyślnego kontenera magazynu.However you can reuse a default storage container after the original HDInsight cluster has been deleted. W przypadku klastrów HBase można zachować schemat tabeli HBase i dane przez utworzenie nowego klastra HBase przy użyciu domyślnego kontenera obiektów blob, który jest używany przez usunięty klaster HBase.For HBase clusters, you can actually keep the HBase table schema and data by creating a new HBase cluster using the default blob container that is used by an HBase cluster that has been deleted.

Uwaga

Funkcja wymagająca bezpiecznego transferu wymusza wszystkie żądania do konta przez bezpieczne połączenie.The feature that requires secure transfer enforces all requests to your account through a secure connection. Ta funkcja obsługuje tylko klaster usługi HDInsight w wersji 3,6 lub nowszej.Only HDInsight cluster version 3.6 or newer supports this feature. Aby uzyskać więcej informacji, zobacz Tworzenie klastra Apache Hadoop z kontami magazynu Secure transfer w usłudze Azure HDInsight.For more information, see Create Apache Hadoop cluster with secure transfer storage accounts in Azure HDInsight.

Korzystanie z usługi Azure StorageInteracting with Azure storage

Firma Microsoft udostępnia następujące narzędzia do pracy z usługą Azure Storage:Microsoft provides the following tools to work with Azure Storage:

NarzędzieTool LinuxLinux OS XOS X WindowsWindows
Azure PortalAzure portal
Interfejs wiersza polecenia platformy AzureAzure CLI
Azure PowerShellAzure PowerShell
Narzędzie AzCopyAzCopy

Używanie dodatkowych kont magazynuUse additional storage accounts

Podczas tworzenia klastra usługi HDInsight należy wskazać konto usługi Azure Storage, które ma zostać skojarzone z tym klastrem.While creating an HDInsight cluster, you specify the Azure Storage account you want to associate with it. Oprócz tego konta magazynu można dodać dodatkowe konta magazynu z tej samej subskrypcji platformy Azure lub różnych subskrypcji platformy Azure podczas procesu tworzenia lub po utworzeniu klastra.In addition to this storage account, you can add additional storage accounts from the same Azure subscription or different Azure subscriptions during the creation process or after a cluster has been created. Aby uzyskać instrukcje dotyczące dodawania kolejnych kont magazynu, zobacz Tworzenie klastrów usługi HDInsight.For instructions about adding additional storage accounts, see Create HDInsight clusters.

Ostrzeżenie

Korzystanie z dodatkowego konta magazynu w innej lokalizacji niż klaster usługi HDInsight nie jest obsługiwane.Using an additional storage account in a different location than the HDInsight cluster is not supported.

Następne krokiNext steps

W tym artykule przedstawiono sposób korzystania z magazynu Azure zgodnego z systemem plików HDFS w połączeniu z usługą HDInsight.In this article, you learned how to use HDFS-compatible Azure storage with HDInsight. Podane tu informacje umożliwiają tworzenie skalowalnych, długoterminowych rozwiązań do pozyskiwania danych archiwalnych i używanie usługi HDInsight w celu efektywnego wykorzystywania informacji przechowywanych w postaci danych ze strukturą i bez niej.This allows you to build scalable, long-term, archiving data acquisition solutions and use HDInsight to unlock the information inside the stored structured and unstructured data.

Aby uzyskać więcej informacji, zobacz:For more information, see: