A configuração do Couchbase Server pode ser muito fácil, mas se você ainda não o instalou, veja a seguir Instruções passo a passo. Se você é novo no Servidor Couchbase 2.0 e está se perguntando o que há de novo, este blog lhe dará um rápido tour pelo produto e explicará alguns conceitos-chave. Então, vamos começar.
Depois de instalar o Couchbase Server 2.0, você deve login para a interface de usuário do administrador do couchbase e verifique. O 'Visão geral do cluster A guia "Cluster" fornece uma visão de alto nível dos recursos do cluster, incluindo a quantidade de RAM e disco usados, a taxa de transferência do cluster, as buscas de disco por segundo e o status dos servidores no cluster - número de servidores com falha, rebalanceamento pendente ou inativos.
Visão geral do cluster no console de administração do Couchbase Server
Os dados no Couchbase Server são armazenados em contêineres lógicos chamados "buckets". Para aqueles que estão familiarizados com bancos de dados relacionais, é possível pensar nos buckets como semelhantes aos bancos de dados. Na captura de tela abaixo, para criar um novo bucket, vá para a seção 'Compartimentos de dados', clique na guia 'Criar um novo balde de dados e siga as instruções aqui. Caso sua cota de RAM já esteja sendo usada pelos buckets existentes, talvez seja necessário ir até o bucket existente e criar algum espaço.
Criação de um novo bucket no Couchbase Server
No restante deste blog, vamos nos concentrar na amostra de cerveja que inclui documentos sobre cervejas e cervejarias. Talvez você encontre algumas cervejas interessantes. Conforme mostrado na Figura 2, se você tiver instalado o compartimento de amostra de cerveja, notará que esse compartimento de amostra tem 7303 documentos. Se você ainda não instalou o bucket de amostra de cerveja, ainda pode instalá-lo por meio do console de administração - vá para 'Configurações clique na guia 'Baldes de amostra' e selecione 'beer-sample' para instalá-lo.
Instalação de buckets de amostra no Couchbase Server
O bucket de amostra de cerveja contém muitos documentos JSON. Vamos explorar esses documentos e dar uma olhada mais de perto em alguns deles. Para visualizar os documentos em qualquer bucket do Couchbase (o amostra de cerveja neste caso), clique no botão 'Documentos conforme mostrado abaixo.
Compartimentos de dados no Couchbase Server
Ao escolher o nome do compartimento na lista suspensa, você pode navegar entre os documentos em diferentes compartimentos. Você também pode percorrer os documentos, criar novos documentos ou editar e excluir os documentos atuais. Além disso, é possível filtrar documentos por intervalo de chaves ou procurar um determinado documento por id. (Algumas capturas de tela abaixo)
Lista de documentos no compartimento de amostras de cerveja
Filtragem de documentos e busca de documentos por ID
Agora, vamos tentar editar o segundo documento com a chave '21st_amendment_brewery_cafe-21a_ipa' - clique no botão 'Edit' correspondente ao segundo documento. Isso nos leva ao editor de documentos do Couchbase, conforme mostrado abaixo.
Edição de um documento JSON específico
O editor de documentos do Couchbase permite que você exclua um documento, salve quaisquer alterações no documento atual ou salve o documento com um ID de documento diferente. O documento mostrado na figura acima tem o ID '21st_amendment_brewery_cafe-21a_ipa'. O atributo "type" mostra que o tipo de documento é um documento de cerveja e tem vários campos JSON diferentes, incluindo o nome, o álcool por volume (abv) e outros dados de categorização.
Agora, vamos descobrir mais sobre a cervejaria em que essa cerveja foi produzida. O brewery_id pode ser obtido no documento da cerveja ("21st_amendment_brewery_cafe", neste caso). Para pesquisar um documento com um determinado id, digite o id na caixa de texto, conforme mostrado na figura abaixo, e os resultados serão filtrados automaticamente para você. Você verá todos os documentos com chaves que começam com "21st_amendment_brewery_cafe".
Pesquisa de documentos com base em documentID
Documento Brewery com esquema diferente do documento Beer
Agora vamos falar sobre indexação e consulta. Com o Couchbase Server 2.0, você pode facilmente indexar e consultar documentos JSON. Os índices são definidos usando documentos de projeto e visualizações. Você cria documentos de design por lote. Cada documento de design pode conter várias visualizações. Cada visualização inclui um Mapa e, opcionalmente, um Reduzir ambas escritas em Javascript.
As visualizações no Couchbase são criadas de forma assíncrona e, portanto, são eventualmente indexado. Por padrão, as consultas nessas exibições são eventualmente consistente com relação às atualizações de documentos. No entanto, se seu aplicativo exigir que os dados sejam indexados imediatamente, SDKs do Couchbase oferecem uma opção para controlar esse comportamento por operação.
O bucket beer-sample vem com algumas visualizações de produção predefinidas, conforme abaixo - essas visualizações são definidas no documento de design "beer". Normalmente, ao escrever uma nova visualização do Couchbase, você começará com uma visualização de desenvolvimento e a moverá para produção depois de testá-la. As visualizações de produção não podem ser editadas - elas precisam ser copiadas para o desenvolvimento antes que qualquer alteração possa ser feita.
Visualizações no balde de amostras de cerveja
Agora, vamos dar uma olhada no que cada uma dessas exibições significa. Ao clicar no ícone 'Mostrar' correspondente a cada visualização, você pode examinar a definição da visualização. Primeiro, vamos dar uma olhada na visualização "brewery_beers".
Exibir a definição e os resultados da consulta na visualização "brewery_beers
O cervejas_cervejarias gera uma lista de chaves e valores de cervejarias e cervejas. Cada chave é uma chave complexa. Você pode consultar a exibição clicando no botão "Mostrar resultados". Como essa é uma exibição de produção, o Couchbase Server aplica a função javascript mapreduce a todos os documentos no cluster do Couchbase.
O função de mapa recebe como entrada os objetos doc e meta. O objeto doc pode ser usado para acessar os campos do documento. O campo meta pode ser usado para acessar os metadados associados ao documento que contêm o ID do documento, o tempo de expiração, a revisão e outras informações. No exemplo acima, se o documento for do tipo "cervejaria", emitiremos um único valor que contém o nome da cervejaria (meta.id). Se o documento for do tipo "cerveja", testaremos se o documento da cerveja tem um brewery_id e emitiremos uma lista que contém dois valores: o nome da cervejaria (doc.brewery_id) e o nome da cerveja (meta.id).
Assim, o Couchbase gera o ID da cervejaria para os tipos de documento de cervejaria, e o ID da cervejaria e o ID da cerveja para os tipos de documento de cerveja. Depois que uma visualização é definida no Couchbase Server, você pode consultar os dados usando essa visualização materializada e procurar informações com base em vários filtros.
Definição da exibição by_location
A segunda visualização 'by_location' gera a localização da cervejaria, considerando os campos ausentes nos dados de origem. A saída cria informações por país, por país e estado, ou por país, estado e cidade. A exibição também inclui o campo redução incorporada A função "_count" na parte de redução da exibição para contar o número de resultados retornados. Você também pode usar essa exibição para contar por município, país e estado, etc., usando agrupamento.
Agora, vamos tentar criar outra exibição para listar as cervejas classificadas por classificações de álcool por volume (abv). Para criar a exibição, clique no ícone 'Criar visualização de desenvolvimento no botão 'Visualizações conforme mostrado abaixo. Não se esqueça de selecionar o balde "beer-sample" (amostra de cerveja).
Criação de uma nova visualização no Couchbase Server
Documento de design "dev_beers" e exibição "alcoholByVolume
Depois de clicar em 'Salvar', você pode editar a exibição clicando no ícone 'Editar'.
Visualizações de desenvolvimento no Couchbase Server
Isso o levará ao editor de visualização, conforme mostrado abaixo. Digite sua Função de mapa em javascript e, em seguida, clique no botão 'Salvar' para salvar a definição da visualização e o botão 'Mostrar resultados' para mostrar os resultados da visualização.
Editor de visualização para editar a visualização
Se dermos uma olhada mais de perto na função view Map, ela emite o atributo "abv" e o nome da cerveja. Emitimos esses valores somente para documentos do tipo cerveja. Com base na visualização do Couchbase práticas recomendadas de redaçãoSe você não tiver uma visão, deve sempre testar os valores de campo nulos antes de emiti-los em uma exibição. Você também pode filtrar e agregar os resultados da exibição no servidor Couchbase - neste caso, estamos classificando a exibição por ordem decrescente.
Ver cervejas por volume com resultados de subconjunto
E, finalmente, agora que você testou sua visualização e está pronto para usá-la, você pode 'Publicar' para a produção.
Além da indexação e da consulta, outro recurso interessante do Couchbase Server 2.0 é a adição da replicação entre data centers (XDCR). Com esse recurso, é possível replicar dados ativos para vários data centers geograficamente diferentes, seja para recuperação de desastres ou para aproximar os dados dos usuários e obter acesso mais rápido aos dados. Não entrarei em muitos detalhes sobre a replicação entre datacenters neste blog, mas você pode ler mais sobre como ela funciona e como configurá-la aqui.
O que vem a seguir?
Francamente, explorar o bucket de amostra de cerveja e escrever uma visualização simples do Couchbase é muito fácil. Agora que você já começou, tente criar um aplicativo avançado com o poder do Couchbase Server 2.0. A partir daqui, recomendamos que você dê uma olhada no seção de desenvolvedores de nosso site para saber mais e nosso guia do desenvolvedor.
Esperamos ver muito mais aplicativos usando o Couchbase Server 2.0 nos próximos meses, especialmente agora que o Faixa de opções do Couchbase foi anunciado. Esperamos que este blog o inspire a criar um novo aplicativo baseado em 2.0 e exibi-lo. Aproveite e seja feliz codificando com o Couchbase Server 2.0!
Alguns recursos adicionais para você.
- Documentação 2.0 - http://www.couchbase.com/docs/couchbase-manual-2.0/index.html
- Guia do desenvolvedor 2.0 - http://www.couchbase.com/docs/couchbase-devguide-2.0/index.html
[...] um desenvolvedor, se você instalou o Couchbase Server 2.0 e viu seus novos recursos, talvez queira carregar o servidor com alguma carga para fazer alguns testes básicos do seu Couchbase [...]