Conexión a Apache Cassandra (v.1)

Esta versión del conector de datos de Apache Cassandra se ha eliminado de Analytics 18.x.
Los scripts que utilicen esta versión del conector Cassandra no funcionarán en Analytics 18.x y deberán actualizarse para utilizar la nueva versión del conector.
Esta versión del conector seguirá funcionando en Analytics 17.x, y versiones anteriores de Analytics, mientras el conector y la fuente de datos sigan siendo compatibles.
Véase Transición a una nueva versión del conector de ACL

Información de concepto

Comando ACCESSDATA

Apache Cassandra es un sistema de administración de base de datos NoSQL. Utilice el conector de datos de Apache Cassandra para importar los datos de Cassandra de su organización.

Antes de comenzar

Para conectarse a Cassandra, debe contar con lo siguiente:

  • el nombre del host o la dirección IP del servidor de la base de datos
  • el puerto de conexión correcto
  • su nombre de usuario y contraseña, si está utilizando autenticación

Si desea obtener ayuda para reunir los requisitos previos para la conexión, comuníquese con el administrador de Cassandra de su organización. Si el administrador no puede ayudarlo, usted o el administrador deben comunicarse con el Soporte de Cassandra.

Crear una conexión a Cassandra

  1. Desde el menú principal de Analytics, seleccione Importar > Base de datos y aplicación.Analytics
  2. Desde la ficha Nuevas conexiones, en la sección Conectores ACL, seleccione Cassandra.

    Consejo

    Puede filtrar la lista de conectores disponibles introduciendo una cadena de búsqueda en el cuadro Filtrar conexiones. Los conectores se indican en orden alfabético.

  3. En el panel Ajustes de conexión de datos, ingrese la configuración de la conexión y, en la parte inferior del panel, haga clic en Guardar y conectar.

    Puede aceptar el Nombre de la conexión predeterminado o introducir uno nuevo.

La conexión de Cassandra se guarda en la ficha Conexiones existentes. En el futuro, puede volver a conectarse a Cassandra desde la conexión guardada.

Una vez que se establezca la conexión, se abre la ventana Acceso a Datos en el Área de almacenamiento temporal y puede comenzar a importar datos. Si desea obtener ayuda para importar datos desde Cassandra, consulte Trabajo con la ventana Acceso a Datos.

Ajustes de conexión

Ajustes básicos

Ajuste Descripción Ejemplo
Host

La dirección IP o el nombre del host del servidor de Cassandra.

 

Puerto El puerto TCP de la base de datos Cassandra. 9042
Espacio de claves predeterminado El keyspace (esquema) predeterminado para conectarse en Cassandra.  
Mecanismo de autenticación

El mecanismo de autenticación que se debe usar para conectarse al servidor de Cassandra. Las opciones disponibles son las siguientes:

  • Sin autenticación
  • Nombre de usuario y contraseña
Sin autenticación
Nombre de usuario El nombre de usuario que se debe utilizar para acceder al servidor de Cassandra.  
Contraseña La contraseña que corresponde al nombre de usuario suministrado.  

Ajustes avanzados

Ajuste Descripción Ejemplo
Modo de consulta

Especifica el modo de consulta que se debe usar al enviar consultas a Cassandra. Las opciones disponibles son las siguientes:

  • SQL: Utiliza SQL_QUERY_MODE y ejecuta todas las consultas en SQL.
  • CQL: Utiliza CQL_QUERY_MODE y ejecuta todas las consultas en CQL.
  • SQL con respaldo CQL: Utiliza SQL_WITH_CQL_FALLBACK_QUERY_MODE y ejecuta todas las consultas en SQL por valor predeterminado. Si una consulta no se completa correctamente, el controlador ejecuta la consulta en CQL.
