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 – Para Que Serve? Tá cansado de discutir com os planilheiros de plantão que nunca conseguem chegar em um acordo sobre quais relatórios que estão com os dados corretos? ...
Data Warehouse – Modelagem Dimensional Modelagem dimensional é uma das técnicas e conhecimentos mais utilizados e mais importantes para modelar o Data Warehouse. Nos posts anteriores dessa ...
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...
Compartilhe: