Utilizar o armazenamento do Azure com clusters do Azure HDInsightUse Azure storage with Azure HDInsight clusters

Para analisar dados no cluster HDInsight, você pode armazenar os dados no armazenamento do Azure, Azure Data Lake Storage gen 1/Azure data Lake Storage Gen 2ou uma combinação.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. Essas opções de armazenamento permitem que você exclua com segurança os clusters HDInsight que são usados para computação sem perder dados do usuário.These storage options enable you to safely delete HDInsight clusters that are used for computation without losing user data.

O Apache Hadoop dá suporte a uma noção do sistema de arquivos padrão.Apache Hadoop supports a notion of the default file system. O sistema de ficheiros predefinido implica um esquema e uma autoridade predefinidos.The default file system implies a default scheme and authority. Também pode ser utilizado para resolver caminhos relativos.It can also be used to resolve relative paths. Durante o processo de criação do cluster HDInsight, você pode especificar um contêiner de blob no armazenamento do Azure como o sistema de arquivos padrão ou com o HDInsight 3,6, você pode selecionar o armazenamento do Azure ou Azure Data Lake Storage Gen 1/Azure Data Lake Storage Gen 2 como os arquivos padrão sistema com algumas exceções.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. Para obter suporte ao usar Data Lake Storage Gen 1 como o armazenamento padrão e vinculado, consulte disponibilidade para o cluster HDInsight.For the supportability of using Data Lake Storage Gen 1 as both the default and linked storage, see Availability for HDInsight cluster.

Neste artigo, ficará a saber como o Armazenamento do Azure funciona com clusters do HDInsight.In this article, you learn how Azure Storage works with HDInsight clusters. Para saber como Data Lake Storage Gen 1 funciona com clusters HDInsight, confira usar o Azure data Lake Storage com clusters do Azure hdinsight.To learn how Data Lake Storage Gen 1 works with HDInsight clusters, see Use Azure Data Lake Storage with Azure HDInsight clusters. Para obter mais informações sobre como criar um cluster HDInsight, consulte criar Apache Hadoop clusters no HDInsight.For more information about creating an HDInsight cluster, see Create Apache Hadoop clusters in HDInsight.

Importante

O tipo de conta de armazenamento BlobStorage pode ser usado apenas como armazenamento secundário para clusters HDInsight.Storage account kind BlobStorage can only be used as secondary storage for HDInsight clusters.

Tipo de conta de armazenamentoStorage account kind Serviços com suporteSupported services Níveis de desempenho com suporteSupported performance tiers Níveis de acesso com suporteSupported access tiers
StorageV2 (general-purpose v2)StorageV2 (general-purpose v2) BlobsBlob StandardStandard * quente, esporádico e de arquivoHot, Cool, Archive*
Armazenamento (uso geral v1)Storage (general-purpose v1) BlobsBlob StandardStandard N/DN/A
BlobStorageBlobStorage BlobsBlob StandardStandard * quente, esporádico e de arquivoHot, Cool, Archive*

Não recomendamos que você use o contêiner de blob padrão para armazenar dados corporativos.We don't recommend that you use the default blob container for storing business data. Eliminar o contentor de blobs predefinido depois de cada utilização para reduzir o custo de armazenamento é uma prática recomendada.Deleting the default blob container after each use to reduce storage cost is a good practice. O contêiner padrão contém logs do aplicativo e do sistema.The default container contains application and system logs. Certifique-se de que obtém os registos antes de eliminar o contentor.Make sure to retrieve the logs before deleting the container.

Não há suporte para o compartilhamento de um contêiner de blob como o sistema de arquivos padrão para vários clusters.Sharing one blob container as the default file system for multiple clusters isn't supported.

Nota

A camada de acesso de arquivamento é uma camada offline que tem uma latência de recuperação de várias horas e não é recomendada para uso com o HDInsight.The Archive access tier is an offline tier that has a several hour retrieval latency and isn't recommended for use with HDInsight. Para obter mais informações, consulte arquivar camada de acesso.For more information, see Archive access tier.

Aceder a ficheiros a partir do clusterAccess files from the cluster

Há várias maneiras de acessar os arquivos em Data Lake Storage de um cluster HDInsight.There are several ways you can access the files in Data Lake Storage from an HDInsight cluster. O esquema URI fornece acesso não encriptado (com o prefixo wasb: ) e acesso encriptado por SSL (com wasbs).The URI scheme provides unencrypted access (with the wasb: prefix) and SSL encrypted access (with wasbs). Recomendamos a utilização de wasbs sempre que possível, mesmo ao aceder a dados que se encontrem dentro da mesma região no Azure.We recommend using wasbs wherever possible, even when accessing data that lives inside the same region in Azure.

  • Utilizar o nome completamente qualificado.Using the fully qualified name. Com esta abordagem, fornece o caminho completo para o ficheiro ao qual pretende aceder.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>/
    
  • Utilizando o formato de caminho abreviado.Using the shortened path format. Com essa abordagem, você substitui o caminho até a raiz do cluster por:With this approach, you replace the path up to the cluster root with:

    wasb:///<file.path>/
    wasbs:///<file.path>/
    
  • Utilizar o caminho relativo.Using the relative path. Com esta abordagem, fornece apenas o caminho relativo para o ficheiro ao qual pretende aceder.With this approach, you only provide the relative path to the file that you want to access.

    /<file.path>/
    

Exemplos de acesso a dadosData access examples

Os exemplos são baseados em uma conexão SSH com o nó principal do cluster.Examples are based on an ssh connection to the head node of the cluster. Os exemplos usam todos os três esquemas de URI.The examples use all three URI schemes. Substituir CONTAINERNAME e STORAGEACCOUNT pelos valores relevantesReplace CONTAINERNAME and STORAGEACCOUNT with the relevant values

Alguns comandos do HDFSA few hdfs commands

  1. Crie um arquivo simples no armazenamento local.Create a simple file on local storage.

    touch testFile.txt
    
  2. Crie diretórios no armazenamento de cluster.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. Copie dados do armazenamento local para o armazenamento de cluster.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. Liste o conteúdo do diretório no armazenamento de cluster.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/
    

Nota

Ao trabalhar com blobs fora do HDInsight, a maioria dos utilitários não reconhece o formato WASB e, em vez disso, espera um formato de caminho básico, tal como 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.

Criando uma tabela HiveCreating a Hive table

Três locais de arquivo são mostrados para fins ilustrativos.Three file locations are shown for illustrative purposes. Para a execução real, use apenas uma das entradas de 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/';

Identificar o caminho de armazenamento do AbmariIdentify storage path from Abmari

  • Para identificar o caminho completo para o repositório padrão configurado, navegue até:To identify the complete path to the configured default store, navigate to:

    O HDFS > configurações e insere fs.defaultFS na caixa de entrada de filtro.HDFS > Configs and enter fs.defaultFS in the filter input box.

  • Para verificar se o repositório do WASB está configurado como armazenamento secundário, navegue até:To check if wasb store is configured as secondary storage, navigate to:

    O HDFS > configurações e insere blob.core.windows.net na caixa de entrada de filtro.HDFS > Configs and enter blob.core.windows.net in the filter input box.

Contêineres de BLOBBlob containers

Para usar BLOBs, você primeiro cria uma conta de armazenamento do Azure.To use blobs, you first create an Azure Storage account. Como parte deste processo, deve especificar uma região do Azure onde será criada a conta de armazenamento.As part of this, you specify an Azure region where the storage account is created. O cluster e a conta do Storage têm de estar alojados na mesma região.The cluster and the storage account must be hosted in the same region. O banco de dados do metastore do Hive SQL Server e do Apache Oozie metastore SQL Server também devem estar localizados na mesma região.The Hive metastore SQL Server database and Apache Oozie metastore SQL Server database must also be located in the same region.

