Configuração do banco de dados

O dgipy trabalha utilizando o MongoDB 3.4 para armazenar todas as informações do DGI/INPE e tornar mais fácil e rápido a busca de imagens. Assim para a utilização do dgipy será necessário configurar o MongoDB. Esta seção apresenta as formas com que as configurações de acesso devem ser apresentadas durante o uso da aplicação.

Caso esteja com dúvida sobre a instalação do banco de dados utilizado pelo dgipy (MongoDB), consulte as Notas para instalação do MongoDB 3.4

Sobre a utilização

Nesta seção será apresentado como as informações de acesso devem ser utilizadas nas classes que necessitam deste tipo de informação durante sua instância. A lista abaixo indica cada uma das classes e funções que utilizam as informações de acesso ao banco.

  • dgi.acesso.busca.BuscaDeImagemNoCatalogo;

  • dgi.acesso.busca.BuscaImagensJaBaixadas;

  • dgi.acesso.facilidade.FacilitaDGI;

  • dgi.catalogo.catalogo.CatalogoDGI;

  • dgi.servicos.linux.servico_dgi_linux;

  • dgi.servicos.windows.servico_dgi_windows.

Estas classes e funções durante sua utilização podem receber o atributo db_props, que representa um dicionário com as informações de acesso ao banco. Vamos a uma descrição de cada uma das chaves deste dicionário.

db_props = {
    "host": "Endereço IP do banco de dados",
    "porta": "Porta do banco de dados",
    "usuario": "Usuário para utilizar o banco (Opcional),
    "senha": "Senha para utilizar o banco (Opcional)"
}

A tabela abaixo apresenta os tipos e necessidades de cada uma das chaves

Chave

Tipo

Obrigatório

host

String

Sim

porta

Integer

Sim

usuario

String

Não

senha

String

Não

Veja que, para as chaves usuario e senha não há obrigatoriedade, assim, eles deve ser utilizados apenas quando o banco possui alguma autenticação.

Como utilizar

Bem agora que entendemos como são as configurações de acesso ao banco de dados, vejamos onde estas configurações são utilizadas.

Na subseção foram apresentadas as classes e funções que consomem as configurações, desta forma é necessário apenas no momento da utilização especificar as configurações, veja no exemplo abaixo, que utiliza a classe FacilitaDGI.

from dgi.acesso import FacilitaDGI

facilita_dgi = FacilitaDGI("SEU_USUARIO_DO_CATALOGO", "SUA_SENHA_DO_CATALOGO", db_props= {
    "host": "192.168.0.1",
    "porta": 21017
})

E este mesmo padrão deve ser utilizada nas demais classes. Nas funções a utilização é a mesma, veja o exemplo utilizando a função do serviço do Windows.

from dgi.servicos.windows import servico_dgi_windows
servico_dgi_windows(db_props = {
    "host": "10.20.30.2",
    "porta": 21027
})

Note

Caso você tenha feito uma instalação padrão do MongoDB 3.4 em sua máquina, não é necessário especificar o db_props em nenhum momento do código

Criando estrutura do banco

Bem agora que já sabemos como realizar conexões com o banco de dados, teremos de importar um script de configuração da estrutura do banco de dados.

Este script está dentro do diretório db, existindo a verão para Windows (bat) e para Linux (Shell). Basta acessar o diretório e executar o script.

Note

Caso haja configurações de endereço ou mesmo de autenticação, você terá de editar o script de configuração de banco de dados.

Tip

Não esqueça de executar o script de configuração através do cmd ou terminal, de acordo com seu sistema operacional.

Estrutura do banco de dados

Para entender melhor como o banco de dados está estruturado, veja as tabelas abaixo, nelas estão sendo representados os elementos das duas coleções disponíveis no banco de dados

  • Coleção catalogo

Esta é a coleção que contém o índice de imagens do DGI recuperadas pelo dgipy.

Nome do campo

Tipo

nome

String

quicklook_url

String

satelite

String

instrumento

String

orbita

Integer

ponto

Integer

data

ISODate

quantidade_nuvens.quadrante_1

Integer

quantidade_nuvens.quadrante_2

Integer

quantidade_nuvens.quadrante_3

Integer

quantidade_nuvens.quadrante_4

Integer

pagina

Integer

centro_da_cena.coordinates

List

poligono_da_cena

List

local

String

  • Coleção imagens_adquiridas

Coleção com as informações das imagens já baixadas na máquina do usuário

Nome do campo

Tipo

satelite

String

instrumento

String

data

ISODate

orbita

Integer

ponto

Integer

local

String

data_insercao_no_banco

String

Notas para instalação do MongoDB 3.4

Esta seção apresenta as etapas para a instalação do MongoDB nos sistemas operacionais Windows e Ubuntu 18.04.

Caso seu sistema operacional não esteja aqui, consulte o manual do MongoDB.

  • Instalação no Ubuntu 18.04

Para realizar a instalação do MongoDB 3.4 no Ubuntu 18.04, basta seguir os passos descritos abaixo.

Primeiro faça a atualização dos pacotes e instale o gnupg.

sudo apt update -y && sudo apt install gnupg -y

Feito isto, registre a chave para acesso ao repositório de pacotes do MongoDB.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

Com a chave registrada, adicione o repositório do MongoDB em sua máquina

sudo echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

Por fim, faça a atualização dos pacotes e a instalação do MongoDB.

sudo apt update && sudo apt install mongodb-org -y

Note

Com o MongoDB instalado é necessário fazer sua execução, para tal utilize um dos seguintes comandos - service mongod start - mongod

Lembre-se que é necessário o serviço do MongoDB iniciado para fazer sua utilização com o dgipy.

  • Instalação no Windows

Para realizar a instalação do MongoDB 3.4 no Windows, basta seguir os passos abaixo.

Note

A instação apresentadas abaixo é feita no Windows 10, porém também são válidas para as versões anteriores.

O primeiro passo para a instalação do MongoDB é fazer seu download, para isso, acesse a página de download do MongoDB

Instação Windows Mongo (1)

Com o download realizado, faça a execução do arquivo baixado e siga os passo para a instalação.

Instação Windows Mongo (2)

Feito a instalação é necessário configurar os executáveis do MongoDB. Para isso, acesse o diretório bin que está no diretório onde o MongoDB foi instalado, uma vez acessado o diretório, copie seu caminho e faça sua inserção na variável de ambiente path.

Instação Windows Mongo (3)

Note

No exemplo acima, o caminho completo é C:\Program Files\MongoDB\Server\3.4\bin, caso você tenha feito a instalação padrão, provavelmente este também será o seu caminho para os binários do MongoDB.

Agora, antes de executar o MongoDB, vá até o disco C:\ e crie o diretório data, dentro deste crie o diretório db, gerando a seguinte estrutura C:\data\db.

Pronto! agora o MongoDB está pronto para ser executado. Vá até o CMD e execute o comando mongod.

Instação Windows Mongo (4)

Tip

Tanto no Windows quanto no Linux é necessário manter o mongod sendo executado para os trabalhos com o banco de dados.