Pular para o conteúdo principal

Adaptador Fabric

contractforge-fabric é o adaptador Microsoft Fabric Lakehouse para ContractForge.

O adaptador atual é um notebook estável e compatível com Fabric Lakehouse superfície. Ele pode renderizar, implantar e executar Fabric gerado notebooks para o subconjunto Lakehouse documentado e grava ContractForge evidência da tabela de controle nas tabelas Fabric Lakehouse Delta.

Validated Scope

  • Pacote: roda contractforge-fabric independente.
  • Subtarget: fabric_lakehouse.
  • Caminho de tempo de execução: Fabric REST comprovação, implantação de Notebook gerada, Notebook execute o envio e a classificação do trabalho do terminal.
  • Sources:
    • tabelas, visualizações, fontes de arquivos SQL e Lakehouse para renderização de notebook;
    • Lakehouse Fontes de arquivos text, orc, avro e xml com Fabric ativo evidência de expansão da fonte;
    • leituras de atalho interno OneLake com criação de atalho Fabric ao vivo e evidência de expansão da fonte;
    • rest_api limitado público/sem autenticação com USGS REST/GeoJSON ativo evidência de bronze para ouro;
    • público/sem autenticação http_json, http_csv e http_text com Fabric ao vivo evidência de expansão da fonte;
    • REST limitado autenticado com autenticação básica, token de portador, chave API e Espaços reservados para credenciais de cliente OAuth, além de http_json autenticado e http_csv com autenticação básica, token de portador e espaços reservados para chave API, Espaços reservados secretos {{ secret:scope/key }} e tempo de execução do Azure Key Vault resolução, com evidência de expansão de fonte Fabric ao vivo.
    • Autenticação básica, de portador e de chave API aplicada por endpoint em http_text, com live Evidência de expansão de origem Fabric.
    • Servidor SQL/Azure SQL JDBC e PostgreSQL JDBC com autenticação básica, {{ secret:scope/key }} espaços reservados de senha e resolução de tempo de execução do Azure Key Vault, com live Evidência de expansão de origem Fabric.
    • Azure Blob CSV object storage through a Fabric Spark-readable Ligação extensions.fabric.source_runtime_path. Blob público e direto Blob privado com uma chave de conta de armazenamento apoiada pelo Key Vault, ambos ativos Evidência de expansão de origem Fabric.
    • O atalho externo do Azure Blob lê através da criação de atalho nativo Fabric e uma conexão em nuvem Fabric AzureBlobs com credenciais principais, com transmissão ao vivo Evidência de expansão de origem Fabric.
    • O atalho ADLS Gen2 externo lê a criação de atalho Fabric nativo e uma conexão de nuvem Fabric AzureDataLakeStorage com credenciais principais, com evidência de expansão de fonte Fabric ao vivo.
    • O atalho externo do Google Cloud Storage lê o atalho nativo Fabric criação e uma conexão em nuvem Fabric GoogleCloudStorage com Basic HMAC credenciais, com evidências de expansão de origem Fabric ao vivo.
    • O atalho externo do Amazon S3 lê a criação de atalhos nativos do Fabric e uma conexão em nuvem Fabric AmazonS3 com credenciais de usuário básicas IAM, com evidência de expansão de fonte Fabric ao vivo.
    • O atalho externo compatível com S3 lê o atalho nativo do Fabric criação e um Fabric AmazonS3Conexão em nuvem compatível com IAM básico credenciais de usuário, com evidências de expansão de origem Fabric em tempo real.
    • Leituras de atalhos da tabela ADLS Gen2, Amazon S3 e Google Cloud Storage Iceberg através da criação de atalho nativo Fabric em Tables, Fabric Virtualização Iceberg para Delta e source.type: iceberg_table, com evidência de expansão de fonte Fabric ao vivo.
    • Reprodução limitada e ponto de verificação do Confluent Cloud Kafka disponíveis agora atualização com a configuração SASL apoiada pelo Key Vault, com Fabric ativo evidência de expansão de fonte.
    • Azure Event Hubs por meio de seu endpoint compatível com Kafka com ponto de verificação atualização disponível agora e configuração SASL apoiada pelo Key Vault, com live Evidência de expansão de origem Fabric.
  • Modos de gravação: append, overwrite, upsert, hash_diff_upsert, historical e snapshot_reconcile_soft_delete.
  • Qualidade: colunas obrigatórias, não nulas, chaves exclusivas, valores aceitos, mínimo linhas, proporção máxima de nulos e portas de expressão.
  • Forma e transformações: análise JSON, explosão de matriz/explode_outer, coluna projetar, nivelar, converter, padronizar, derivar, chaves compostas e deterministic deduplication.
  • Evidência: sondagens de tabela de controle ao vivo validam execuções, erros, qualidade, esquema, metadados de origem, linhagem, explicação, estado, operações, anotações e acesso revisar evidências.

Evidência

Os principais manifestos de evidências são:

Caminhos limitados e disponíveis agora do Kafka, incluindo o Event Hubs compatível com Kafka caminho disponível agora, tenha evidências de expansão de origem Fabric em tempo real.

O conjunto de superfície estável é apenas contratual e usa fontes SQL para isolar semântica de tempo de execução/gravação/evidência da disponibilidade do conector externo. O USGS o projeto valida o caminho de origem público do REST do bronze para a prata e para o ouro.

Pré-requisitos de tempo de execução

  • Espaço de trabalho Microsoft Fabric na capacidade Fabric suportada.
  • Permissões de contribuidor/leitura/gravação/execução do espaço de trabalho para itens do Notebook.
  • Um item Lakehouse configurado no ambiente.
  • Um pool Spark padrão que se ajusta à capacidade. No espaço de trabalho validado FTL4, um pequeno pool personalizado de nó único foi necessário para evitar TooManyRequestsForCapacity.
  • Autenticação Azure CLI para o inquilino utilizado pelo espaço de trabalho.
  • Para rascunhos HTTP/REST autenticados, acesso ao Azure Key Vault a partir do Fabric tempo de execução do notebook através do notebookutils.credentials.getSecret, com environment.secrets.vault_url ou environment.secrets.scopes.<scope> configured.
  • Para rascunhos de armazenamento de objetos, um caminho de origem legível por Fabric declarado por meio extensions.fabric.source_runtime_path, such as a reviewed Lakehouse atalho, caminho de arquivo Lakehouse preparado ou URI de armazenamento de objeto direto Spark. Direto O Blob privado do Azure CSV também pode declarar extensions.fabric.storage_account_key_secret com um {{ secret:scope/key }} Key Vault placeholder; generated notebooks resolve a chave e defina o fs.azure.account.key.<account>.blob.core.windows.net do Spark configuration before reading.
  • Para rascunhos de atalho externos do Azure Blob, um ID de conexão em nuvem Fabric é obrigatório. Projetos validados fumam declaram isso através fabric_setup.shortcuts e parâmetros de ambiente como parameters.fabric.connections.azure_blob_shortcut_connection_id.
  • Para rascunhos de atalho ADLS Gen2 externos, uma nuvem Fabric AzureDataLakeStorage ID de conexão é obrigatório. A smoke validada usa credenciais de chave armazenadas em a conexão Fabric e resolve parameters.fabric.connections.adls_shortcut_connection_id em fabric_setup.shortcuts.
  • Para rascunhos de atalhos externos do Google Cloud Storage, um Fabric O ID de conexão em nuvem do GoogleCloudStorage é obrigatório. A smoke validada usa Credenciais básicas do HMAC armazenadas na conexão Fabric e resolvem parameters.fabric.connections.gcs_shortcut_connection_id em fabric_setup.shortcuts.
  • Para rascunhos de atalhos externos do Amazon S3, um ID de conexão em nuvem Fabric AmazonS3 é necessário. A smoke validada usa credenciais de usuário básicas do IAM armazenadas no Conexão Fabric e o projeto resolve parameters.fabric.connections.amazon_s3_shortcut_connection_id em fabric_setup.shortcuts.
  • Para rascunhos de atalhos externos compatíveis com S3, uma nuvem Fabric AmazonS3Compatible ID de conexão é obrigatório. A smoke validada usa o usuário Basic IAM credenciais armazenadas na conexão Fabric, e o projeto resolve parameters.fabric.connections.s3_compatible_shortcut_connection_id em fabric_setup.shortcuts.
  • Para rascunhos de atalho da tabela Iceberg, o atalho deve ser criado diretamente em Tables e aponte para uma pasta da tabela Iceberg contendo metadata/ e data/. Os cigarros validados usam source.type: iceberg_table após Fabric virtualiza ADLS Gen2, Amazon S3 e Google Cloud Storage Iceberg folders as Lakehouse tables.
  • Para rascunhos Kafka, configuração SASL através de um {{ secret:scope/key }} Espaço reservado do Key Vault. O caminho Confluent Kafka limitado e validado usa Leitor de lote do Spark com starting_offsets: earliest e ending_offsets: latest; o caminho validado disponível agora usa Spark Streaming estruturado com trigger(availableNow=True) e um declarado checkpoint_location. O caminho validado do Azure Event Hubs usa o mesmo Formato do leitor Spark compatível com Kafka em relação ao terminal Event Hubs Kafka e a Key Vault-backed JAAS configuration.
  • Para projetos de aplicação de governança nativa Fabric, os contratos devem declarar explícito IDs Fabric em extensions.fabric.access_apply. O adaptador pode planejar e executar atribuições de função de espaço de trabalho por meio do Fabric workspaces/{workspaceId}/roleAssignments API e rótulos de sensibilidade de item através do administrador Fabric items/bulkSetLabels API. Também pode ser aplicado funções explícitas de acesso a dados OneLake por meio do Fabric items/{itemId}/dataAccessRoles visualiza API quando o contrato fornece o ID do item Lakehouse nativo, membros da função e regras de decisão. Evidência ao vivo valida criação/lista/exclusão de função para uma política básica de leitura de caminho/ação e restrições de linha/coluna em uma tabela Lakehouse resolvida por Fabric, com limpar. As funções genéricas de filtro de linha ContractForge não são traduzidas automaticamente em predicados OneLake SQL; os contratos devem declarar explícito nativo do Fabric Cargas úteis da política OneLake para o modo de aplicação.
  • Para promoção de projeto somente de implantação, contractforge-fabric deploy-project renderiza um manifesto determinístico de implantação do projeto e pode criar/atualizar gerou definições de item de notebook sem executar os notebooks. O pipeline de implantação e as configurações do Git podem ser registrados em project.deployment.fabric para revisão da promoção. Leitura do pipeline de implantação no nível do locatário, criar/listar/excluir ciclo de vida e promoção de conteúdo do notebook estágio a estágio probes tiveram sucesso na limpeza. A smoke da promoção do stage promoveu um notebook de superfície estável gerado do espaço de trabalho Manager para um temporário espaço de trabalho de destino, verificou o item do estágio de destino, excluiu o item promovido, cancelou a atribuição de ambos os estágios, excluiu o pipeline e excluiu o destino temporário espaço de trabalho. A integração do Git e a promoção do ciclo de vida do Data Factory permanecem fora do atual escopo estável do primeiro notebook.

Exclusões finais estáveis

Os itens a seguir não são intencionalmente reivindicados como comportamento estável:

  • OAuth para tipos de origem de arquivo HTTP. OAuth atualmente não faz parte do Vocabulário fonte do arquivo HTTP;
  • Private-network shortcut variants, managed identity/OAuth object-storage acesso, compartilhamento Delta, variantes Iceberg de catálogo direto e modos nativos Event Hubs/Fabric Real-Time/Eventstream além do validado Caminhos limitados e disponíveis agora compatíveis com Kafka;
  • Concessões de tabela Fabric/Purview, filtros de linha, máscaras de coluna e metadados mais amplos modo de aplicação além da atribuição explícita de função do espaço de trabalho, rótulo de confidencialidade e Função de acesso a dados OneLake APIs com regras de decisão explícitas nativas do Fabric;
  • semântica de bloqueio concorrente além do SQL de lock Delta gerado;
  • implantação de pipeline de Data Factory ao vivo e certificação de integração Git;
  • paridade em todo o adaptador além do subconjunto documentado do notebook primeiro.

O relatório de paridade compartilhada agora inclui Fabric no mesmo formato legível por máquina conjunto de cenários usado para Databricks, AWS, Snowflake, Fabric e GCP. Isso fecha a lacuna de relatórios de paridade, mas não amplia a reivindicação estável além do subconjunto validado com notebooks primeiro.

CLI

Fabric segue o vocabulário de comando do adaptador padronizado em Adaptador CLI. Sinalizadores específicos do Fabric, como --max-attempts, --retry-after-seconds e verificações de simulação permanecem opções de plataforma sob o nomes de comandos canônicos.

stabilization-report --strict-final retorna zero para o documentado reivindicação notebook-first stable-final. As exclusões acima permanecem obrigatórias para revisão a menos que provas separadas sejam anexadas.