Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
O Azure Data Lake Analytics foi desativado em 29 de fevereiro de 2024. Saiba mais com este anúncio.
Para análise de dados, sua organização pode usar o Azure Synapse Analytics ou o Microsoft Fabric.
Se você quiser usar o Azure Databricks ou Azure HDInsight Spark, recomendamos que você migre seus dados do Azure Data Lake Storage Gen1 para o Azure Data Lake Storage Gen2.
Além de mover seus arquivos, você também desejará tornar seus dados, armazenados em tabelas U-SQL, acessíveis ao Spark.
Mover dados armazenados em arquivos do Azure Data Lake Storage Gen1
Os dados armazenados em arquivos podem ser movidos de várias maneiras:
- Escreva um pipeline no Azure Data Factory para copiar os dados do Azure Data Lake Storage Gen1 para o Azure Data Lake Storage Gen2.
- Escreva um trabalho do Spark que leia os dados da conta do Azure Data Lake Storage Gen1 e os grave na conta do Azure Data Lake Storage Gen2. Com base no seu caso de uso, você pode querer escrevê-lo em um formato diferente, como Parquet, se não precisar preservar o formato de arquivo original.
Recomendamos que você leia o artigo Atualizar suas soluções de análise de big data do Azure Data Lake Storage Gen1 para o Azure Data Lake Storage Gen2
Mover dados armazenados em tabelas U-SQL
As tabelas U-SQL não são compreendidas pelo Spark. Se você tiver dados armazenados em tabelas U-SQL, executará um trabalho U-SQL que extrai os dados da tabela e os salva em um formato que o Spark entende. O formato mais apropriado é criar um conjunto de arquivos Parquet seguindo a estrutura de pastas do metastore do Hive.
A saída pode ser obtida em U-SQL com o outputter Parquet integrado e usando o particionamento dinâmico da saída com conjuntos de ficheiros para criar as pastas de partição. Processe mais ficheiros do que nunca e utilize o Parquet. Este documento fornece um exemplo de como criar dados utilizáveis pelo Spark.
Após essa transformação, copie os dados conforme descrito no capítulo Mover dados armazenados em arquivos do Azure Data Lake Storage Gen1.
Advertências
Semântica de dados Ao copiar arquivos, a cópia ocorrerá no nível de byte. Portanto, os mesmos dados devem aparecer na conta de Azure Data Lake Storage Gen2. No entanto, o Spark pode interpretar alguns caracteres de forma diferente. Por exemplo, ele pode usar um padrão diferente para um delimitador de linha em um arquivo CSV. Além disso, se você estiver copiando dados digitados (de tabelas), o Parquet e o Spark podem ter precisão e escala diferentes para alguns dos valores digitados (por exemplo, um float) e podem tratar valores nulos de forma diferente. Por exemplo, o U-SQL tem a semântica C# para valores nulos, enquanto o Spark tem uma lógica de três valores para valores nulos.
Organização de dados (particionamento) As tabelas U-SQL fornecem particionamento de dois níveis. O nível externo (
PARTITIONED BY) é com base no valor e mapeia principalmente no esquema de particionamento do Hive/Spark usando hierarquias de pastas. Você precisará garantir que os valores nulos sejam mapeados para a pasta correta. O nível interno (DISTRIBUTED BY) no U-SQL oferece quatro esquemas de distribuição: round robin, range, hash e direct hash. As tabelas Hive/Spark suportam apenas particionamento de valor ou particionamento de hash, usando uma função de hash diferente do U-SQL. Quando você produz os dados da tabela U-SQL, provavelmente só poderá mapear o particionamento de valor para o Spark e talvez seja necessário fazer um ajuste adicional do layout de dados, dependendo das consultas finais do Spark.
Próximos passos
- Compreender os conceitos de código do Spark para desenvolvedores U-SQL
- Atualize suas soluções de análise de big data do Azure Data Lake Storage Gen1 para o Azure Data Lake Storage Gen2
- .NET para Apache Spark
- Transformar dados usando a atividade do Spark no Azure Data Factory
- Transformar dados usando a atividade do Hadoop Hive no Azure Data Factory
- O que é Apache Spark em Azure HDInsight