Configurar Couchbase Server puede ser realmente fácil pero si aún no lo has instalado, aquí tienes instrucciones paso a paso. Si eres nuevo en Servidor Couchbase 2.0 y te preguntas qué hay de nuevo, este blog te dará una rápida visión del producto y te explicará algunos conceptos clave. Así que empecemos.
Una vez que haya instalado Couchbase Server 2.0, deberá inicio de sesión a la interfaz de administración de couchbase y compruébalo. El 'Panorama de las agrupaciones". le ofrece una vista de alto nivel de los recursos de su clúster, incluida la cantidad de RAM y disco utilizados, el rendimiento del clúster, las búsquedas de disco por segundo y el estado de los servidores del clúster: número de servidores con fallos, pendientes de reequilibrio o inactivos.

Vista general del clúster en la consola de administración del servidor Couchbase
Los datos en Couchbase Server se almacenan en contenedores lógicos llamados 'buckets'. Para los que estéis familiarizados con las bases de datos relacionales, podéis pensar en los buckets como algo similar a las bases de datos. En la siguiente captura de pantalla, para crear un nuevo bucket, ve a la sección 'Cubos de datoshaga clic en la pestaña 'Crear nuevo cubo de datos y siga las instrucciones aquí. En caso de que su cuota de RAM ya esté utilizada por cubos existentes, es posible que tenga que ir al cubo existente y crear algo de espacio.

Creación de un nuevo bucket en Couchbase Server
Para el resto de este blog, nos centraremos en el muestra de cerveza que incluye documentos sobre cervezas y cervecerías. Puede que encuentre algunas cervezas interesantes. Como se muestra en la Figura 2, si ha instalado el cubo de muestra de cerveza, observará que este cubo de muestra tiene 7303 documentos. Si aún no ha instalado el cubo de cerveza de muestra, puede hacerlo a través de la consola de administración: vaya a la sección 'Ajustes haga clic en 'Cubos de muestra' y selecciona 'beer-sample' para instalarlo.

Instalación de buckets de ejemplo en Couchbase Server
El bucket beer-sample contiene muchos documentos JSON - vamos a explorar estos documentos y echar un vistazo más de cerca a un par de ellos. Para ver los documentos en cualquier bucket Couchbase (el bucket muestra de cerveza en este caso), haga clic en el botón 'Documentos como se muestra a continuación.

Cubos de datos en Couchbase Server
Seleccionando el nombre del bucket en la lista desplegable, puede navegar entre los documentos de los distintos buckets. También puede hojear los documentos, crear nuevos documentos o editar y eliminar los documentos actuales. Además, puede filtrar documentos por intervalo de claves o buscar un documento concreto por id. (Algunas capturas de pantalla a continuación)

Lista de documentos del cubo de muestras de cerveza

Filtrar documentos y buscar documentos por ID
Ahora, tratemos de editar el segundo documento con la clave "21st_amendment_brewery_cafe-21a_ipa" - haga clic en el botón "E".dit' correspondiente al 2º documento. Esto nos lleva al editor de documentos de Couchbase como se muestra a continuación.

Edición de un documento JSON concreto
El editor de documentos de Couchbase te permite borrar un documento, guardar cualquier cambio en el documento actual o guardar el documento con un ID diferente. El documento mostrado en la figura anterior tiene el id '21st_amendment_brewery_cafe-21a_ipa'. El atributo 'type' muestra que el tipo de documento es un documento de cerveza y tiene varios campos JSON diferentes, incluyendo el nombre, el alcohol por volumen (abv) y otros datos de categorización.
Ahora, averigüemos más sobre la fábrica en la que se fabricó esta cerveza. El identificador de la cervecería puede obtenerse del documento de la cerveza ("21st_amendment_brewery_cafe" en este caso). Para buscar un documento con un identificador determinado, escriba el identificador en el cuadro de texto como se muestra en la figura siguiente y se filtrarán automáticamente los resultados. Verá todos los documentos cuyas claves empiecen por "21st_amendment_brewery_cafe".

Búsqueda de documentos en función del ID del documento

Documento Cervecería con esquema diferente al de Cerveza
Ahora hablemos de indexar y consultar. Con Couchbase Server 2.0, puedes fácilmente indexar y consultar documentos JSON. Los índices se definen usando documentos de diseño y vistas. Los documentos de diseño se crean por cubo. Cada documento de diseño puede contener varias vistas. Cada vista incluye un Mapa y opcionalmente un Reduzca ambas escritas en Javascript.
Las vistas en Couchbase se construyen de forma asíncrona y por lo tanto son eventualmente indexado. Por defecto, las consultas en estas vistas son finalmente coherente con respecto a las actualizaciones de documentos. Sin embargo, si su aplicación requiere que los datos se indexen inmediatamente, SDK de Couchbase ofrecen una opción para controlar este comportamiento en cada operación.
El bucket beer-sample viene con algunas vistas de producción predefinidas como se muestra a continuación - estas vistas están definidas dentro del documento de diseño 'beer'. Típicamente, cuando escribes una nueva vista Couchbase, empezarás con una vista de desarrollo y luego la moverás a producción una vez que la hayas probado. Las vistas de producción no pueden ser editadas - necesitan ser copiadas a desarrollo antes de que cualquier cambio pueda ser hecho.

