Cloud Computing

4 abr, 2018

mLab: O seu banco de dados na nuvem

Publicidade

Conhecido anteriormente como MongoLab, o mLab é um serviço de banco de dados gerenciável que hospeda na nuvem um banco de dados MongoDB (SGBD do tipo NoSQL) e é executado em provedores como Aws (Amazon), Google Cloud e Microsoft Azure. Ele oferece gratuitamente 500 MB para armazenamento de dados.

A seguir vamos aprender como criar um banco de dados na nuvem e como acessá-lo e inserir dados através de uma aplicação cliente.

Criando um banco de dados na nuvem

Precisamos executar os passos abaixo para criar um banco de dados remoto:

1 – Crie uma conta no site mLab.

2 – Faça login no site e clique em Create New na área MongoDB Deployments.

3 – Escolha o tipo de plano Sandbox, já que a nossa necessidade no momento é só aprender como funciona a ferramenta.

4 – Escolha um nome para o banco de dados.

Pronto, o banco de dados remoto foi criado. E será possível vê-lo na área de usuário.

Clicando sobre o nome do banco criado poderemos ver as informações sobre a string de conexão, que iremos usar mais para frente na criação da aplicação cliente. E mais para baixo poderemos criar Collections, Users, Stats, Backups e Tools.

Por hora vamos criar um User clicando em Add database user.

Pronto, criamos o nosso banco de dados chamado exemplomlab na nuvem!

Criando uma aplicação cliente para acessar o banco

Agora que criamos o nosso banco de dados vamos acessá-lo por meio de uma aplicação node.js que vamos criar a seguir.

Crie um projeto node.js e adicione o arquivo app.js abaixo:

//instância do MongoClient
var MongoClient = require('mongodb').MongoClient;

//conexão com o banco de dados remoto exemplomlab
MongoClient.connect('mongodb://nome_do_usuario:senha@ds012678.mlab.com:12678/exemplomlab', function (err, db) {
    if(!err) {
     console.log('Conectado');
  }

     //criação da collection Estudantes
     db.collection('Estudantes', function (err, collection) {
        //inserção de 4 estudantes na collection      
        collection.insert({ nome: 'Maria', idade: '18' });
        collection.insert({ nome: 'Joana', idade: '22' });
        collection.insert({ nome: 'João', idade: '23' });  
        collection.insert({ nome: 'Luis', idade: '19' });    

        db.collection('Estudantes').count(function (err, count) {
            if (err) throw err;            
            console.log('Total linhas inseridas: ' + count);
        });
    });
});

Perceba que no código acima foi criado uma instância do MongoClient e depois foi estabelecida a conexão com o banco de dados remoto que criamos na primeira parte deste artigo, através da string de conexão. Não se esqueça de substituir nela, o nome_do_usuario:senha pelo seu nome de usuário e sua senha.

Em seguida, foi criada uma collection nomeada “Estudantes” e depois foi feita a inserção de quatro linhas com o nome e a idade de quatro estudantes.

Por fim, criamos uma rotina para retornar o total de linhas que foram incluídas na collection no final da operação. Depois de inserir o código acima, baixe através do npm o pacote mongodb versão 2.2.33 na pasta do projeto:

npm install mongodb@2.2.33

Após isso, basta rodar o código com o comando node app no terminal dentro da pasta do projeto. Veremos que foram inseridas quatro linhas na collection Estudantes.

Agora vamos voltar ao nosso banco no site do mLab e ver na aba Collection que foi criada a tabela “Estudantes” e as linhas foram inseridas com o nome e idade dos quatro alunos.

Bem bacana, né? Este foi um simples exemplo de como funciona a comunicação entre o banco de dados remoto através de uma aplicação em node.js.

Você pode conferir o repositório desse exemplo no GitHub.

Leia também a documentação da ferramenta.