Esta página tem como finalidade documentar o processo de coleta dos dados de planilhas presentes no Sharepoint.
A extração dos dados foi realizada utilizando linguagem de programação Python, com framework Spark em um Cluster Databrics da Dexco.
Este processo consome as APIs oficiais do Sharepoint via biblioteca escrita em Python.
Resumo do Processo
Baseado em configurações informadas ao job no momento de configuração, o coletor realiza as seguintes etapas:
Recupera secrets de chave USER e PASSWORD do escopo USER_DIEGO
Autentica no Sharepoint
Realiza o download da planilha em ambiente local do cluster
Transforma os dados da planilha e aba especificada durante a etapa de configuração do job em tabela Spark
Configuração do Job
Embaixo da chave tasks
do arquivo .json
de configuração de um agendamento de job do Databricks, utilize a seguinte estrutura, conforme utilizada na orquestração da extração da planilha Market Consensus.xlsx
:
{
...
"tasks": [
{
"task_key": "coletor_market_consensus",
"notebook_task": {
"notebook_path": "/Repos/paulo.werneck-ext@dex.co/analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint",
"base_parameters": {
"database": "indicadores_mercado",
"base_url": "https://duratexsa.sharepoint.com/sites/JornadaCrescimento",
Esta página tem como finalidade documentar o processo de coleta dos dados de planilhas presentes no Sharepoint. Code Block
A extração dos dados foi realizada utilizando linguagem de programação Python, com framework Spark em um Cluster Databrics da Dexco.
Este processo consome as APIs oficiais do Sharepoint via biblioteca escrita em Python.
Resumo do Processo
Baseado em configurações informadas ao job no momento de configuração, o coletor realiza as seguintes etapas:
Recupera secrets de chave USER e PASSWORD do escopo USER_DIEGO
Autentica no Sharepoint
Realiza o download da planilha em ambiente local do cluster
Transforma os dados da planilha e aba especificada durante a etapa de configuração do job em tabela Spark
Configuração do Job
Embaixo da chave tasks
do arquivo .json
de configuração de um agendamento de job do Databricks, utilize a seguinte estrutura, conforme utilizada na orquestração da extração da planilha Market Consensus.xlsx
:
Code Block |
---|
{ ... "tasks": [ { "schematask_key": "{'data': 'date', 'ebitda_2022': 'smallint', 'ebitda_2023': 'smallint', 'ebitda_2024': 'smallint', 'ebitda_2025': 'smallint', 'ebitda_2026': 'smallint', 'ev_ebitda': 'float', 'media_5y': 'float', 'maior_1dp': 'float', 'menor_1dp': 'float'}", coletor_market_consensus", "notebook_task": { "notebook_path": "/Repos/paulo.werneck-ext@dex.co/analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint", "removebase_columnsparameters": "[]",{ "filedatabase": "/sites/JornadaCrescimento/Documentos Partilhados/Processar/Market Consensus/Market Consensus.xlsxindicadores_mercado", "sheetbase_nameurl": "Consensushttps://duratexsa.sharepoint.com/sites/JornadaCrescimento", "remove_linesschema": "[0, 1]", "table": "market_consensus"{'data': 'date', 'ebitda_2022': 'smallint', 'ebitda_2023': 'smallint', 'ebitda_2024': 'smallint', 'ebitda_2025': 'smallint', 'ebitda_2026': 'smallint', 'ev_ebitda': 'float', 'media_5y': 'float', 'maior_1dp': 'float', 'menor_1dp': 'float'}", },"remove_columns": "[]", "sourcefile": "WORKSPACE"/sites/JornadaCrescimento/Documentos Partilhados/Processar/Market Consensus/Market Consensus.xlsx", }, "existingsheet_cluster_idname": "0523-180911-cnxb45ryConsensus", "timeoutremove_secondslines": "[0, 1]", "table": "emailmarket_notifications": {} consensus" }, "source": "WORKSPACE" } ], ... } |
,
"existing_cluster_id": "0523-180911-cnxb45ry",
"timeout_seconds": 0,
"email_notifications": {}
}
],
...
} |
OBS: É possível adicionar mais de uma task, de acordo com a necessidade.
...
Relação de Jobs x Notebooks que compõem o processo:
Databrics job: coletor_excel_sharepoint
indicadores_mercado.economia_vs_poa
Field
Key
Not Null
Partition
Element
Type
Size
Decimal
Description
mes_ytd
Não
Não
Não
date
inflacao_acumulada_reais_madeira
Não
Não
Não
double
inflacao_acumulada_reais_deca
Não
Não
Não
double
Task | Parâmetros | Periodicidade | Notebook | Repositório | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
coletor_economiaenergia_vs_poaeletrica |
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | |||||||||||||||
coletor_economia_marketvs_consensuspoa |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | coletor_hoff_solucoes |
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | ||||||||||
coletor_market_consensus |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | coletor_sell_out_deca |
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | ||||||||||
coletor_hoff_solucoes |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | coletor_investing_taxa_de_longo_prazo |
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint ", | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | ||||||||||
coletor_sell_out_deca |
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | |||||||||||||||
coletor_investing_taxa_de_longo_prazo |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ |
Tabelas referentes ao job: coletor_excel_sharepoint
| Diário (13 0 0 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ |
Tabelas referentes ao job: coletor_excel_sharepoint
...
indicadores_mercado.tb_energia_eletrica | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
mes | Não | Não | Não |
| doubledate |
|
| |
inflacaoenergia_acumuladaeletrica_reais_totalbrasil | Não | Não | Não |
| double |
|
| |
energia_eletrica_brasil_projecao | Não | Não | Não |
|
...
double |
|
|
indicadores_mercado.tb_economia_vs_poa |
---|
...
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
---|
mes_ytd | Não | Não | Não |
| date |
|
|
inflacao_acumulada_reais_madeira | Não | Não | Não |
|
double |
|
|
inflacao_acumulada_reais_deca | Não | Não | Não |
|
double |
|
|
inflacao_acumulada_reais_rc | Não | Não | Não |
|
double |
|
|
inflacao_acumulada_reais_total | Não | Não | Não |
|
double |
|
|
perc_spend_ |
total | Não | Não | Não | double |
View file |
---|
...
smallint
...
ev_ebitda
...
Não
...
Não
...
Não
...
...
float
...
media_5y
...
Não
...
Não
...
Não
...
...
float
...
maior_1dp
|
indicadores_mercado.tb_market_consensus | |||||||||
---|---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description | |
data | Não | Não | Não |
| float | menor_1dpdate |
|
| |
ebitda_2022 | Não | Não | Não |
| floatsmallint |
...
|
...
indicadores_mercado.hoff_solucoes
Field
Key
Not Null
Partition
Element
Type
Size
Decimal
Description
|
...
ebitda_2023 | Não | Não | Não |
|
smallint |
|
|
ebitda_2024 | Não | Não | Não |
| smallint |
|
|
ebitda_ |
2025 | Não | Não | Não |
|
smallint |
|
|
ebitda_ |
2026 | Não | Não | Não |
|
int
smallint | ||||
ev_ebitda | Não | Não | Não |
|
int
float | ||||
media_5y | Não | Não | Não |
|
float |
maior_1dp | Não | Não | Não |
|
float |
menor_1dp | Não | Não | Não |
|
int
proj_arquit_empreendimentos_2019_100
Não
Não
Não
int
float |
View file | ||
---|---|---|
|
indicadores_mercado.tb_sell_out_deca
Field
Key
Not Null
Partition
Element
Type
Size
Decimal
Description
hoff_solucoes.hoff_solucoes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description | |
data | Não | Não | Não |
| int | proj_arquit_empreendimentos_nedate |
|
| |
ano | Não | Não | Não |
| smallint |
|
| ||
proj_arquit | Não | Não | Não |
| int |
|
| ||
proj_arquit_reformas | Não | Não | Não |
| int |
|
| ||
proj_arquit_empreendimentos_co | Não | Não | Não |
| int |
|
| ||
proj_arquit_empreendimentosreformas_sepf | Não | Não | Não |
| int | ||||
proj_arquit_empreendimentosreformas_spj | Não | Não | Não |
| intano2 | ||||
proj_arquit_reformas_2019_10 | Não | Não | Não |
| int | ||||
proj_arquit_empreendimentos_reformas2019_ano100 | Não | Não | Não |
| stringint | ||||
proj_arquit_empreendimentos_anon | Não | Não | Não |
| string |
View file | ||
---|---|---|
|
int | ||||||||
proj_arquit_empreendimentos_ne | Não | Não | Não |
| int | |||
proj_arquit_empreendimentos_co | Não | Não | Não |
| int | |||
proj_arquit_empreendimentos_se | Não | Não | Não |
| int | |||
proj_arquit_empreendimentos_s | Não | Não | Não |
|
string
int | ||||
ano2 | Não | Não | Não |
|
string
int | |||||
proj_arquit_reformas_ano | Não | Não | Não |
| string |
Sellout_Metais
Não
Não
Não
float
proj_arquit_empreendimentos_ano | Não | Não | Não |
|
float
Sellout_Hydra
Não
Não
Não
float
Sellout_RC
Não
Não
Não
string |
View file | ||
---|---|---|
|
indicadores_mercado.tb_ |
---|
sell_ |
---|
out_deca | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
ano | Não | Não | Não |
|
int |
|
|
10y_Brazilian_Bond
mes | Não | Não | Não |
|
int |
...
|
...
Databricks job: coletor_excel_sharepoint_bases_modelos_projecao
Task
Parâmetros
Periodicidade
Notebook
Repositório
coletor_demanda_deca
Code Block | ||
---|---|---|
| ||
{
"database": "bases_modelos_projecoes",
"base_url": "https://duratexsa.sharepoint.com/sites/JornadaCrescimento",
"schema": "{'Data':'date','Metais_Basicos':'int','Metais_Competitivos':'int','Metais_Medio_Luxo':'int','Metais_Exportacao':'int','Loucas_Bacias_Competitivas':'int','Loucas_Bacias_Izy':'int','Loucas_Bacias_Medio_Luxo':'int','Loucas_Cubas':'int','Loucas_Outros':'int','Loucas_Exportacao':'int','Chuveiros_Duchas':'int','Chuveiros_Torneiras_Eletricas':'int','Chuveiros_Torneiras_Plasticas':'int','Chuveiros_Outros':'int','Chuveiros_Exportacao':'int'}",
"remove_columns": "[]",
"file": "/sites/JornadaCrescimento/Documentos Partilhados/Processar/Onda 3/Demanda Deca.xlsx",
"sheet_name": "Onda3",
"remove_lines": "[0]",
"table": "demanda_deca"
} |
Diário
/analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint
https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/
coletor_demanda_madeira
language | json |
---|
|
...
ano_mes | Não | Não | Não |
| string |
|
| |
Sellout_Metais | Não | Não | Não |
| float |
|
| |
Sellout_Loucas | Não | Não | Não |
| float |
|
| |
Sellout_Hydra | Não | Não | Não |
| float | |||
Sellout_RC | Não | Não | Não |
| float |
View file | ||
---|---|---|
|
investing.tb_brazil_10_year_bond_yield_sharepoint_silver | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
Data | Não | Não | Não |
| date |
|
| |
10y_Brazilian_Bond | Não | Não | Não |
| double |
View file | ||
---|---|---|
|
Databricks job: coletor_excel_sharepoint_bases_modelos_projecao
...
Data
...
Não
...
Não
...
Não
...
...
date
...
...
...
Metais_Basicos
...
Não
...
Não
...
Não
...
...
int
...
...
...
Metais_Competitivos
...
Não
...
Não
...
Não
...
...
int
...
...
...
Metais_Medio_Luxo
...
Não
...
Não
...
Não
...
...
int
...
...
...
Metais_Exportacao
...
Não
...
Não
...
Não
...
...
int
...
...
...
Loucas_Bacias_Competitivas
...
Não
...
Não
...
Não
...
...
int
...
Loucas_Bacias_Izy
...
Não
...
Não
...
Não
...
...
int
...
Task | Parâmetros | Periodicidade | Notebook | Repositório | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
coletor_demanda_deca |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | coletor_demanda_rc |
| Diário (13 0 1 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | ||||||||||
coletor_dias_de_estoque_decademanda_rc |
| Diário (13 0 1 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | |||||||||||||||
coletor_diasdemanda_dedeca_estoque_madeiraanual |
| Diário | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | coletor_projecoes_longo_prazo |
| Diário (13 0 1 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ | ||||||||||
coletor_projecoes_longo_prazo |
| Diário | /bronze/inteligencia-mercado/coletor-excel-sharepoint |
Tabelas referentes ao job: coletor_excel_sharepoint_bases_modelos_projecao
...
bases_modelos_projecoes.demanda_deca
...
Field
...
Key
...
Not Null
...
Partition
...
Element
...
Type
...
Size
...
Decimal
...
Description
| Diário (13 0 1 ? * *) | /analytics-databricks-inteligencia-mercado/Workspace/bronze/inteligencia-mercado/coletor-excel-sharepoint | https://bitbucket.org/duratex/analytics-databricks-inteligencia-mercado/src/master/ |
Tabelas referentes ao job: coletor_excel_sharepoint_bases_modelos_projecao
bases_modelos_projecoes.demanda_ |
---|
deca | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
Data | Não | Não | Não |
| date |
|
|
Metais_ |
Basicos | Não | Não | Não |
| int |
|
|
Metais_ |
Competitivos | Não | Não | Não |
| int |
|
|
Metais_Medio_ |
Luxo | Não | Não | Não |
| int |
|
|
Metais_ |
bases_modelos_projecoes.demanda_rc
Field
Key
Not Null
Partition
Element
Type
Size
Decimal
Description
Exportacao | Não | Não | Não |
| int |
|
|
View file | ||
---|---|---|
|
Loucas_Bacias_Competitivas | Não | Não | Não |
| int | |||
Loucas_Bacias_Izy | Não | Não | Não |
| int | |||
Loucas_Bacias_Medio_Luxo | Não | Não | Não |
|
date
int | |||||
Loucas_Cubas | Não | Não | Não |
| int |
Loucas_Outros |
Não |
...
Não |
...
bases_modelos_projecoes.dias_de_estoque_deca
Field
Key
Not Null
Partition
Element
Type
Size
Decimal
Description
Data
Não |
...
name | bases_modelos_projecoes.demanda_rc.csv |
---|
| int | |||||||
Loucas_Exportacao | Não | Não | Não |
| int | |||
Chuveiros_Duchas | Não | Não | Não |
|
date
Loucas
int | |||||
Chuveiros_Torneiras_Eletricas | Não | Não | Não |
| int |
Chuveiros_Torneiras_Plasticas | Não | Não | Não |
| int |
RC
Chuveiros_Outros | Não | Não | Não |
| int |
Chuveiros_Exportacao | Não | Não | Não |
| int |
View file | ||
---|---|---|
|
bases_modelos_projecoes. |
---|
demanda_rc | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
Data | Não | Não | Não |
| date |
|
|
Porcelanato | Não | Não | Não |
| int |
|
|
...
View file | ||
---|---|---|
|
bases_modelos_projecoes.coletor_demanda_deca_anual | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
data | Não | Não | Não |
|
string |
|
|
Metais_MI_ |
Total | Não | Não | Não |
|
float |
|
|
Loucas_MI_ |
Total | Não | Não | Não |
|
float |
|
|
View file | ||
---|---|---|
|
bases_modelos_projecoes.projecoes_longo_prazo | ||||||||
---|---|---|---|---|---|---|---|---|
Field | Key | Not Null | Partition | Element | Type | Size | Decimal | Description |
indice | Não | Não | Não |
| string |
|
| |
2009 | Não | Não | Não |
| double | |||
2010 | Não | Não | Não |
| double | |||
2011 | Não | Não | Não |
| double | |||
2012 | Não | Não | Não |
| double | |||
2013 | Não | Não | Não |
| double | |||
2014 | Não | Não | Não |
| double | |||
2015 | Não | Não | Não |
| double |
|
| |
2016 | Não | Não | Não |
| double |
|
| |
2017 | Não | Não | Não |
| double |
|
| |
2018 | Não | Não | Não |
| double |
|
| |
2019 | Não | Não | Não |
| double | |||
2020 | Não | Não | Não |
| double | |||
2021 | Não | Não | Não |
| double | |||
2022 | Não | Não | Não |
| double | |||
2023 | Não | Não | Não |
| double | |||
2024 | Não | Não | Não |
| double | |||
2025 | Não | Não | Não |
| double | |||
2026 | Não | Não | Não |
| double | |||
2027 | Não | Não | Não |
| double |
...