Opções de gravação serverless para conectores agrupados
Ao escrever para uma fonte de dados externa usando um conector empacotado em compute serverless, apenas um subconjunto de opções de conector é suportado. As tabelas a seguir listam as opções compatíveis por conector.
Para obter instruções e exemplos de configuração, consulte Fontes de dados do Spark.
PostgreSQL
As seguintes opções são suportadas ao gravar dados no PostgreSQL em compute serverless.
Opção | Descrição |
|---|---|
| Nome do hostname do servidor PostgreSQL. |
| Número de porta. default: |
| Nome da base de dados para conectar |
| Tempo máximo em segundos para aguardar uma conexão. |
| Nome de usuário do banco de dados. |
| Senha da base de dados. |
| Nome da tabela de destino. Suporta nomes qualificados por esquema (por exemplo, |
| Número de linhas a inserir por lote. default: |
| Número de partições do Spark para operações de gravação paralelas. |
| Tempo máximo em segundos para aguardar a conclusão de uma consulta. |
| Nível de isolamento de transação: |
| Se |
| Se |
SQL Server
As seguintes opções são suportadas ao gravar dados no SQL Server em compute serverless.
Opção | Descrição |
|---|---|
| Hostname da instância do SQL Server. |
| Número de porta. default: |
| Nome da base de dados para conectar |
| Tempo máximo em segundos para aguardar uma conexão. |
| Se |
| Se |
| Se |
| Nome de usuário do banco de dados. |
| Senha da base de dados. |
| Tipo de autenticação. Valores suportados: |
| Nome da tabela de destino. Suporta nomes qualificados por esquema (por exemplo, |
| Número de linhas a inserir por lote. default: |
| Número de partições do Spark para operações de gravação paralelas. |
| Tempo máximo em segundos para aguardar a conclusão de uma consulta. |
| Nível de isolamento de transação: |
| Se |
MySQL
As seguintes opções têm suporte ao gravar no MySQL em compute serverless.
Opção | Descrição |
|---|---|
| Hostname do servidor MySQL. |
| Número de porta. default: |
| Nome da base de dados para conectar |
| Tempo máximo em segundos para aguardar uma conexão. |
| Se |
| Se |
| Nome de usuário do banco de dados. |
| Senha da base de dados. |
| Nome da tabela de destino. Suporta nomes qualificados por esquema (por exemplo, |
| Número de linhas a inserir por lote. default: |
| Número de partições do Spark para operações de gravação paralelas. |
| Tempo máximo em segundos para aguardar a conclusão de uma consulta. |
| Nível de isolamento de transação: |
| Se |
| Se |
Snowflake
As seções a seguir listam as opções suportadas para o conector Snowflake, organizadas por função.
Conexão
As seguintes opções configuram a conexão com o Snowflake e controlam o comportamento da sessão.
Opção | Descrição |
|---|---|
| Snowflake account hostname (por exemplo, |
| Número de porta. default: |
| Identificador de account Snowflake. |
| Método de autenticação: |
| Tempo limite em segundos para operações de rede. |
| Fuso horário para operações de carimbo de data/hora (por exemplo, |
| Se |
| Se |
Autenticação
As opções a seguir fornecem credenciais para o método de autenticação configurado em sfauthenticator. Credenciais de staging (temporary_aws_*, awsaccesskey, temporary_azure_sas_token) são necessárias quando os estágios do Snowflake gravam dados por meio do armazenamento em nuvem.
Opção | Descrição |
|---|---|
| Nome de usuário do Snowflake. |
| Senha do Snowflake. Usado quando |
| Token de acesso OAuth. Usado quando |
| Chave privada no formato PEM para autenticação por par de chaves. Usado quando |
| ID da key de acesso temporária da AWS para o ambiente de preparação S3. Preferível a |
| Chave de acesso secreta temporária da AWS para o ambiente de preparação S3. |
| Token de sessão temporário da AWS para zoneamento S3. |
| Token temporário do Azure SAS para o ambiente de preparação do Azure Blob Storage. |
| Chave de acesso da AWS para o ambiente de preparação S3. |
| Chave secreta da AWS para o ambiente de preparação S3. |
Destino
As opções a seguir especificam o banco de dados Snowflake, o esquema, o warehouse e a tabela para gravação.
Opção | Descrição |
|---|---|
| Nome do banco de dados Snowflake. |
| Nome do esquema Snowflake. |
| Snowflake warehouse virtual utilizado para execução de query |
| Função Snowflake para a sessão. |
| Nome da tabela de destino. |
Comportamento de escrita
As seguintes opções controlam como os dados são gravados na tabela Snowflake de destino.
Opção | Descrição |
|---|---|
| Como as colunas do DataFrame são mapeadas para as colunas da tabela Snowflake: |
| Comportamento quando as colunas do DataFrame e da tabela não se alinham: |
| Se |
| Se |
| Se |
| Se |
Redshift
As seções a seguir listam as opções suportadas para o conector Redshift, organizadas por função.
Conexão
As seguintes opções configuram a conexão ao cluster do Redshift.
Opção | Descrição |
|---|---|
| Hostname de endpoint de cluster Redshift. |
| Número de porta. default: |
| Nome do banco de dados Redshift. |
| Tempo máximo em segundos para aguardar uma conexão. |
Autenticação
As seguintes opções configuram as credenciais para o Redshift e para o local de staging S3 que o Redshift usa durante as operações de escrita.
Opção | Descrição |
|---|---|
| Nome de usuário do Redshift. |
| Senha do Redshift. |
| ARN do IAM role que o Redshift usa para acessar o S3 para armazenamento temporário de dados. |
| ID da key de acesso temporária da AWS para o ambiente de preparação S3. Preferível a credenciais de longa duração. |
| Chave de acesso secreta temporária da AWS para o ambiente de preparação S3. |
| Token de sessão temporário da AWS para zoneamento S3. |
| Se |
Comportamento de escrita
As seguintes opções controlam como os dados são gravados na tabela do Redshift de destino, incluindo distribuição, chaves de classificação e formato de preparação.
Opção | Descrição |
|---|---|
| Nome da tabela de destino. Suporta nomes qualificados por esquema (por exemplo, |
| Número de linhas por inserção em lote. default: |
| Número de partições do Spark para operações de gravação paralelas. |
| Tempo máximo em segundos para aguardar a conclusão de uma consulta. |
| Nível de isolamento de transação: |
| Estilo de distribuição do Redshift: |
| Coluna a ser usada como chave de distribuição. É necessário quando |
| Especificação da chave de classificação para a tabela Redshift (por exemplo, |
| String escrita em arquivos CSV de preparação para representar valores de |
| Formato de arquivo de preparação: |
| Se |
Gravar em PostgreSQL no compute serverless
Este exemplo usa o modo append e recupera as credenciais de um Secret Scope do Databricks.
df.write \
.format("postgresql") \
.option("host", dbutils.secrets.get(scope="<scope>", key="<host>")) \
.option("port", "<port>") \
.option("database", "<database-name>") \
.option("dbtable", "<table-name>") \
.option("user", dbutils.secrets.get(scope="<scope>", key="<user>")) \
.option("password", dbutils.secrets.get(scope="<scope>", key="<password>")) \
.mode("append") \
.save()
Passos seguintes
- Spark fonte de dados: instruções de configuração, exemplos de código e uma comparação de estratégias de integração do Spark.
- Conexão JDBC: Use uma conexão do Unity Catalog com um driver JDBC para opções não suportadas por conectores integrados em ambientes serverless, ou para fontes de dados sem um conector integrado.
- Referência de opções da Spark API: Referência para o DataFrameReader, o DataFrameWriter e opções de transmissão para formatos de arquivo e fontes de transmissão.