Pular para o conteúdo principal

Referência do conector do Microsoft SharePoint

Esta página contém material de referência para o conector do SharePoint Microsoft em Databricks LakeFlow Connect.

sharepoint_options parâmetros

Defina estas opções dentro do bloco connector_options.sharepoint_options de cada tabela na sua definição de pipeline.

Parâmetro

Tipo

Obrigatório

Descrição

entity_type

String

Sim

Tipo de entidade para ingestão. Valores compatíveis: FILE (ingerir conteúdo do arquivo e metadados), FILE_METADATA (ingerir apenas metadados, sem baixar o conteúdo do arquivo).

url

String

Sim

O URL do site, subsites, drive ou pasta do SharePoint a ser ingerido. Exemplos:

  • https://<tenant>.sharepoint.com/sites/<site>
  • https://<tenant>.sharepoint.com/sites/<site>/<folder>

Consulte Ler arquivos do SharePoint para obter detalhes do formato do URL.

file_ingestion_options

Objeto

Sim

Controla o formato de arquivo e o comportamento de ingestão. Consulte file_ingestion_options parâmetros.

Parâmetrosfile_ingestion_options

Configure essas opções dentro de sharepoint_options.file_ingestion_options.

Parâmetro

Tipo

Obrigatório

Descrição

format

String

Sim

O formato de arquivo para ingestão. Valores suportados: BINARYFILE, CSV, JSON, XML, EXCEL, PARQUET, AVRO, ORC. Utilize BINARYFILE para ingestão não estruturada (PDFs, arquivos do Office, imagens). Utilize um formato estruturado para analisar o conteúdo de arquivos em linhas.

file_filters

Matriz de objetos

Não

Filtros que restringem quais arquivos devem ser ingeridos. Cada objeto de filtro pode conter uma das seguintes chaves:

  • path_filter (string): Um padrão de glob correspondente a caminhos de arquivo. Com base no filtro de glob de caminho do Spark.
  • modified_before (string): Um carimbo de data/hora no formato YYYY-MM-DDTHH:mm:ss. Apenas arquivos modificados antes deste horário são ingeridos.
  • modified_after (string): Um carimbo de data/hora no formato YYYY-MM-DDTHH:mm:ss. Somente arquivos modificados após este horário são ingeridos.

schema_evolution_mode

String

Não

Controla como novas colunas em arquivos recebidos são tratadas. Os modos correspondem aos modos de evolução do esquema do Auto Loader. Valores compatíveis: ADD_NEW_COLUMNS_WITH_TYPE_WIDENING (default), ADD_NEW_COLUMNS, RESCUE, FAIL_ON_NEW_COLUMNS, NONE.

schema_hints

String

Não

Substitui os tipos de coluna inferidos. Especifique como uma lista delimitada por vírgulas de pares column_name TYPE, por exemplo, order_id INT, amount DOUBLE. Consulte Substitua a inferência de esquema com dicas de esquema.

format_options

Objeto

Não

Opções de análise específicas do formato. Keys são nomes de opção de formato padrão do Auto Loader. Consulte Opções de formato.

table_configuration parâmetros

Configure estas opções dentro do bloco table_configuration de cada tabela na sua definição de pipeline. table_configuration é um elemento par de connector_options, não aninhado nele.

Parâmetro

Tipo

Obrigatório

Descrição

storage_mode

String

Não

O modo de armazenamento para a tabela de destino. Valores compatíveis:

  • SCD_TYPE_1 (default para BINARYFILE): Substitui registros quando os arquivos são alterados ou excluídos.
  • APPEND_ONLY (default para formatos estruturados): Anexa novas linhas de arquivos novos ou atualizados.

Como estes são os padrões e os únicos valores suportados, definir storage_mode explicitamente é opcional. Não utilize o campo scd_type — ele gera um erro.

Opções de formato

O bloco format_options aceita chaves de opção de formato padrão do Auto Loader, organizadas abaixo por formato de arquivo. Para obter todos os detalhes sobre qualquer opção, consulte Auto Loader.

JSON

Chave

Descrição

allowBackslashEscapingAnyCharacter

Permite que barras invertidas escapem qualquer caractere.

allowComments

Permite comentários no estilo Java e C++ no conteúdo JSON.

allowNonNumericNumbers

Permite NaN e Infinity como valores flutuantes válidos.

allowNumericLeadingZeros

Permite zeros à esquerda em valores inteiros.

allowSingleQuotes

Permite aspas simples como delimitadores de strings além de aspas duplas.

allowUnquotedControlChars

Permite caracteres de controle sem aspas em strings JSON.

allowUnquotedFieldNames

Permite nomes de campo sem aspas.

badRecordsPath

Caminho para armazenar registros corrompidos ou não analisáveis em vez de falhar o pipeline.

charset / encoding

Codificação de caracteres do arquivo (por exemplo, UTF-8, ISO-8859-1).

dateFormat

Padrão para analisar strings de data (por exemplo, yyyy-MM-dd).

dropFieldIfAllNull

Ignora colunas em que todos os valores são nulos ou vazios durante a inferência do esquema.

inferTimestamp

Infere TimestampType para strings que correspondem a um padrão de carimbo de data/hora.

lineSep

Caractere ou string de separador de linha.

locale

Localidade para analisar datas e números (por exemplo, en-US).

mode

Comportamento para registros malformados: PERMISSIVE (default), DROPMALFORMED ou FAILFAST.

multiLine

Analisa registros que abrangem várias linhas.

prefersDecimal

Tenta inferir DecimalType em vez de FloatType ou DoubleType quando possível.

primitivesAsString

Infera todos os valores primitivos como StringType.

readerCaseSensitive

Habilita a correspondência de nomes de coluna com diferenciação de maiúsculas e minúsculas em relação ao esquema.

timestampFormat

Padrão para analisar cadeias de caracteres de carimbo de data/hora (por exemplo, yyyy-MM-dd'T'HH:mm:ss).

timeZone

Fuso horário para análise de carimbos de data/hora (por exemplo, UTC, America/New_York).

CSV

Suporta todas as opções JSON acima, além das seguintes opções específicas do CSV:

Chave

Descrição

charToEscapeQuoteEscaping

Caractere de escape usado antes de um caractere de aspas dentro de um campo entre aspas.

comment

Caractere que marca uma linha como um comentário; as linhas que começam com este caractere são ignoradas.

delimiter / sep

Caractere delimitador de coluna (default: ,).

emptyValue

String a ser utilizada para valores vazios na escrita.

enforceSchema

Aplica o esquema declarado aos dados CSV, ignorando os cabeçalhos.

escape

Caractere de escape (default: \).

header

Se a primeira linha contém nomes de coluna (default: false).

ignoreLeadingWhiteSpace

Remover espaços em branco iniciais dos valores.

ignoreTrailingWhiteSpace

Apara espaços em branco à direita dos valores.

maxCharsPerColumn

Número máximo de caracteres permitidos por valor da coluna.

maxColumns

Número máximo de colunas permitidas em um registro.

mergeSchema

Mescla o esquema em vários arquivos CSV.

nanValue

Representação de string de NaN.

negativeInf

Representação de string do infinito negativo.

nullValue

Representação de string de um valor nulo.

parserCaseSensitive

Habilita a correspondência com diferenciação de maiúsculas e minúsculas entre nomes de cabeçalho e nomes de campos do esquema.

positiveInf

Representação de string do infinito positivo.

preferDate

Infere DateType para strings de data em vez de TimestampType.

quote

O caractere de aspas utilizado para envolver os valores de campo que contêm o delimitador (default: ").

skipRows

O número de linhas a serem ignoradas no início do arquivo antes do cabeçalho ou dos dados.

unescapedQuoteHandling

A forma de lidar com caracteres de citação sem escape dentro de campos entre aspas.

XML

Chave

Descrição

arrayElementName

Nome do elemento XML que envolve cada item da matriz ao escrever.

attributePrefix

Prefixo adicionado aos nomes de atributos XML para distingui-los dos nomes de elementos (default: _).

compression

Codec de compressão para leitura (por exemplo, gzip, bzip2).

declaration

String de declaração XML a ser adicionada antes ao gravar.

encoding

Codificação de caracteres do arquivo XML.

excludeAttribute

Exclui atributos de elemento XML da análise.

ignoreSurroundingSpaces

Ignora espaços em branco ao redor dos valores dos elementos.

ignoreNamespace

Ignora prefixos de namespace XML durante a análise.

locale

Localidade para análise de datas e números

mode

Comportamento para registros malformados: PERMISSIVE, DROPMALFORMED ou FAILFAST.

nullValue

Representação de string de um valor nulo.

rootTag

Nome da tag do elemento raiz.

rowTag

Tag de elemento XML que identifica cada linha (obrigatório).

rowValidationXSDPath

Caminho para um arquivo de esquema XSD para validar cada elemento de linha.

samplingRatio

Fração de linhas amostradas para inferência de esquema (default: 1.0).

timestampFormat

Padrão para análise de strings de timestamp.

timestampNTZFormat

Padrão para analisar strings de carimbo de data/hora sem fuso horário.

timeZone

Fuso horário para analisar carimbos de data/hora.

validateName

Valida que os nomes dos elementos XML estão em conformidade com a especificação XML.

valueTag

Nome da tag usado para valores de texto em elementos que também possuem atributos (default: _VALUE).

Parquet

Chave

Descrição

datetimeRebaseMode

Manipulação para datas e carimbos de data/hora escritas no formato de calendário Juliano: EXCEPTION, CORRECTED ou LEGACY.

int96RebaseMode

Controle de valores de carimbo de data/hora INT96 escritos no formato de calendário Juliano: EXCEPTION, CORRECTED ou LEGACY.

mergeSchema

Merge o esquema em vários arquivos Parquet.

Avro

Chave

Descrição

avroSchema

Esquema Avro em formato de string JSON. Serve para impor um esquema específico durante leituras.

datetimeRebaseMode

Manipulação para datas e carimbos de data/hora escritas no formato de calendário Juliano: EXCEPTION, CORRECTED ou LEGACY.

mergeSchema

Mesclar o esquema em vários arquivos Avro.

Formato de dados ingeridos

O esquema da tabela de destino depende dos entity_type e format que configurar.

BINARYFILE tipo de entidade (arquivo)

Quando entity_type for FILE e format for BINARYFILE, cada arquivo ingerido torna-se uma linha com as seguintes colunas:

campo

Tipo

Descrição

file_id

String

O identificador exclusivo do SharePoint do arquivo.

file_metadata

Struct

Contém metadados genéricos do arquivo:

  • name (string): O nome do arquivo, conforme ele aparece no SharePoint.
  • size_in_bytes (bigint): O tamanho do arquivo.
  • created_timestamp (timestamp): A data e hora em que o arquivo foi criado no SharePoint.
  • last_modified_timestamp (timestamp): A data e hora em que o arquivo foi modificado pela última vez no SharePoint.
  • created_by_email (string): O endereço de e-mail do usuário que criou o arquivo. Poderá ser nulo caso não esteja disponível.
  • last_modified_by_email (string): O endereço de email do último usuário que modificou o arquivo. Poderá ser nulo caso não esteja disponível.

_file_metadata

Struct

Contém metadados específicos do SharePoint para o arquivo:

  • site_id (string): O identificador do site do SharePoint.
  • drive_id (string): O identificador da unidade do SharePoint.
  • file_folder_path (string): O caminho do arquivo no SharePoint (por exemplo, /drives/d1/root:/folder1).
  • quick_xor_hash (string): Um hash personalizado fornecido pela Microsoft que pode ser usado para validar se o conteúdo baixado está correto. Este valor pode ser NULL (por exemplo, se o formato não suportar hash). Consulte Trechos de Código: Algoritmo QuickXorHash na documentação da Microsoft.
  • mime_type (string): O tipo MIME (formato) do arquivo.
  • web_url (string): Um link para o arquivo no SharePoint.

content

Struct

Contém o conteúdo do arquivo. A Databricks não recomenda o acesso direto a essa estrutura. Em vez disso, acesse-a usando os UDFs no caso de uso do Downstream RAG.

_metadata

Struct

Metadados de arquivo padrão adicionados por Databricks durante a ingestão. Contém informações do arquivo de origem, como caminho e hora da modificação.

Tipo de entidade estruturada (arquivo com formato estruturado)

Quando entity_type for FILE e format for um formato estruturado (CSV, JSON, XML, EXCEL, PARQUET, AVRO ou ORC), o esquema da tabela de destino corresponde ao esquema dos arquivos de origem. As colunas são inferidas a partir do conteúdo do arquivo, sujeito às configurações schema_evolution_mode e schema_hints.

Tipo de entidade FILE_METADATA

Quando entity_type é FILE_METADATA, o conteúdo do arquivo não é baixado. A tabela de destino contém apenas as colunas de metadados das structs file_metadata e _file_metadata descritas acima, mais file_id.