quarta-feira, 12 de junho de 2013

Vantagens de se utilizar o MongoDB

O MongoDB é um ótimo banco para trabalhar com uma grande quantidade de dados com isso escolhi alguns motivos pelos quais o Mongo é utilizado por grandes empresas que possuem uma quantidade de dados expressiva 

- Desenvolvimento Rápido
- Fácil armazenamento dos dados dos clientes com JSON flexível 
- Ótima performance 
- Alta escalabilidade

domingo, 9 de junho de 2013

Diferença de sintaxe entre o Mysql e o MongoDB

Esta imagem demonstra as principais diferenças de sintaxe entre os dois bancos de dados :



1 - colunas de dimensão agrupados são puxados
como teclas de função no mapa reduzindo o tamanho do conjunto de trabalho .
2 - medidas devem ser agregadas manualmente
3- agregações que dependem de um registro devem aguardar até a finalização 
4- funções de medidas podem usar lógica procedural 
5- Os filtros tem um mapeamento objeto relacional monitorando os registros
6-  Filtragens agregadas devem ser aplicadas ao conjunto dos resultados e não ao map/reduce
7 - crescente e decrescente



Controlando o MongoDB

Os comandos a seguir servem para iniciar , parar e reiniciar o MongoDB

Iniciando o MongoDB  :

1 -  $sudo service mongodb start

==============================================================

 Parando o MongoDB

2 - $sudo service mongodb stop

=============================================================

Resetando o MongoDB

3 - $sudo service mongodb restart


Atualizando o MongoDB no Linux

Realizando uma atualização no MongoDB

1 -  $sudo apt-get update
2 - $sudo apt-cache search mongodb
      mongodb
      mongodb-clients
      mongodb - dev
      mongodb-server

     mongodb-10gen
     mongodb18-10gen
     mongodb20-10gen

3-  Em seguida escolher a versão e realizar a instalação 

$sudo apt-get install



sábado, 8 de junho de 2013

Instalando o MongoDB no Linux

Os passos para a instalação do mongoDB são: 

1- Abrir o terminal e utilizar o comando apt-get
2  -  Utilizar o sudo-apt-get install mongodb




3- Criar duas pastas  utilizando os comandos : sudo mkdir /data
    cd /data
    sudo mkdir db
4- Alterar a permissão do usuário no acesso ao banco 
sudo chown seu_usuario_linux_db
Abra o terminal e vamos instalar o MongoDB via apt-get:
sudo apt-get install mongodb
5- Para iniciar o serviço do mongo no linux após a instalação , basta utilizar o comando mongod


Em seguida deve-se rodar o MongoDB com o comando mongod . Para iniciar o serviço deve-se abrir o cliente no terminal .

Benckmark - Pequeno comparativo entre o MongoDB e o Mysql

Realizando um pequeno comparativo de inserção de dados nos bancos MongoDB e Mysql podemos perceber uma grande diferença de performance entre os dois bancos de dados . O que dá uma vantagem ao MongoDB.


Mysql

Inserindo/lendo "title" => "Calvin and Hobbes"
Inserção
inserindo 50k
Tempo (segundos): 26.963586091995
inserindo 50k
Tempo (segundos): 35.74323797226
inserindo 50k
Tempo (segundos): 27.360780954361
inserindo 50k
Tempo (segundos): 27.239809989929
Leitura dos 200k : Tempo (segundos):0.16633296012878

=============================================================

MongoDB

inserindo 50k
Tempo (segundos): 6.9094848632812
inserindo 50k
Tempo (segundos): 9.049604177475
inserindo 50k
Tempo (segundos): 4.2792370319366
inserindo 50k
Tempo (segundos): 10.331115007401
Leitura dos 200k : Tempo (segundos): 0.14360809326172



quarta-feira, 5 de junho de 2013

Como renomear campos com MongoDB


Para o pessoal que utiliza o modelo relacional é uma coisa muito simples executar um comando como esse: ALTER TABLE ou ALTER COLUMN e outros a depender do banco utilizado. Porém com o MongoDB não possui essa facilidade apesar de ser bem fácil fazer o mesmo no MongoDB.

Uutilizaremos o modificador $rename

db.users.update( {} , { $rename : { ‘user_name’ : ‘name’ }}, true, true );

  1. {} – O conjunto vazio é porque queremos todos os registros;
  2. $rename – O modificador para o comando de atualização que neste caso: substituiu “user_name” por “name”;
  3. false – Permitir upserts caso o registro não exista;
  4. true – multi option: Significa aplicar comando para todos os registros, já que por padrão o update() atualiza apenas o primeiro registro.
Essa técnica é simples, porém não se esqueça de apagar seus índices antigos que utilizem a nomenclatura antiga e refaçam para a nova.