Learning CouchDB

Índice
Os sistemas tradicionais de banco de dados existem há muito tempo no mercado e, claro, são muito eficazes, pois pela longevidade atingiram uma maturidade e estabilidade inquestionáveis.
O problema é que agora que com o aumento do uso de dados e sua natureza cada vez mais complexa, as estruturas tradicionais estão se tornando cada vez mais complicadas e com isso seu desempenho é prejudicado, tanto no nível de produção quanto no de desenvolvimento de sistemas.
Atualmente, a força exercida por sistemas não relacionais ou NoSQL como também são conhecidos, eles resolveram algumas dessas complexidades que são mostradas com os sistemas tradicionais ou relacionais.
COUCHDB E A FORÇA DO HTTP
CouchDB É um dos novos sistemas não relacionais, no entanto sua estrutura é muito diferente de serviços como MongoDB por exemplo. Isso ocorre porque ele baseia toda a sua administração em um API que viaja e se comunica apenas através HTTP.
Com o exposto, devemos rapidamente inferir que, graças ao uso de HTTP temos todos os seus métodos para poder fazer o nosso trabalho como POST, GET, PUT DELETE, onde com estas quatro ferramentas de protocolo podemos fazer tudo funcionar ao nosso gosto.
MANTENHA-NOS RELAXADOS
O objetivo final de CouchDB é que podemos relaxar, embora pareça algo que não faz sentido, três áreas importantes são abordadas que reforçam o conceito de baixo problema ao usar este sistema de armazenamento de dados. Vamos ver a que se refere:
InterfaceAo dirigir HTTP como sua forma de comunicação, a criação de aplicativos com os quais podemos usar CouchDB baixa complexidade, já que neste momento todos os frameworks têm facilidades de conexão para serviços DESCANSO, com o qual perderemos menos tempo e portanto nossas entregas ficarão mais tranquilas.
Colocado em produçãoGeralmente, quando tentamos trazer o ambiente do desenvolvimento para a produção, sempre ocorre um problema, ou temos que fazer mais coisas do que o esperado, mesmo assim sempre haverá falhas que complicam a nossa vida. CouchDB É feito para esperar por falhas e ser capaz de gerenciá-las por si só, desta forma mesmo que ocorram problemas saberemos que CouchDB Isso nos ajudará a diminuir o nível de estresse.
EscalarA escalabilidade dos sistemas é outro ponto importante, pois quando crescemos precisamos de mais potência e neste CouchDB Ajuda-nos, pois é muito fácil de manter em vários servidores, pois a sua arquitectura permite-nos usufruir de versatilidade ao nível das fontes de dados e da sua sincronização.
INSTALAÇÃO
A primeira coisa que precisamos para começar a trabalhar CouchDB é instalá-lo em nosso sistema, para isso devemos primeiro saber que temos a possibilidade de instalá-lo em Linux, MAC e Windows, por isso temos um grande número de plataformas para escolher aquela que mais gostamos ou na qual se baseiam nossos serviços.
Em Linux a instalação é tão fácil quanto colocar o seguinte comando no console ou terminal em sistemas baseados em Debian, O que Ubuntu ou hortelã:
 sudo apt-get install couchdb
Assim que a instalação estiver concluída, o serviço tende a ser iniciado automaticamente, caso contrário, devemos saber que ele está em /etc/init.d/couchdb então nessa rota podemos escrever .Começar e isso será suficiente.
Em Mac É um processo muito fácil também, especialmente se usarmos cerveja caseira uma vez que só precisamos escrever o seguinte no terminal ou console:
 brew install couchdb
Uma vez instalado para iniciar o serviço, só temos que escrever couchdb em nosso console e o serviço será iniciado sem problemas.
Para instalar em janelas Devemos baixar o pacote com o instalador do site oficial do projeto, aqui também teremos os arquivos dos demais sistemas.

PROLONGAR

Uma vez que tenhamos o arquivo, devemos executá-lo e seguir seu procedimento, isso nos permitirá instalá-lo como um serviço ou como uma aplicação, qualquer que seja a opção válida para nossos usos.
TESTANDO NOSSA INSTALAÇÃO
Agora que instalamos e iniciamos o serviço devemos fazer o teste de tornassol para ver se está funcionando bem, para isso em nosso navegador devemos seguir o seguinte caminho:
 http: / /127.0.0.1:5984/_utils/index.html