Vistas en el cubo de muestras de cerveza
Veamos ahora qué significa cada una de estas vistas. Al hacer clic en el botón 'Mostrarcorrespondiente a cada vista, puede consultar la definición de la vista. En primer lugar, veamos la vista 'brewery_beers'.

Ver definición y resultados de la consulta en la vista 'brewery_beers
En cervecerías produce una lista de claves y valores de cervecerías y cervezas. Cada clave es una clave compleja. Puedes consultar la vista pulsando el botón "Mostrar resultados". Como se trata de una vista de producción, Couchbase Server aplica la función mapreduce javascript a todos los documentos del cluster de Couchbase.
En función de mapa toma como entrada los objetos doc y meta. El objeto doc puede utilizarse para acceder a los campos del documento. El campo meta se puede utilizar para acceder a los metadatos asociados al documento que contienen el ID del documento, el tiempo de caducidad, la revisión y otra información. En el ejemplo anterior, si el documento es de tipo 'cervecería', emitimos un único valor que tiene el nombre de la cervecería (meta.id). Si el documento es de tipo "cerveza", comprobamos si el documento de cerveza tiene un identificador de cervecería y emitimos una lista que contiene dos valores: el nombre de la cervecería (doc.brewery_id) y el nombre de la cerveza (meta.id).
Así, Couchbase muestra el ID de la cervecería para los tipos de documentos de cervecería, y el ID de la cervecería y el ID de la cerveza para los tipos de documentos de cerveza. Una vez definida una vista en Couchbase Server, puedes consultar datos usando esta vista materializada y buscar información basada en varios filtros.

Definición de la vista by_location
La segunda vista "by_location" muestra la ubicación de la fábrica de cerveza, teniendo en cuenta los campos que faltan en los datos de origen. La salida crea información por país, por país y estado, o por país, estado y ciudad. La vista también incluye el campo reducción incorporada en la parte de reducción de la vista para contar el número de resultados devueltos. También puede utilizar esta vista para contar por condado, país y estado, etc. utilizando agrupación.
Ahora, intentemos crear otra vista para listar las cervezas ordenadas por grados de alcohol por volumen (abv). Para crear la vista, haga clic en el botón 'Crear vista de desarrollo en el botón 'Puntos de vista como se muestra a continuación. No olvide seleccionar el cubo "muestra de cerveza".

Creación de una nueva vista en Couchbase Server

Documento de diseño 'dev_beers' y vista 'alcoholByVolume
Después de pulsar 'Guardarpuede editar la vista pulsando el botón 'Editar'.

Vistas de desarrollo en Couchbase Server
Esto le llevará al editor de vistas como se muestra a continuación. Introduzca su Función de mapa en javascript y, a continuación, haga clic en el botón 'Guardar para guardar la definición de la vista y el botón 'Resultadospara ver los resultados.

Editor de vistas para editar la vista
Si observamos detenidamente la función View Map, ésta emite el atributo "abv" y el nombre de la cerveza. Emitimos estos valores sólo para documentos de tipo cerveza. Basado en la vista de Couchbase buenas prácticas de redacciónSiempre debes comprobar los valores nulos de los campos antes de emitirlos en una vista. También puedes filtrar y agregar los resultados de tus vistas en el servidor Couchbase - en este caso estamos ordenando la vista por orden descendente.

Ver cervezas por volumen con resultados de subconjuntos
Y por último, ahora que ya has probado tu vista y estás listo para utilizarla, puedes 'Publique' a producción.

Además de la indexación y la consulta, otra característica interesante de Couchbase Server 2.0 es la adición de la replicación entre centros de datos (XDCR). Usando esta característica puedes replicar datos activos a múltiples centros de datos, geográficamente diversos, ya sea para recuperación de desastres o para acercar los datos a sus usuarios para un acceso más rápido. No entraré en demasiados detalles sobre la replicación entre centros de datos en este blog, pero puedes leer más sobre cómo funciona y cómo configurarla aquí.
¿Y ahora qué?
Francamente, explorar el cubo de muestras de cerveza y escribir una simple vista Couchbase es bastante fácil. Ahora que ya has empezado, intenta construir una aplicación rica con la potencia de Couchbase Server 2.0. Desde aquí te recomendamos que eches un vistazo al sección de desarrolladores de nuestro sitio web para obtener más información y nuestra guía para desarrolladores.
Esperamos ver muchas más aplicaciones utilizando Couchbase Server 2.0 en los próximos meses, especialmente ahora que el Cinta Couchbase ha sido anunciada. Esperemos que este blog te inspire para crear una nueva aplicación basada en 2.0 y mostrarla. Disfruta y ¡feliz programación con Couchbase Server 2.0!
Algunos recursos adicionales para usted.
- 2.0 documentación - https://www.couchbase.com/docs/couchbase-manual-2.0/index.html
- 2.0 guía del desarrollador - https://www.couchbase.com/docs/couchbase-devguide-2.0/index.html
[...] un desarrollador, si has instalado Couchbase Server 2.0 y has visto sus nuevas características, puede que quieras golpear el servidor con algo de carga para hacer algunas pruebas básicas de tu Couchbase [...]