Technè

Tecnologia & Experiência do Usuário no C.E.S.A.R

Introdução ao MongoDB – parte 1

Posted by Eric Cavalcanti On abril - 27 - 2011

Neste artigo vamos conhecer o MongoDB que é um banco de dados Open Source, de alto desempenho, com esquemas dinâmicos, orientado a documentos e escrito na linguagem C++.  Segundo os criadores, o MongoDB foi criado do zero, utilizando suas experiências na construção de sistemas escaláveis, de alta disponibilidade e robustez. O MongoDB também está na lista dos bancos de dados NoSQL por não ser relacional.

Instalação

O processo de instalação do MongoDB é bastante simples, basta realizar o download da versão Production Release de acordo com seu Sistema Operacional aqui. Neste artigo abordaremos a instalação no Windows, mas o processo é basicamente o mesmo em outros Sistemas Operacionais.
Após o download vamos descompactar o MongoDB é uma pasta qualquer, no meu caso D:\ e opcionalmente podemos renomear de mongo-xxxxxxx para apenas mongodb, ficando então em D:\mongodb.
O MongoDB  precisa da seguinte estrutura de pastas \data\db para armazenamento dos dados, só que a mesma não é criada automaticamente.  Então como nossa instalação está na unidade D:, vamos criar a estrutura de pastas D:\data\db.

Executando o servidor

Com tudo pronto, agora vamos executar o servidor do MongoDB. Para isso vamos executar o arquivo mongod.exe localizado na pasta bin pelo Explorer ou pela linha de comando conforme figura 1.


Figura 1. Executando o servidor MongoDB pela linha de comando.

Utilizando o cliente

Agora vamos iniciar um Shell administrativo executando o mongo.exe que também está localizado na pasta bin conforme figura 2.


Figura 2. Executando o cliente mongo.exe

Podemos perceber que por padrão o cliente conecta a base de dados test no servidor localhost. Digitando help o console exibe todos os comandos disponíveis.
Vamos digitar agora o comando:

> use mydb
switched to db mydb

Diferentemente de muitos bancos de dados existentes percebam que não é preciso executar um comando para criar um banco de dados. O mais interessante ainda é que o banco só é criado fisicamente quando os primeiros dados forem inseridos. Para confirmar executaremos o comando show dbs para exibir todos os bancos de dados:

> show dbs
admin   (empty)
local   (empty)
test    0.03125GB

Está na hora de adicionarmos algumas informações e consultá-las.

> objeto1 = { nome : "mongo" };
{ "nome" : "mongo" }
> registroNovo = { x : 3 };
{ "x" : 3 }
> db.minhaTabela.save(objeto1);
> db.minhaTabela.save(registroNovo);
> db.minhaTabela.find();
{ "_id" : ObjectId("4db5bda2eac9332a080885e8"), "nome" : "mongo" }
{ "_id" : ObjectId("4db5bdbdeac9332a080885e9"), "x" : 3 }

Agora vamos analisar o que foi executado. Inicialmente criamos dois objetos (documentos na nomenclatura do MongoDB): objeto1 e registroNovo. Percebam que eles possuem uma estrutura de campos totalmente diferente. Em seguida, adicionamos os dois objetos à tabela (coleção na nomenclatura do MongoDB) minhaTabela através do comando save(), na última linha realizamos uma consulta aos dados da tabela através do comando find().

Com isso passamos a entender o que seria o esquema dinâmico, onde não existe o conceito de estrutura de campos para uma tabela. Sendo o campo (chave na nomeclatura do MongoDB) _id criado automaticamente no momento do insert.

Bem pessoal, por enquanto é só. Aguardem os próximos posts sobre o MongoDB.

Leave a Reply