Uma vez lá, devemos ver algo semelhante ao seguinte:

PROLONGAR

Adicionalmente, no lado direito desta tela temos vários links que nos ajudarão, por exemplo um verificador de instalação, e acesso direto aos links com a documentação oficial em caso de dúvidas.

O que vimos é a interface da web chamada Futon, e se encarrega de nos dar a administração do serviço de forma visual e amigável. Para criar uma nova base de dados basta clicar na opção Criar banco de dados Isso nos levará a uma pequena interface onde definiremos seu nome, que podemos ver na imagem a seguir:

Assim que o processo for concluído, poderemos acessar nosso Base de dados e adicionar documentos, o que seria uma espécie de equivalente aos registros em sistemas de Banco de Dados relacionais.
Ao criar um documento, teremos imediatamente um _eu ia e podemos adicionar todos os campos de que precisamos sem ter que seguir uma estrutura ou um esquema, vamos ver isso na imagem a seguir:

PROLONGAR

Se clicarmos na guia que diz fonte, veremos que este documento é na verdade um JSON, o que nos dá uma versatilidade maior já que quase todas as linguagens possuem bibliotecas que nos permitem manipular este tipo de dados.

PROLONGAR

SEGURANÇA DO NOSSO SERVIÇO
Ao instalar CouchDB Inicia-se em modo de administrador sem senhas, o que é vantajoso porque nos permite começar a utilizar o serviço diretamente, porém é muito inseguro já que qualquer pessoa que acesse nosso equipamento poderá ver nossos documentos.
Futon indica isso no canto inferior direito, onde nos diz que estamos no modo Grupo de administradores!, e nos dá diretamente um link para corrigi-lo.

Ao clicar em Conserte isso Podemos definir os usuários com seus nomes e senhas que podem acessar o serviço. Como podemos ver na imagem a seguir, ao colocar as credenciais e aceitar, teremos nossa primeira camada de segurança nela com alguns passos simples.

MODELOS DE DADOS
Já que temos um pouco de prática, vamos voltar um pouco à teoria, pois assim teremos uma base para poder agregar melhores conhecimentos. Como dissemos CouchDB não tem esquema e estrutura, o que nos torna capazes de criar grandes coleções ou agrupamentos de documentos, mas cada documento pode ter elementos únicos e isso não torna o Base de dados ser menos gerenciável.
Ao contrário, essa estrutura é o que lhe dá uma vantagem sobre os sistemas relacionais, pois podemos usar os dados sem precisar conhecê-los e ainda ser capazes de fazê-los funcionar em nosso sistema. Por exemplo, uma ficha de dados de contato, vamos imaginar que recebemos um primeiro contato com dados:
 Nome: Empresa 1 Telefone: 4445566 Email: [email protected]
Mas o que acontece se tivermos outra empresa que nos contata, e ela tiver vários contatos, em um sistema relacional temos duas opções: Podemos adicionar vários registros ou modificar a estrutura e adicionar mais campos, em CouchDB Nós apenas criamos um novo documento com uma estrutura diferente, mas que está no mesmo Banco de Dados de Contatos, por exemplo:
 Nome: Empresa 2 Telefone: 6667788 Skype: 8889900 Correio: outro [email protected]
Se aplicarmos isso a CouchDB deve ser parecido com isto em nossa interface Futon:

PROLONGAR

Como vemos, usamos o mesmo Base de dados do exemplo de instalação e sem ter que configurar nada adicionamos campos diferentes e mesmo assim o nosso Base de dados Funciona sem problemas. É aqui que reside o seu poder, uma vez que podemos lidar com situações e mudanças da vida real de forma dinâmica. No aspecto teórico vimos como funcionam esses novos manipuladores que não dependem de esquemas, o que nos dá a possibilidade de tornar as aplicações mais dinâmicas e que não dependem de mudanças constantes para se adaptarem.
Com isso terminamos este tutorial, demos nossos primeiros passos no mundo NoSQL o que isso nos representa CouchDB, o mais interessante é a interface da web que nos é oferecida, pois, ao contrário de serviços como MongoDB onde tudo é feito através do console, a interface amigável nos ajuda a desenvolver nossos aplicativos e nosso conhecimento mais rapidamente.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave