Skip to content

Commit

Permalink
Merge branch 'main' into staging/world_ampas_oscar.winner_demographics
Browse files Browse the repository at this point in the history
  • Loading branch information
gabrielle-carv authored Mar 5, 2024
2 parents 861686e + 999a8c6 commit 0ac92eb
Show file tree
Hide file tree
Showing 7 changed files with 183 additions and 2 deletions.
3 changes: 3 additions & 0 deletions dbt_project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,9 @@ models:
br_cgu_beneficios_cidadao:
+materialized: incremental
+schema: br_cgu_beneficios_cidadao
br_cgu_dados_abertos:
+materialized: table
+schema: br_cgu_dados_abertos
br_cgu_pessoal_executivo_federal:
+materialized: table
+schema: br_cgu_pessoal_executivo_federal
Expand Down
20 changes: 20 additions & 0 deletions models/br_cgu_dados_abertos/br_cgu_dados_abertos__conjunto.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{{ config(alias='conjunto',schema='br_cgu_dados_abertos') }}
select
safe_cast(nullif(id, "") as string) id,
safe_cast(nullif(titulo, "") as string) nome,
safe_cast(nullif(nome, "") as string) nome_tokenizado,
safe_cast(nullif(descricao, "") as string) descricao,
safe_cast(nullif(mantenedor, "") as string) mantenedor,
safe_cast(nullif(email_mantenedor, "") as string) email_mantenedor,
safe_cast(
nullif(id_organizacao_responsavel, "") as string
) id_organizacao_responsavel,
safe_cast(nullif(organizacao_responsavel, "") as string) organizacao_responsavel,
extract(date from safe.parse_datetime('%d/%m/%Y %T', data_criacao)) data_criacao,
extract(
date from safe.parse_datetime('%d/%m/%Y %T', data_atualizacao)
) data_atualizacao,
safe_cast(quantidade_reusos as int64) quantidade_reusos,
safe_cast(quantidade_recursos as int64) quantidade_recursos,
safe_cast(quantidade_downloads as int64) quantidade_downloads,
from `basedosdados-dev.br_cgu_dados_abertos_staging.conjunto` as c
24 changes: 24 additions & 0 deletions models/br_cgu_dados_abertos/br_cgu_dados_abertos__organizacao.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{{ config(alias='organizacao',schema='br_cgu_dados_abertos') }}
select
safe_cast(nullif(o.id, "") as string) id,
safe_cast(nullif(o.titulo, "") as string) nome,
safe_cast(nullif(o.nome, "") as string) nome_tokenizado,
safe_cast(nullif(o.descricao, "") as string) descricao,
case
when o.organizationesfera = "1"
then "Federal"
when o.organizationesfera = "2"
then "Estadual/Distrital"
when o.organizationesfera = "3"
then "Municipal"
else null
end tipo_esfera_administrativa,
safe_cast(nullif(o.organizationuf, "") as string) sigla_uf,
safe_cast(m.id_municipio as string) id_municipio,
safe_cast(o.qtdseguidores as int64) quantidade_seguidores,
safe_cast(o.qtdconjuntodedados as int64) quantidade_conjuntos
from `basedosdados-dev.br_cgu_dados_abertos_staging.organizacao` as o
left join
`basedosdados.br_bd_diretorios_brasil.municipio` as m
on o.organizationuf = m.sigla_uf
and o.organizationmunicipio = m.nome
16 changes: 16 additions & 0 deletions models/br_cgu_dados_abertos/br_cgu_dados_abertos__recurso.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{{ config(alias='recurso',schema='br_cgu_dados_abertos') }}
select
safe_cast(nullif(id, "") as string) id,
safe_cast(nullif(id_conjunto, "") as string) id_conjunto,
safe_cast(nullif(nome, "") as string) nome,
safe_cast(nullif(descricao, "") as string) descricao,
safe_cast(nullif(tipo, "") as string) tipo,
safe_cast(nullif(formato, "") as string) formato,
safe_cast(nullif(tamanho_bytes, 0) as int64) tamanho_bytes,
safe_cast(nullif(url_download, "") as string) url_download,
extract(date from safe_cast(data_criacao as timestamp)) data_criacao,
extract(
date from safe.parse_datetime('%d/%m/%Y %T', data_modificacao_metadados)
) data_modificacao_metadados,
safe_cast(quantidade_downloads as int64) quantidade_downloads,
from `basedosdados-dev.br_cgu_dados_abertos_staging.recurso` as r
117 changes: 117 additions & 0 deletions models/br_cgu_dados_abertos/schema.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
---
version: 2
models:
- name: br_cgu_dados_abertos__organizacao
description: Lista de organizações no portal de Dados Abertos
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns: [id]
- not_null_proportion_multiple_columns:
at_least: 0.05
columns:
- name: id
description: ID da organização
- name: nome
description: Nome da organização
- name: nome_tokenizado
description: Nome da organização tokenizado
- name: descricao
description: Descrição da organização
- name: tipo_esfera_administrativa
description: Tipo de esfera administrativa
- name: sigla_uf
description: Sigla da Unidade da Federação
tests:
- relationships:
to: ref('br_bd_diretorios_brasil__uf')
field: sigla
- name: id_municipio
description: ID Município IBGE 7 dígitos
tests:
- relationships:
to: ref('br_bd_diretorios_brasil__municipio')
field: id_municipio
- name: quantidade_seguidores
description: Quantidade de seguidores
- name: quantidade_conjuntos
description: Quantidade de conjuntos de dados
- name: br_cgu_dados_abertos__conjunto
description: Lista de conjuntos de dados no portal de Dados Abertos
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns: [id]
- not_null_proportion_multiple_columns:
at_least: 0.05
columns:
- name: id
description: ID do conjunto de dados
- name: nome
description: Nome do conjunto de dados
- name: nome_tokenizado
description: Nome do conjunto de dados tokenizado
- name: descricao
description: Descrição do conjunto de dados
- name: mantenedor
description: Nome do mantenedor do conjunto de dados
- name: email_mantenedor
description: E-mail do mantenedor do conjunto de dados
- name: id_organizacao_responsavel
description: ID da organização responsável
- name: organizacao_responsavel
description: Nome da organização responsável
- name: data_criacao
description: Data de criação
tests:
- relationships:
to: ref('br_bd_diretorios_data_tempo__data')
field: data.data
- name: data_atualizacao
description: Data da última atualização
tests:
- relationships:
to: ref('br_bd_diretorios_data_tempo__data')
field: data.data
- name: quantidade_reusos
description: Quantidade de reusos
- name: quantidade_recursos
description: Quantidade de recursos
- name: quantidade_downloads
description: Quantidade de downloads
- name: br_cgu_dados_abertos__recurso
description: Lista de recursos no portal de Dados Abertos
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns: [id, id_conjunto]
- not_null_proportion_multiple_columns:
at_least: 0.05
columns:
- name: id
description: ID do recurso
- name: id_conjunto
description: ID do conjunto de dados
- name: nome
description: Nome do recurso
- name: descricao
description: Descrição do recurso
- name: tipo
description: Tipo de dado do recurso
- name: formato
description: Formato de dado do recurso
- name: tamanho_bytes
description: Tamanho do recurso em bytes
- name: url_download
description: URL para download
- name: data_criacao
description: Data de criação
tests:
- relationships:
to: ref('br_bd_diretorios_data_tempo__data')
field: data.data
- name: data_modificacao_metadados
description: Data da última modificação de metadados
tests:
- relationships:
to: ref('br_bd_diretorios_data_tempo__data')
field: data.data
- name: quantidade_downloads
description: Quantidade de downloads
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
config(
schema="br_mp_pep",
materialized="table",
alias="cargos_funcoes",
partition_by={
"field": "ano",
"data_type": "int64",
Expand All @@ -10,7 +11,7 @@
cluster_by="mes",
post_hook=[
'CREATE OR REPLACE ROW ACCESS POLICY allusers_filter ON {{this}} GRANT TO ("allUsers") FILTER USING (DATE_DIFF(CURRENT_DATE(),DATE(CAST(ano AS INT64),CAST(mes AS INT64),1), MONTH) > 6)',
'CREATE OR REPLACE ROW ACCESS POLICY bdpro_filter ON {{this}} GRANT TO ("group:[email protected]", "group:[email protected]") FILTER USING (DATE_DIFF(CURRENT_DATE(),DATE(CAST(ano AS INT64),CAST(mes AS INT64),1), MONTH) <= 6)',
'CREATE OR REPLACE ROW ACCESS POLICY bdpro_filter ON {{this}} GRANT TO ("group:[email protected]", "group:[email protected]") FILTER USING (True)',
],
)
}}
Expand Down
2 changes: 1 addition & 1 deletion models/br_mp_pep/schema.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
version: 2
models:
- name: cargos_funcoes
- name: br_mp_pep__cargos_funcoes
description: "Informações sobre o quantitativo de cargos e funções com características\
\ de direção e assessoramento no Poder Executivo Federal Civil e Funções e Gratificações\
\ com características técnicas. Essa tabela contém todas as dimensões e apenas\
Expand Down

0 comments on commit 0ac92eb

Please sign in to comment.