En Workbench de consulta es una herramienta indispensable para los desarrolladores que trabajan con Servidor Couchbaseespecialmente los que trabajan con N1QL.
Seguro que el herramienta de línea de comandos cbq es útil, pero Query Workbench tiene una interfaz de usuario agradable y también muestra la nueva función de inferencia de esquemas de Bucket Analysis.
Para llegar al Query Workbench, sólo tienes que dirigir tu navegador a la Consola Couchbase y hacer clic en la nueva pestaña "Query" en la parte superior de la página.

Soy desarrollador orientado a Microsoft desde hace tiempo y utilizo SQL Server Management Studio todo el tiempo. Esta nueva herramienta Query Workbench me resulta cómoda.
Hay tres áreas principales sobre las que quiero llamar su atención:
-
El área N1QL Editor
-
Área de resultados
-
El área de análisis de cubos
N1QL Área del editor
En esta área, puede escribir/pegar/editar consultas N1QL adhoc.

Observa que obtienes un bonito resaltado de sintaxis con tu N1QL. Haz clic en "Ejecutar" para ejecutar una consulta. Como ejemplo, acabo de hacer una simple SELECCIONAR * del cubo de muestras de viaje.
A medida que vayas ejecutando consultas, irás creando un historial. Puedes volver a estas consultas utilizando la flecha de navegación situada en la parte superior del área, y borrar el historial en cualquier momento.
También hay un práctico botón para guardar una consulta en un archivo de texto.
Área de resultados
En esta área, verás los resultados de la consulta N1QL que has ejecutado.
Suponiendo que la consulta se haya realizado correctamente, aquí verá los resultados de la misma. Por ejemplo, aquí están los resultados de la consulta anterior.

A veces es útil visualizar los resultados de una manera diferente. Puede alternar entre el JSON por defecto, una vista de tabla (que intenta representar los resultados en forma de tabla lo mejor que puede) y una vista de árbol (que es una versión ligeramente más concisa de la vista JSON). A continuación se muestran los resultados de la misma consulta de tres formas distintas.

Hay un botón para guardar el resultado JSON en un archivo de texto.
Observe también que se muestra información sobre los resultados: Estado (éxito o no), Tiempo transcurrido, Tiempo de ejecución, Recuento de resultados y Tamaño del resultado.
Si tu consulta no tiene éxito, obtendrás un resultado con información que podría ayudarte a solucionar la consulta en la que estás trabajando.
Por ejemplo, si he cometido un error tipográfico en el nombre del cubo:

Análisis de cubos
He dejado lo mejor para el final. Couchbase Server es una base de datos de documentos sin esquema. No hay restricciones en la estructura de los documentos JSON que introduces, y los campos en ese documento. Si quisieras, cada documento podría ser completamente único.
Sin embargo, es frecuente que los documentos tiendan a adoptar una forma regular. Cierto porcentaje de los documentos compartirán aproximadamente los mismos campos y la misma estructura. Teniendo esto en cuenta, si tomáramos una muestra aleatoria de todos los documentos de un cubo y los examináramos, podríamos "inferir" un esquema. Eso es exactamente lo que puede hacer en el área de Análisis de Cubos.
Ten en cuenta que esta es una característica de la Edición Enterprise, y no está disponible en la Edición Community de Couchbase. Si recibes un mensaje como "Not Implemented INFER", significa que probablemente estés usando la Community Edition.
Haz clic para expandir un bucket, y Couchbase tomará una muestra (por defecto de 1000 documentos) y construirá un esquema implícito. El análisis del bucket listará cada "sabor" de documento que encuentre, y qué porcentaje de documentos muestreados coinciden con ese sabor. Por ejemplo, en cubo de viajeVeo 5 sabores en la lista. También puede utilizar un comando N1QL como INFER los resultados en bruto.viaje-muestra

En el viaje-muestralos sabores que encontró Bucket Analysis corresponden convenientemente a los valores de campo de los documentos' 'type': aeropuerto, aerolínea, punto de referencia, ruta y hotel. Ahora que sé que existen estos tipos, puedo construir consultas y/o índices N1QL que utilicen el campo de tipo. Por ejemplo SELECT * FROM .viaje-muestra WHERE type='route' LIMIT 5;
El análisis de cubos puede ser muy útil a la hora de construir consultas N1QL o simplemente para averiguar la forma de los datos dentro de un cubo.
Resumen
Personalmente, no sé cómo me las arreglaría sin Query Workbench. Es mi herramienta de cabecera cuando trabajo con N1QL, creo índices y experimento con Couchbase Server.
¿Qué opinas del Query Workbench? ¿Qué cosas geniales piensas hacer con él? Pínchame en Twitterdeja un comentario o envíame un correo electrónico (matthew.groves AT couchbase DOT com).