Independentemente do local onde se encontre, cada blob que criar pertence a um contentor na sua conta do Storage do Azure.Wherever it lives, each blob you create belongs to a container in your Azure Storage account. Este contentor pode ser um blob existente que tenha sido criado fora do HDInsight ou um contentor criado para um cluster do 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.

O contentor de blobs predefinido armazena informações específicas do cluster, como o histórico de tarefas e os registos.The default Blob container stores cluster-specific information such as job history and logs. Não partilhe um contentor de blobs predefinido com vários clusters do HDInsight.Don't share a default Blob container with multiple HDInsight clusters. Isto pode danificar o histórico de tarefas.This might corrupt job history. É recomendável usar um contêiner diferente para cada cluster e colocar dados compartilhados em uma conta de armazenamento vinculada especificada na implantação de todos os clusters relevantes em vez da conta de armazenamento padrão.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. Para obter mais informações sobre como configurar contas de armazenamento vinculadas, consulte Criar clusters HDInsight.For more information on configuring linked storage accounts, see Create HDInsight clusters. No entanto, pode reutilizar um contentor de armazenamento predefinido depois de o cluster do HDInsight original ser eliminado.However you can reuse a default storage container after the original HDInsight cluster has been deleted. Para clusters HBase, você pode realmente manter o esquema de tabela do HBase e os dados criando um novo cluster HBase usando o contêiner de blob padrão que é usado por um cluster HBase que foi excluído.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.

Nota

O recurso que requer transferência segura impõe todas as solicitações para sua conta por meio de uma conexão segura.The feature that requires secure transfer enforces all requests to your account through a secure connection. Somente o cluster HDInsight versão 3,6 ou mais recente dá suporte a esse recurso.Only HDInsight cluster version 3.6 or newer supports this feature. Para obter mais informações, consulte criar Apache Hadoop cluster com contas de armazenamento de transferência segura no Azure HDInsight.For more information, see Create Apache Hadoop cluster with secure transfer storage accounts in Azure HDInsight.

Interagindo com o armazenamento do AzureInteracting with Azure storage

A Microsoft fornece as seguintes ferramentas para trabalhar com o armazenamento do Azure:Microsoft provides the following tools to work with Azure Storage:

FerramentaTool LinuxLinux OS XOS X WindowsWindows
Portal do AzureAzure portal
CLI do AzureAzure CLI
Azure PowerShellAzure PowerShell
AZCopyAzCopy

Utilizar contas de armazenamento adicionaisUse additional storage accounts

Ao criar um cluster do HDInsight, especifica a conta de armazenamento do Azure que quer associar ao mesmo.While creating an HDInsight cluster, you specify the Azure Storage account you want to associate with it. Além desta conta de armazenamento, pode adicionar mais contas de armazenamento da mesma subscrição do Azure ou de diferentes subscrições do Azure durante o processo de criação ou depois de um cluster ter sido criado.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. Para obter instruções sobre como adicionar mais contas do Storage, consulte Create HDInsight clusters (Criar clusters do HDInsight).For instructions about adding additional storage accounts, see Create HDInsight clusters.

Aviso

Não é suportado utilizar uma conta de armazenamento adicional numa localização diferente do cluster do HDInsight.Using an additional storage account in a different location than the HDInsight cluster is not supported.

Passos seguintesNext steps

Neste artigo, aprendeu a utilizar o armazenamento do Azure compatível com HDFS através do HDInsight.In this article, you learned how to use HDFS-compatible Azure storage with HDInsight. Isto permite-lhe criar soluções de aquisição de dados para arquivo de longo prazo dimensionáveis e utilizar o HDInsight para aceder às informações contidas nos dados estruturados e não estruturados armazenados.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.

Para obter mais informações, consulte:For more information, see: