" Nosotros se complace en anunciar el nombramiento del Disponibilidad ¡de Couchbase Ruby SDK 3.0 ! "
Enlaces útiles
Introducción
El SDK de Couchbase para Ruby te permite conectarte a un cluster de Couchbase desde Ruby usando una API simplificada y de alto rendimiento que es una extensión del Ruby nativo. Nuestro SDK está escrito pensando en el futuro de las funcionalidades de servidor, proporcionando soporte para capacidades como Scopes y Collections que serán la nueva forma de gestionar datos.
Compatibilidad
Couchbase Ruby SDK 3.0 es
-
- Compatible con cualquier versión de MRI Ruby superior a 2.5.0 inclusive.
- Totalmente compatible con la versión del servidor Couchbase 6.0.0 o superior.
Más información sobre compatibilidad aquí.
Instalación
Puede instalar Ruby siguiendo los pasos mencionados en la página oficial Página web de Ruby.
Una vez instalado Ruby, instalar la versión de Ruby SDK para Couchbase es muy sencillo. En una ventana de terminal, escriba el siguiente comando,
1 |
gema instale couchbase |
También proporcionamos repositorios gem con extensiones precompiladas. Utilícelos en caso de que el compilador C/C++ no pueda ser instalado en la caja para construir la extensión durante la instalación de gem. Consulte esta página para obtener más instrucciones: Notas de la versión y archivos de Couchbase Ruby
Conexión a Couchbase Cluster
Una conexión a un cluster de Couchbase Server está representada por un Grupo objeto. A Grupo proporciona acceso a Buckets, Scopes y Collections, así como a varios servicios e interfaces de gestión de Couchbase.
Conectarse a Couchbase Cluster es muy sencillo, todo lo que necesita hacer es importar biblioteca couchbase y llamar al método connect en el objeto clúster pasando las credenciales mediante Opciones de clúster como se ve a continuación.
1 2 3 4 5 6 |
requiere "couchbase" # import biblioteca couchbase incluir Couchbase opciones = Grupo::ClusterOptions.nuevo opciones.autentifique("Administrador", "contraseña") grupo = Grupo.conecte("couchbase://localhost", opciones) |
Características
Esta nueva gema incluye muchas funciones nuevas y mejoradas que son sencillas y menos prolijas.
A continuación encontrará lo más destacado de algunas de las características ilustradas con ejemplos que utilizan la versión 6.5.1 de Couchbase Server en modo de vista previa para desarrolladores con viaje-muestra
y muestra de cerveza
cubos añadidos.
Para obtener un conjunto completo de funciones, consulte nuestro documentación.
Valor clave Operación
La operación Clave-Valor, también conocida como Servicio de Datos, ofrece la forma más sencilla y rápida de recuperar o mutar datos cuando se conoce la clave del documento.
El ejemplo utiliza la colección por defecto travel-samples para,
-
-
-
-
- Crear un nuevo documento (actualizar si ya existe un documento) con la clave "foo" .
- Recuperar el documento.
- Eliminar / Suprimir el documento.
-
-
-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
requiere couchbase incluir Couchbase opciones = Grupo::ClusterOptions.nuevo opciones.autentifique("Administrador", "contraseña") grupo = Grupo.conecte("couchbase://localhost", opciones) cubo = grupo.cubo("viaje-muestra") colección = cubo.por defecto_colección res = colección.upsert("foo", {"bar" => 42}) res = colección.consiga("foo") pone res.contenido res = colección.eliminar("foo") pone res grupo.desconectar |
Operaciones con subdocumentos
Subdocumento pueden utilizarse para acceder eficazmente a piezas Pueden ser más rápidas y eficientes en la red que las rutas de subdocumentos. documento completo operaciones como upsert, sustituir y consiga porque sólo transmiten por la red las secciones del documento a las que se ha accedido. Estas operaciones también son atómicas, lo que permite realizar modificaciones seguras en los documentos con control de concurrencia incorporado.
El siguiente ejemplo utiliza rutas de subdocumentos fax, email para mutar un documento con la clave "cliente123".
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
requiere couchbase incluir Couchbase opciones = Grupo::ClusterOptions.nuevo opciones.autentifique("Administrador", "contraseña") grupo = Grupo.conecte("couchbase://localhost", opciones) cubo = grupo.cubo("por defecto") colección = cubo.por defecto_colección documento = { nombre: "Douglas Reynholm", correo electrónico: "douglas@reynholmindustries.com" } colección.upsert("cliente123", documento) res = colección.mutar_en("cliente123", [ MutateInSpec.upsert("fax", "311-555-0151"), MutateInSpec.sustituir("email", "dougr96@hotmail.com"), ]) |
Consulta
Puedes consultar documentos en Couchbase usando el lenguaje de consulta N1QL, un lenguaje basado en SQL, pero diseñado para documentos JSON estructurados y flexibles. Las consultas pueden resolver tareas típicas de programación como encontrar un perfil de usuario por dirección de correo electrónico, login de facebook o ID de usuario.
El siguiente ejemplo utiliza parámetros con nombre para recuperar 10 documentos de tipo "hotel" de viaje-muestra
cubo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
requiere couchbase incluir Couchbase opciones = Grupo::ClusterOptions.nuevo opciones.autentifique("Administrador", "contraseña") grupo = Grupo.conecte("couchbase://localhost", opciones) opciones = Grupo::Opciones de consulta.nuevo opciones.parámetros_con_nombre({tipo: "hotel"}) res = grupo.consulta("SELECT * FROM `viaje-muestra` WHERE type = $type LIMIT 10", opciones) res.filas.cada do |fila| pone "#{row["viaje-muestra"]["país"]}. #{row["viaje-muestra"]["nombre"]}" fin |
Analítica
El servicio de análisis de Couchbase proporciona la capacidad de ejecutar consultas ad-hoc complejas para recopilar información sobre los datos operativos sin obstaculizar las cargas de trabajo operativas. La sintaxis de consulta es esencialmente la misma que la de N1QL, lo que te permite aprovechar tus conocimientos de SQL para ejecutar consultas analíticas sobre datos JSON.
El siguiente ejemplo utiliza parámetros de posición para recuperar recuento de aeropuertos en Francia desde
conjunto de datos sobre aeropuertos
creado el viaje-muestra
cubo.
1 2 3 4 5 6 7 8 9 10 11 12 |
requiere couchbase incluir Couchbase opciones = Grupo::ClusterOptions.nuevo opciones.autentifique("Administrador", "contraseña") grupo = Grupo.conecte("couchbase://localhost", opciones) opciones = Grupo::AnalyticsOptions.nuevo opciones.parámetros_posicionales(["Francia]) resultado = grupo.consulta_analítica(SELECT COUNT(*) AS airport_count FROM airports WHERE country = ?,opciones) pone "Aeropuertos en Francia: #{res.rows.first["aeropuerto_cuente"]}" |
Conclusión
Espero que ya estés emocionado y listo para crear tu próxima aplicación con esta nueva joya.
Si tiene alguna pregunta o comentario, pásate por nuestra comunidad de desarrolladores. Nos encantaría conocer tu opinión. También puedes consultar el SDK en GitHub.
¡¡¡Feliz programación !!!