brunomcr / 1MLET_FASE1_TECH_CHALLENGE

Embrapa API
1 stars 0 forks source link

Integração do serviço com DB #7

Closed garcia-pedro-hr closed 3 months ago

garcia-pedro-hr commented 4 months ago

DEPENDS ON #6

brunomcr commented 4 months ago

Adicionado funcao para a conexao com o banco de dados.

Obs: Precisa alterar o localhost para o nome do servico no Dockers,

Enquanto isso, da para ir usando para um mongoDB local, para exploracao dos dados.

brunomcr commented 4 months ago

Adicionado Script para load dos arquivos CSV para a Colletion do MongoDB

brunomcr commented 4 months ago

Boa tarde,

Estava analisando os dados dos arquivos csv, e os nomes de colunas em algumas bases esta vindo com o ano para cada coluna.

Exemplo de um caso:

As colunas Quantidade (Kg) e Valor (US$), estao como 1971 e 1971 no arquivo CSV.

image

image

brunomcr commented 4 months ago

Aberto uma nova issue (opicional), para a anlise, tratamento e contrucao das collections.

Issue: Tratamento e Estrutura das Bases #17

brunomcr commented 4 months ago

Pessoal fiz uma atualizacao no codigo de conexao com o banco, criando duas funcoes, uma para conexao local e outra para conexao com o docker.

No local ta ok, para que precisar testar os dados etc.

porem no docker. to tendo um problema. para conecatar.

to tendo esse retorno de erro:

PS E:\PycharmProjects\1MLET_FASE1_TECH_CHALLENGE> poetry run py load_to_db.py Mongo User: admin Mongo Pass: pass uri: mongodb://admin:pass@mongo-db:27017/ Erro ao conectar ao MongoDB: mongo-db:27017: [Errno 11002] getaddrinfo failed (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms), Timeout: 10.0s, Topology Description: <Topol ogyDescription id: 662fc82f36ba12a1a53831a5, topology_type: Unknown, servers: [<ServerDescription ('mongo-db', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('mongo-db:27017: [Errno 11002] getaddrinfo failed (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>]> Traceback (most recent call last): File "E:\PycharmProjects\1MLET_FASE1_TECH_CHALLENGE\load_to_db.py", line 19, in <module> db[collection_name].insert_many(df.to_dict('records')) ~~^^^^^^^^^^^^^^^^^ TypeError: 'NoneType' object is not subscriptable

brunomcr commented 4 months ago

Fiz um merge com a branch de docker-compose, para facilitar a integrcao com o banco.