Skip to content

Commit

Permalink
Merge branch 'main' into fixing-the-dictionarys
Browse files Browse the repository at this point in the history
  • Loading branch information
tricktx authored Jun 14, 2024
2 parents 158d96c + 018904f commit cea314f
Show file tree
Hide file tree
Showing 17 changed files with 1,095 additions and 136 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci-dbt.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: CI dbt
on:
pull_request:
paths: ['**.sql', '**.yaml', '**.yml', '**.py']
branches: [main]
jobs:
lint:
name: Lint dbt
Expand All @@ -22,4 +22,4 @@ jobs:
- name: Lint sql
run: poetry run sqlfmt --diff .
- name: Lint yaml
run: poetry run yamlfix --exclude ".kubernetes/**/*" .
run: poetry run yamlfix --exclude ".kubernetes/**/*" --check .
3 changes: 2 additions & 1 deletion gists/create_yaml_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,8 @@ def update_dbt_project_yaml(dataset_id: str,models_path: str) -> None:
dbt_project_path = models_path.replace('models','dbt_project.yml')

yaml_obj = yaml.YAML(typ='rt')
yaml_obj.indent(mapping=2, sequence=2, offset=1)
yaml_obj.explicit_start = True
yaml_obj.indent(mapping=2, sequence=2, offset=2)

with open(dbt_project_path, 'r') as file:
data = yaml_obj.load(file)
Expand Down
3 changes: 0 additions & 3 deletions gists/requirements-gists.txt

This file was deleted.

4 changes: 2 additions & 2 deletions models/br_bcb_agencia/br_bcb_agencia__agencia.sql
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ with
when sigla_uf = 'MT' and nome = 'poxoreu'
then '5107008'
when sigla_uf = 'GO' and nome = 'portolandia'
then '5218102 '
then '5218102'
when sigla_uf = 'TO' and nome = 'alianca do norte'
then '1700350'
when sigla_uf = 'MA' and nome = 'sao luiz gonzaga maranhao'
Expand Down Expand Up @@ -204,7 +204,7 @@ with
-- os arquivos mensais possuem cabeçalhos e rodapés que variam de posição;
-- Este filtro remove linhas com valores intereiramente
-- nulos
where fone = '00000nan'
where fone != '00000nan'
)

select
Expand Down
17 changes: 11 additions & 6 deletions models/br_bcb_agencia/schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,13 @@ models:
- relationships:
to: ref('br_bd_diretorios_data_tempo__data')
field: mes
config:
where: __most_recent_year_month__
- name: sigla_uf
description: Sigla da Unidade da Federação
tests:
- dbt_utils.not_null_proportion:
at_least: 0.05
at_least: 0.95
config:
where: __most_recent_year_month__
- name: id_municipio
Expand All @@ -37,8 +39,10 @@ models:
- relationships:
to: ref('br_bd_diretorios_brasil__municipio')
field: id_municipio
config:
where: __most_recent_year_month__
- dbt_utils.not_null_proportion:
at_least: 0.05
at_least: 0.95
config:
where: __most_recent_year_month__
- name: data_inicio
Expand All @@ -47,7 +51,7 @@ models:
description: Cadastro Nacional de Pessoa Júridica (CNPJ)
tests:
- dbt_utils.not_null_proportion:
at_least: 0.05
at_least: 0.95
config:
where: __most_recent_year_month__
- name: nome_agencia
Expand All @@ -65,13 +69,14 @@ models:
- name: cep
description: CEP
tests:
- relationships:
- custom_relationships:
to: ref('br_bd_diretorios_brasil__cep')
field: cep
field: cep.cep
proportion_allowed_failures: 20
config:
where: __most_recent_year_month__
- dbt_utils.not_null_proportion:
at_least: 0.05
at_least: 0.95
config:
where: __most_recent_year_month__
- name: endereco
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{{
config(
alias="setor_censitario_2010",
schema="br_bd_diretorios_brasil",
materialized="table",
)
}}

with
tb as (
select
safe_cast(id_setor_censitario as string) id_setor_censitario,
safe_cast(id_municipio as string) id_municipio,
safe_cast(id_rm as string) id_regiao_metropolitana,
safe_cast(id_distrito as string) id_distrito,
safe_cast(id_subdistrito as string) id_subdistrito,
safe_cast(nome_subdistrito as string) nome_subdistrito,
safe_cast(id_bairro as string) id_bairro,
safe_cast(nome_bairro as string) nome_bairro,
safe_cast(sigla_uf as string) sigla_uf,
safe_cast(situacao_setor as string) situacao_setor,
safe_cast(tipo_setor as string) tipo_setor
from `basedosdados-dev.br_bd_diretorios_brasil_staging.setor_censitario` as t
)

select
a.id_setor_censitario,
a.id_municipio,
b.nome as nome_municipio,
a.id_regiao_metropolitana,
b.nome_regiao_metropolitana as nome_regiao_metropolitana,
a.id_distrito,
c.nome as nome_distrito,
a.id_subdistrito,
a.nome_subdistrito,
a.id_bairro,
a.nome_bairro,
a.sigla_uf,
a.situacao_setor,
a.tipo_setor,
from tb as a
left join
`basedosdados.br_bd_diretorios_brasil.municipio` as b
on a.id_municipio = b.id_municipio
left join
`basedosdados.br_bd_diretorios_brasil.distrito` as c
on a.id_distrito = c.id_distrito
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
{{
config(
alias="setor_censitario_2022",
schema="br_bd_diretorios_brasil",
materialized="table",
)
}}

with
tb as (
select
safe_cast(cd_setor as string) as id_setor_censitario,
safe_cast(cd_regiao as string) as id_regiao,
safe_cast(nm_regiao as string) as nome_regiao,
safe_cast(cd_uf as string) as id_uf,
safe_cast(cd_mun as string) as id_municipio,
safe_cast(cd_dist as string) as id_distrito,
safe_cast(cd_subdist as string) as id_subdistrito,
safe_cast(nm_subdist as string) as nome_subdistrito,
safe_cast(cd_micro as string) as id_microrregiao,
safe_cast(cd_meso as string) as id_mesorregiao,
safe_cast(cd_rgi as string) as id_regiao_imediata,
safe_cast(cd_rgint as string) as id_regiao_intermediaria,
safe_cast(cd_concurb as string) as id_concentracao_urbana,
safe_cast(nm_concurb as string) as nome_concentracao_urbana,
safe_cast(area_km2 as float64) as area_km2,
from
`basedosdados-dev.br_ibge_censo_2022_staging.domicilio_morador_setor_censitario`
)

select
id_setor_censitario,
id_regiao,
a.nome_regiao,
a.id_uf,
b.nome as nome_uf,
a.id_municipio,
c.nome as nome_municipio,
a.id_distrito,
d.nome as nome_distrito,
id_subdistrito,
nome_subdistrito,
a.id_microrregiao,
c.nome_microrregiao,
a.id_mesorregiao,
c.nome_mesorregiao,
a.id_regiao_imediata,
c.nome_regiao_imediata,
a.id_regiao_intermediaria,
c.nome_regiao_intermediaria,
a.id_concentracao_urbana,
a.nome_concentracao_urbana,
a.area_km2,
from tb as a
left join `basedosdados.br_bd_diretorios_brasil.uf` as b on a.id_uf = b.id_uf
left join
`basedosdados.br_bd_diretorios_brasil.municipio` as c
on a.id_municipio = c.id_municipio
left join
`basedosdados.br_bd_diretorios_brasil.distrito` as d
on a.id_distrito = d.id_distrito
72 changes: 59 additions & 13 deletions models/br_bd_diretorios_brasil/schema.yml
Original file line number Diff line number Diff line change
Expand Up @@ -468,21 +468,27 @@ models:
description: Descrição da natureza jurídica
- name: escopo
description: Propósito da natureza jurídica
- name: br_bd_diretorios_brasil__setor_censitario
description: Description
- name: br_bd_diretorios_brasil__setor_censitario_2010
description: Diretório de referência para os setores censitário de 2010. Contem
o id_setor_censitario, que permite ligar informações (município, distritro,
etc)
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns: [ano, id_setor_censitario]
combination_of_columns: [id_setor_censitario]
columns:
- name: ano
description: Ano
- name: id_setor_censitario
description: ID do setor censitário
- name: id_municipio
description: ID Município - IBGE 7 Dígitos
- name: id_rm
tests:
- relationships:
to: ref('br_bd_diretorios_brasil__municipio')
field: id_municipio
- name: nome_municipio
description: Nome do município
- name: id_regiao_metropolitana
description: ID da região metropolitana ou RIDE
- name: nome_rm
- name: nome_regiao_metropolitana
description: Nome da região metropolitana ou RIDE
- name: id_distrito
description: ID do distrito
Expand All @@ -499,14 +505,52 @@ models:
- name: sigla_uf
description: Sigla do Estado
- name: situacao_setor
description: ID de situação do setor - Situação urbana - IDs 1, 2 e 3; 1
- Área urbanizada de cidade ou vila 2 - Área não urbanizada de cidade ou
vila 3 - Área urbana isolada - Situação rural – IDs 4, 5, 6, 7 e 8; 4 -
Aglomerado rural de extensão urbana 5 - Aglomerado rural isolado, povoado
6 - Aglomerado rural isolado, núcleo 7 - Aglomerado rural isolado, outros
aglomerados 8 - Zona rural, exclusive aglomerado rural
description: ID de situação do setor - Situação urbana - IDs 1, 2 e 3; 1 -
Área urbanizada de cidade ou vila 2 - Área não urbanizada de cidade ou vila
3 - Área urbana isolada - Situação rural – IDs 4, 5, 6, 7 e 8; 4 - Aglomerado
rural de extensão urbana 5 - Aglomerado rural isolado, povoado 6 - Aglomerado
rural isolado, núcleo 7 - Aglomerado rural isolado, outros aglomerados 8
- Zona rural, exclusive aglomerado rural
- name: tipo_setor
description: Tipo de setor censitário
- name: br_bd_diretorios_brasil__setor_censitario_2022
description: Diretório de referência para os setores censitário de 2022. Contem
o id_setor_censitario, que permite ligar informações (município, distritro,
etc).
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns: [id_setor_censitario]
columns:
- name: id_setor_censitario
description: ID do setor censitário
- name: id_regiao
description: ID da região
- name: nome_regiao
description: Nome da Região
- name: id_uf
description: ID da UF
- name: nome_uf
description: Nome da UF
tests:
- relationships:
to: ref('br_bd_diretorios_brasil__uf')
field: nome
- name: id_municipio
description: ID Município - IBGE 7 Dígitos
tests:
- relationships:
to: ref('br_bd_diretorios_brasil__municipio')
field: id_municipio
- name: nome_municipio
description: Nome do município
- name: id_distrito
description: ID do distrito
- name: nome_distrito
description: Nome do distrito
- name: id_subdistrito
description: ID do subdistrito
- name: nome_subdistrito
description: Nome do subdistrito
- name: id_microrregiao
description: ID da microrregião
- name: nome_microrregiao
Expand All @@ -527,3 +571,5 @@ models:
description: ID da Concentração Urbana
- name: nome_concentracao_urbana
description: Nome da Concentração Urbana
- name: area_km2
description: Área em quilómetro quadrado
14 changes: 14 additions & 0 deletions models/br_inep_saeb/br_inep_saeb__brasil_taxa_alfabetizacao.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{{
config(
alias="brasil_taxa_alfabetizacao",
schema="br_inep_saeb",
materialized="table",
)
}}
select
safe_cast(ano as int64) ano,
safe_cast(rede as string) rede,
safe_cast(localizacao as string) localizacao,
safe_cast(area as string) area,
safe_cast(taxa_alfabetizacao as float64) taxa_alfabetizacao,
from `basedosdados-dev.br_inep_saeb_staging.brasil_taxa_alfabetizacao` as t
Loading

0 comments on commit cea314f

Please sign in to comment.