Surrogate Key

Em um banco de dados, as chaves são usadas para identificar as linhas de uma tabela e fazer as conexões entre elas. No Data Warehouse, temos a Surrogate Key nas dimensões, que é a chave utilizada para conectar a tabela na fato.

A Surrogate Key nada mais é que o campo de Primary Key da dimensão.

O que é uma Primary Key?

É a coluna utilizada para identificar cada linha na tabela de forma única. Quando você define uma coluna para ser Primary Key, está garantindo que a integridade dos dados não vai ser corrompida, porque ela deve ser sempre única, não repetindo em mais de uma linha.

 

Então o que é a Surrogate Key?

A Surrogate Key é uma chave artificial e auto incremental.

A palavra artificial vem do tipo, porque ela não existe em lugar nenhum, não está lá no transacional como a Natural Key, ela é criada no Data Warehouse.

E é auto incremental porque toda vez que é chamada, troca de número, então ela começa com 1 e vai indo para 2, 3, 4, e assim por diante.

Por exemplo:

Aqui temos uma dimensão de produto, com seus atributos e as chaves, a Surrogate Key, que é a chave auto incremental, e a Natural Key, que vem do legado.

E ela não é reutilizável. Se toda vez que você carregasse a dimensão fosse reutilizar ela, viraria uma zona e você não saberia mais o que está acontecendo.

Resumindo: ela é a famosa sequence do banco de dados ou a sequência no Excel.

Uma Surrogate Key nada mais é que um campo com as características de uma Primary Key, e é gerada automaticamente na hora da carga, quando você carrega a dimensão no ETL.

Na fato, essa Surrogate Key vai ser uma Foreign Key, a chave que serve para relacionar os dados entre duas tabelas, sempre apontando para uma Primary Key em outra tabela, que no caso da dimensão, vai ser a Surrogate Key.

Assim, a tabela fato receberá apenas o código da Surrogate Key da linha que ela está referenciando e não os atributos.

Por exemplo, se ela for referenciar o segundo produto do exemplo anterior, usará o código 2.

CONCLUSÃO:

A Surrogate Key

  • tem as características de uma Primary Key.
  • é utilizada para referenciar a dimensão na fato
  • é auto incremental
  • é uma chave artificial
  • é criada no Data Warehouse
  • não pode se repetir

Siga nas redes sociais:

7 Passos Para Construir um Data Warehouse

Clique no botão abaixo e entenda Como Construir um Data Warehouse em 7 Passos

Autor:

Rafael Piton

Rafael Piton

Rafael é arquiteto de BI e Big Data. É criador do BI Academy e do BI Summit, autor do livro Data Warehouse Passo a Passo e fundador da Raizzer.

Leia mais:

Data Warehouse – O que é Tabela Fato (e seus tipos)   O QUE É TABELA FATO A tabela fato é a principal tabela do Data Warehouse, ela vai conectar nas dimensões. Nessa tabela são armazenadas duas coi...
Tabela Dimensão: os 5 tipos que você deve conhecer   Saber qual tabela dimensão você deve usar é fundamental para conseguir entrar para o time dos Data Warehouse Designers. E existem 5 tipos de qu...
Data Warehouse – Passo a Passo para Modelar um Data Warehouse Quer saber o segredo para, ao invés de demorar 6 meses na entrega de um Data Warehouse, levar 1 mês só? O Agile Data Warehouse Design é uma metodologi...
Compartilhe: