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.
Este artigo descreve como usar o comando COPY INTO para carregar dados de um contêiner do Azure Data Lake Storage (ADLS) em sua conta do Azure em uma tabela no Databricks SQL.
As etapas neste artigo pressupõem que o seu administrador preparou um armazém de dados SQL para usar um principal de serviço Azure Databricks, de modo que poderá aceder aos seus ficheiros de origem no ADLS. Se o administrador configurou um local externo do Catálogo Unity com uma credencial de armazenamento, consulte Carregar dados usando COPY INTO com volumes do Catálogo Unity ou locais externos em vez disso. Se o administrador lhe tiver fornecido credenciais temporárias (um token SAS de Blob), siga os passos indicados em Carregar dados utilizando COPY INTO com credenciais temporárias em vez disso.
O Databricks recomenda o uso do comando COPY INTO para carregamento incremental e em massa de dados com o Databricks SQL.
Nota
COPY INTO Funciona bem para fontes de dados que contêm milhares de arquivos. O Databricks recomenda que você use o Auto Loader para carregar milhões de arquivos, o que não é suportado no Databricks SQL.
Antes de começar
Antes de carregar dados no Azure Databricks, verifique se você tem o seguinte:
- Acesso aos dados na ADLS. O administrador deve primeiro concluir as etapas em Configurar o acesso a dados para ingestão para que seu armazém SQL do Databricks possa ler seus arquivos de origem.
- Um armazém SQL Databricks.
- A permissão Pode gerenciar no SQL warehouse.
- O caminho para seus dados em um contêiner ADLS.
- Familiaridade com a interface de usuário Databricks SQL.
Etapa 1: confirmar o acesso aos dados no armazenamento em nuvem
Para confirmar que você tem acesso aos dados corretos no armazenamento de objetos na nuvem, faça o seguinte:
Na barra lateral, clique em Criar > consulta.
Na barra de menus do editor SQL, selecione um armazém SQL.
No editor SQL, cole o seguinte código:
select * from csv.<path>Substitua
<path>pelo caminho do contêiner ADLS que você recebeu do administrador. Por exemplo,abfss://<container>@<storage-account>.dfs.core.windows.net/<folder>.Clique em Executar.
Etapa 2: Criar uma tabela
Esta etapa descreve como criar uma tabela em seu espaço de trabalho do Azure Databricks para armazenar os dados de entrada.
No editor SQL, cole o seguinte código:
CREATE TABLE <catalog_name>.<schema_name>.<table_name> ( tpep_pickup_datetime TIMESTAMP, tpep_dropoff_datetime TIMESTAMP, trip_distance DOUBLE, fare_amount DOUBLE, pickup_zip INT, dropoff_zip INT );Clique em Executar.
Etapa 3: Carregar dados do armazenamento em nuvem na tabela
Esta etapa descreve como carregar dados de um contêiner ADLS na tabela em seu espaço de trabalho do Azure Databricks.
Na barra lateral, clique em Criar > consulta.
Na barra de menus do editor SQL, selecione um armazém SQL e certifique-se de que o armazém SQL está em execução.
No editor SQL, cole o código a seguir. Neste código, substitua:
-
<container>com o nome do seu contentor ADLS na sua conta de armazenagem. -
<storage-account>com o nome da sua conta de armazenamento ADLS. -
<folder>com o nome da pasta que contém os seus dados. -
<blob-sas-token>com o valor do Blob SAS token que recebeste do teu administrador.
COPY INTO <catalog-name>.<schema-name>.<table-name> FROM 'abfss://<container>@<storage-account>.dfs.core.windows.net/<folder>' FILEFORMAT = CSV FORMAT_OPTIONS ( 'header' = 'true', 'inferSchema' = 'true' ); SELECT * FROM <catalog-name>.<schema-name>.<table-name>;Nota
FORMAT_OPTIONSdifere deFILEFORMAT. Nesse caso, a opção instrui oheaderAzure Databricks a tratar a primeira linha do arquivo CSV como um cabeçalho, e as opções instruem oinferSchemaAzure Databricks a determinar automaticamente o tipo de dados de cada campo no arquivo CSV.-
Clique em Executar.
Nota
Se você clicar em Executar novamente, nenhum novo dado será carregado na tabela. Isso ocorre porque o comando processa
COPY INTOapenas o que considera ser novos dados.
Limpeza
Você pode limpar os recursos associados em seu espaço de trabalho se não quiser mais mantê-los.
Excluir as tabelas
Na barra lateral, clique em Criar > consulta.
Selecione um armazém SQL e certifique-se de que o armazém SQL está em execução.
Cole o seguinte código:
DROP TABLE <catalog-name>.<schema-name>.<table-name>;Clique em Executar.
Passe o cursor sobre a guia desta consulta e clique no ícone X .
Excluir as consultas no editor SQL
- Na barra lateral, clique em Editor SQL.
- Na barra de menus do editor SQL, passe o mouse sobre a guia para cada consulta criada para este tutorial e clique no ícone X .
Recursos adicionais
- O artigo de referência COPY INTO