SQL con respaldo CQL
Coincidencia ajustable La réplica específica de Cassandra o la cantidad de réplicas de Cassandra que deben procesar una consulta para que se realice con éxito. ONE
Política de equilibrio de la carga Especifica la directiva de equilibrio de cargas que se debe usar.  
Longitud de la columna binaria La longitud de columna predeterminada para reportar para las columnas BLOB. 4000
Longitud de columna de cadena La longitud de columna predeterminada para reportar para las columnas ASCII, TEXT y VARCHAR. 4000
Separador del nombre de tabla virtual El separador para nombrar una tabla virtual generada desde una colección.
El nombre de una tabla virtual está formado por el nombre de la tabla original, luego el separador y, a continuación, el nombre de la colección.
_vt_
Permitir reconocimiento de token Especifica si utilizar una política de token-aware (reconocimiento de token) para mejorar el equilibrio de carga y la latencia.  
Permitir reconocimiento de latencia Especifica si el controlador debe usar un algoritmo de reconocimiento de latencia para distribuir la caga y alejarla de los nodos con un desempeño más lento.  
Permitir la inserción de valores vacíos Especifica si el controlador debe insertar todos los valores NULL como se especifica en las instrucciones INSERT.  
Permitir coincidir mayúsculas y minúsculas

Especifica si el controlador diferencia entre mayúsculas y minúsculas en los nombres de esquema, tabla y columna.

Si esta opción está activada, todos los esquemas, tablas y columnas deben estar entre comillas (").

 
Usar SQL_WVARCHAR para el tipo de datos de cadena Especifica si usar SQL_WVARCHAR para los tipos de texto y varchar.  
Permitir la paginación Especifica si dividir los conjuntos de resultados extensos en páginas.  
Filas por página Cuando la opción Permitir la paginación está activada, utilice esta opción para especificar la cantidad máxima de filas que se deben mostrar en cada página. 10000
Opciones de SSL

Especifica de qué manera utiliza SSL el controlador para conectarse al servidor de Cassandra. Las opciones disponibles son las siguientes:

  • Sin SSL: El controlador no utiliza SSL.
  • Verificación del servidor de una vía: Si la opción Activar la verificación del hostname de servidor está activada, el cliente verifica el servidor de Cassandra utilizando SSL. De lo contrario, el controlador se conecta al servidor de Cassandra utilizando SSL, pero el cliente y el servidor no se verifican entre sí.

  • Verificación del servidor y el cliente de dos vías: Si la opción Activar la verificación del hostname de servidor está activada, el cliente y el servidor de Cassandra se verifican entre sí utilizando SSL. De lo contrario, el controlador se conecta al servidor de Cassandra utilizando SSL, pero el cliente y el servidor no se verifican entre sí.

Sin SSL
Activar la verificación del hostname de servidor Especifica si el controlador obliga a que el nombre de host del servidor coincida con el nombre de host del certificado SSL.  
Ssltrustedcertspath La ruta completa al archivo .pem que contiene el certificado para verificar el servidor.  
Certificado del lado del cliente La ruta completa al archivo .pem que contiene el certificado para verificar al cliente.  
Clave privada del lado del cliente La ruta completa al archivo que contiene la clave privada que se utiliza para verificar al cliente.  
Contraseña de archivo clave La contraseña para el archivo de clave privada que se especifica en el campo Clave privada del cliente.  

Consultas en Cassandra

Una de las ventajas del diseño de Apache Cassandra es su capacidad de almacenar datos que no están normalizados en menos cantidad de tablas. Si se aprovechan las estructuras de datos anidadas, como los conjuntos, las listas y los mapas, es posible simplificar las transacciones. Sin embargo, Analytics no admite el acceso a este tipo de datos. Si se vuelven a normalizar los datos incluidos dentro de las colecciones (conjuntos, listas y mapas) en tablas virtuales, el conector les permite a los usuarios interactuar directamente con los datos pero dejando los datos en su forma no normalizada en Cassandra.

Si una tabla contiene columnas de colección, cuando se realiza una consulta por primera vez en la tabla, el conector crea las siguientes tablas virtuales:

  • Una tabla "base", que contiene los mismos datos que la tabla real, salvo por las columnas de la colección.
  • Una tabla virtual para cada columna de la colección, que expande los datos anidados.

Las tablas virtuales hacen referencia a los datos en la tabla real, lo cual permite que el conector acceda a los datos sin normalizar. Por medio de las consultas en las tablas virtuales, es posible acceder al contenido de las colecciones de Cassandra a través de ODBC.

La tabla base y las tablas virtuales aparecen como tablas adicionales en la lista de tablas que existen en la base de datos. La tabla base utiliza el mismo nombre que la tabla real a la cual representa. El nombre de las tablas virtuales que representan colecciones se genera utilizando el nombre de la tabla real, un separador (_vt_ por valor predeterminado), y el nombre de la columna.

Ejemplo

La tabla de ejemplo es una tabla de base de datos de Cassandra que contiene una columna de clave primaria entera denominada pk_int, una columna de lista, una columna de mapa, una columna de conjunto (llamada StringSet).

Tabla de origen con colecciones

pk_int Lista Mapa StringSet
1 ["1","2","3"] {"S1" : "a", "S2" : "b"} {"a", "b", "c"}
3 ["100","101","102","105"] {"S1" : "t"} {"a","e"}

El conector genera varias tablas virtuales para representar esta tabla única. La primera tabla virtual es la tabla base:

Tabla base

pk_int
1
3

La tabla base contiene los mismos datos que la tabla de la base de datos original, salvo por las colecciones, que se omiten de esta tabla y se expanden en otras tablas virtuales.

Las siguientes tablas muestran las tablas virtuales que vuelven a normalizar los datos desde las columnas Lista, Mapa y StringSet:

Lista

pk_int List#index List#value
1 0 1
1 1 2
1 2 3
3 0 100
3 1 101
3 2 102
3 3 105

Mapa

pk_int Map#key Map#value
1 S1 a
1 S2 b
3 S1 t

StringSet

pk_int StringSet#value
1 a
1 b
1 c
3 a
3 e

Las columnas clave externas en las tablas virtuales hacen referencia a las columnas clave de la tabla real e indican a qué fila de la tabla real corresponde la fila de la tabla virtual. Las columnas con nombres que finalizan con #index o #key indican la posición de los datos dentro del mapa o de la lista originales. Las columnas con nombres que terminan en #value contienen los datos expandidos de la colección.

Actualizaciones del conector de datos

Cuando actualiza Analytics o el Agente de Robots, debe comprobar los scripts que importan datos con uno de los conectores de datos de Analytics (comando ACCESSDATA).

Es posible que los cambios realizados por los proveedores de controladores ODBC o los orígenes de datos de terceros requieran la actualización de uno o más conectores de datos. Tal vez sea necesario actualizar las conexiones de datos en los scripts para continuar trabajando correctamente.

  • Volver a ejecutar la importación La manera más sencilla de actualizar una conexión consiste en realizar una importación manualmente con la ventana Acceso a Datos en la versión actualizada de Analytics. Copie el comando ACCESSDATA desde el log y utilícelo para actualizar su script.

    Nota

    Antes de conectarse al origen de los datos y volver a ejecutar la importación, borre la caché del conector para limpiar los nombres del conjunto de tablas existentes.

    En la ficha Conexiones existentes de la ventana Acceso a Datos, junto al nombre del conector, seleccione > Borrar caché.

  • Actualice las especificaciones del campo Es posible que también deba actualizar las especificaciones del campo en el cuerpo del script para alinearas con los cambios en el esquema de la tabla dentro del origen de datos o el controlador ODBC. Algunos cambios posibles son los nombres de campos, los tipos de datos de los campos y la longitud de los campos y los registros.
  • Compruebe los resultados de los filtros También debe comprobar los resultados de los filtros que aplique como parte de la importación de datos. Confirme que el filtrado de la importación incluye y excluye correctamente los registros.

Cambios del conector de datos para Apache Cassandra

A continuación se indican los cambios específicos que se realizaron al conector de datos de Apache Cassandra.

Analytics versión Cambio

14.2

El conector ya no permite la conexión con Apache Cassandra 2.0.

Se pueden realizar conexiones con Apache Cassandra 2.1, 2.2 y 3.0.