Opções de formato de dados
O Databricks possui associações de palavras-chave integradas para todos os formatos de dados suportados nativamente pelo Apache Spark. O Databricks usa o Delta Lake como protocolo default para leitura e gravação de dados e tabelas, enquanto o Apache Spark usa Parquet. As seções a seguir descrevem as opções e configurações disponíveis quando você consulta cada formato de dados no Databricks.
A maioria dos formatos oferece suporte à compactação de gravação por meio da opção compression. Para os valores suportados para cada formato, consulte opções deDataFrameWriter. O Databricks também pode ler diretamente arquivos pré-compactados em muitos formatos, e você pode descompactar arquivos no Databricks, se necessário.
Para obter mais informações sobre Apache Spark fonte de dados, consulte Generic Load/Save Functions e Generic File Source Options.
Formatos de tabela abertos
Formatos de tabela que oferecem suporte a transações ACID, evolução do esquema e interoperabilidade entre mecanismos.
-
- Delta Lake
- O formato default para leitura e gravação de dados e tabelas no Databricks.
-
- Iceberg
- Leia e grave tabelas Iceberg e interopere com mecanismos Iceberg externos.
-
- Compartilhamento aberto
- Ler tabelas e dados compartilhados usando o protocolo de compartilhamento aberto.
Formatos colunares
Formatos colunares binários otimizados para desempenho de leitura analítica e compressão.
Formatos baseados em texto
Formatos legíveis por humanos para intercâmbio, configuração e registros com esquemas flexíveis ou em evolução.
-
- JSON
- Leia e grave arquivos JSON, incluindo opções para registros de várias linhas e inferência de esquema.
-
- CSV
- Ler e gravar arquivos de texto delimitados, com opções para cabeçalhos, delimitadores e registros malformados.
-
- XML
- Leia e grave arquivos XML especificando a tag de linha e o esquema.
-
- TEXT
- Leia e escreva arquivos de texto simples uma linha ou um arquivo de cada vez.
Formatos binários e especializados
Formatos de serialização binária e fontes de dados específicas do Databricks.
-
- AVRO
- Leia e grave arquivos Avro e trabalhe com cargas úteis codificadas em Avro na transmissão.
-
- Experimento MLflow
- Carregue dados de execução de experimento do MLflow usando a palavra-chave personalizada
mlflow-experiment.
Dados não estruturados
Formatos e tipos para armazenar e processar documentos, imagens, áudio e outros arquivos não estruturados.
-
- Trabalhar com dados não estruturados
- Armazene, governe e processe dados não estruturados, como documentos, imagens e áudio.
-
- binário
- Leia arquivos como registros binários brutos, incluindo imagens e outros dados não estruturados.
-
- Imagem
- Carregar dados de imagem para cargas de trabalho de Machine Learning. A Databricks recomenda carregar imagens como dados
binary.
-
- Arquivo
- Armazene uma referência governada para um arquivo não estruturado em vez de usar
BINARYouSTRING.
-
- Ingerir arquivos como o tipo FILE
- Ingira arquivos não estruturados em tabelas como referências de
FILEusando SQL, funções com valor de tabela e Auto Loader.
-
- Processar arquivos com UDFs
- Leia bytes de arquivo, extraia metadados de imagem e vídeo e gere arquivos derivados com UDFs.
-
- Início rápido das funções de ARQUIVO
- Comece a usar o tipo
FILEe suas funções no Databricks SQL e no Databricks Runtime.
Dados semiestruturados
Padrões e funções para trabalhar com dados aninhados e semiestruturados no lakehouse.
-
- Modelar dados semiestruturados
- Escolha entre Variant, strings JSON, structs e maps para armazenar dados semiestruturados.
-
- Variante
- Armazene dados semiestruturados usando o tipo
VARIANTpara leituras e gravações otimizadas.
-
- Transformar tipos de dados complexos
- Trabalhar com estruturas, matrizes e mapas no Apache Spark.
-
- Funções de ordem mais alta
- Transforme arrays e mapas usando funções de ordem mais alta integradas.