From abe5425de38786e056dc46b11c1f0997668e73c4 Mon Sep 17 00:00:00 2001 From: Luiz Eduardo Date: Tue, 17 Dec 2024 15:55:21 -0300 Subject: [PATCH] =?UTF-8?q?Adicionar=20ultimas=20atualiza=C3=A7oes=202024?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...r_tse_eleicoes__detalhes_votacao_secao.sql | 12 +- .../br_tse_eleicoes__partidos.sql | 15 +- ..._tse_eleicoes__perfil_eleitorado_secao.sql | 13 +- .../br_tse_eleicoes__vagas.sql | 15 +- models/br_tse_eleicoes/schema.yml | 129 +++++++++++++++--- 5 files changed, 132 insertions(+), 52 deletions(-) diff --git a/models/br_tse_eleicoes/br_tse_eleicoes__detalhes_votacao_secao.sql b/models/br_tse_eleicoes/br_tse_eleicoes__detalhes_votacao_secao.sql index bb5824a0..ece932f5 100644 --- a/models/br_tse_eleicoes/br_tse_eleicoes__detalhes_votacao_secao.sql +++ b/models/br_tse_eleicoes/br_tse_eleicoes__detalhes_votacao_secao.sql @@ -1,16 +1,12 @@ {{ config( - schema='br_tse_eleicoes', - alias = 'detalhes_votacao_secao', - materialized='table', + schema="br_tse_eleicoes", + alias="detalhes_votacao_secao", + materialized="table", partition_by={ "field": "ano", "data_type": "int64", - "range": { - "start": 1994, - "end": 2024, - "interval": 2 - } + "range": {"start": 1994, "end": 2024, "interval": 2}, }, cluster_by=["sigla_uf"], ) diff --git a/models/br_tse_eleicoes/br_tse_eleicoes__partidos.sql b/models/br_tse_eleicoes/br_tse_eleicoes__partidos.sql index d77076b1..8ab63e5b 100644 --- a/models/br_tse_eleicoes/br_tse_eleicoes__partidos.sql +++ b/models/br_tse_eleicoes/br_tse_eleicoes__partidos.sql @@ -1,25 +1,22 @@ {{ config( - schema='br_tse_eleicoes', - alias = 'partidos', - materialized='table', + schema="br_tse_eleicoes", + alias="partidos", + materialized="table", partition_by={ "field": "ano", "data_type": "int64", - "range": { - "start": 1990, - "end": 2024, - "interval": 2 - } + "range": {"start": 1990, "end": 2024, "interval": 2}, }, cluster_by=["sigla_uf"], ) }} - select safe_cast(ano as int64) ano, safe_cast(turno as int64) turno, + safe_cast(id_eleicao as string) id_eleicao, safe_cast(tipo_eleicao as string) tipo_eleicao, + safe_cast(data_eleicao as string) data_eleicao, safe_cast(sigla_uf as string) sigla_uf, safe_cast(id_municipio as string) id_municipio, safe_cast(id_municipio_tse as string) id_municipio_tse, diff --git a/models/br_tse_eleicoes/br_tse_eleicoes__perfil_eleitorado_secao.sql b/models/br_tse_eleicoes/br_tse_eleicoes__perfil_eleitorado_secao.sql index deba29a2..c9eb12e5 100644 --- a/models/br_tse_eleicoes/br_tse_eleicoes__perfil_eleitorado_secao.sql +++ b/models/br_tse_eleicoes/br_tse_eleicoes__perfil_eleitorado_secao.sql @@ -1,21 +1,16 @@ {{ config( - schema='br_tse_eleicoes', - alias = 'perfil_eleitorado_secao', - materialized='table', + schema="br_tse_eleicoes", + alias="perfil_eleitorado_secao", + materialized="table", partition_by={ "field": "ano", "data_type": "int64", - "range": { - "start": 2008, - "end": 2024, - "interval": 2 - } + "range": {"start": 2008, "end": 2024, "interval": 2}, }, cluster_by=["sigla_uf"], ) }} - select safe_cast(ano as int64) ano, safe_cast(sigla_uf as string) sigla_uf, diff --git a/models/br_tse_eleicoes/br_tse_eleicoes__vagas.sql b/models/br_tse_eleicoes/br_tse_eleicoes__vagas.sql index a5cb8650..2569b74d 100644 --- a/models/br_tse_eleicoes/br_tse_eleicoes__vagas.sql +++ b/models/br_tse_eleicoes/br_tse_eleicoes__vagas.sql @@ -1,24 +1,21 @@ {{ config( - schema='br_tse_eleicoes', - alias = 'vagas', - materialized='table', + schema="br_tse_eleicoes", + alias="vagas", + materialized="table", partition_by={ "field": "ano", "data_type": "int64", - "range": { - "start": 1994, - "end": 2024, - "interval": 2 - } + "range": {"start": 1994, "end": 2024, "interval": 2}, }, cluster_by=["sigla_uf"], ) }} - select safe_cast(ano as int64) ano, + safe_cast(id_eleicao as string) id_eleicao, safe_cast(tipo_eleicao as string) tipo_eleicao, + safe_cast(data_eleicao as date) data_eleicao, safe_cast(sigla_uf as string) sigla_uf, safe_cast(id_municipio as string) id_municipio, safe_cast(id_municipio_tse as string) id_municipio_tse, diff --git a/models/br_tse_eleicoes/schema.yml b/models/br_tse_eleicoes/schema.yml index 451849c8..3c96163e 100644 --- a/models/br_tse_eleicoes/schema.yml +++ b/models/br_tse_eleicoes/schema.yml @@ -525,12 +525,25 @@ models: description: Número de comparecimentos - name: data_eleicao description: Data da eleição + tests: + - relationships: + to: ref('br_bd_diretorios_data_tempo__data') + field: data.data - name: id_eleicao description: ID Eleição - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: proporcao_comparecimento description: Proporção de comparecimento - name: proporcao_votos_brancos @@ -545,6 +558,11 @@ models: description: Seção eleitoral - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: tipo_eleicao description: Tipo da eleição - name: turno @@ -576,7 +594,7 @@ models: - cargo - numero - not_null_proportion_multiple_columns: - at_least: 0.95 + at_least: 0.03 columns: - name: ano description: Ano @@ -596,8 +614,17 @@ models: description: ID Eleição - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: nome description: Nome - name: nome_coligacao @@ -616,6 +643,11 @@ models: description: Sigla da federação - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: situacao_legenda description: Situação da legenda - name: tipo_agremiacao @@ -628,7 +660,7 @@ models: description: Perfil eleitorado a nível de local de votação. tests: - not_null_proportion_multiple_columns: - at_least: 0.95 + at_least: 0.60 columns: - name: ano description: Ano @@ -646,8 +678,17 @@ models: description: Endereço - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: latitude description: Latitude - name: longitude @@ -660,6 +701,11 @@ models: description: Seção eleitoral - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: situacao description: Situação - name: situacao_localidade @@ -686,14 +732,19 @@ models: - dbt_utils.unique_combination_of_columns: combination_of_columns: - ano + - sigla_uf - id_municipio_tse + - situacao_biometria - zona - - estado_civil - genero + - estado_civil - grupo_idade - instrucao + - eleitores + - eleitores_biometria + - eleitores_deficiencia - not_null_proportion_multiple_columns: - at_least: 0.95 + at_least: 0.75 columns: - name: ano description: Ano @@ -715,12 +766,26 @@ models: description: Grupo de idade - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: instrucao description: Instrução - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: situacao_biometria description: Situação da biometria - name: zona @@ -728,18 +793,8 @@ models: - name: br_tse_eleicoes__perfil_eleitorado_secao description: Perfil eleitorado a nível de seção eleitoral. tests: - - dbt_utils.unique_combination_of_columns: - combination_of_columns: - - ano - - id_municipio_tse - - zona - - secao - - estado_civil - - genero - - grupo_idade - - instrucao - not_null_proportion_multiple_columns: - at_least: 0.95 + at_least: 0.60 columns: - name: ano description: Ano @@ -763,14 +818,28 @@ models: description: Grudo de idade - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: instrucao description: Instrução - name: secao description: Seção eleitoral - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: situacao_biometria description: Situação da biometria - name: zona @@ -1419,8 +1488,17 @@ models: description: ID Eleição - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: numero_candidato description: Número do candidato - name: numero_partido @@ -1596,8 +1674,17 @@ models: description: ID Eleição - name: id_municipio description: ID Município - IBGE 7 Dígitos + tests: + - relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio - name: id_municipio_tse description: ID Município - TSE + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__municipio') + field: id_municipio_tse + ignore_values: ['73709'] - name: numero_partido description: Número do partido - name: secao @@ -1628,11 +1715,13 @@ models: combination_of_columns: - ano - id_eleicao + - tipo_eleicao + - data_eleicao - sigla_uf - id_municipio_tse - cargo - not_null_proportion_multiple_columns: - at_least: 0.95 + at_least: 0.35 columns: - name: ano description: Ano @@ -1655,11 +1744,17 @@ models: - name: id_municipio_tse description: ID Município - TSE tests: - - relationships: + - custom_relationships: to: ref('br_bd_diretorios_brasil__municipio') field: id_municipio_tse + ignore_values: ['73709'] - name: sigla_uf description: Sigla da unidade da federação + tests: + - custom_relationships: + to: ref('br_bd_diretorios_brasil__uf') + field: sigla + ignore_values: [ZZ] - name: tipo_eleicao description: Tipo da eleição - name: vagas