sql >> Base de Datos >  >> RDS >> Mysql

Instalación de los controladores JDBC de MySQL en las herramientas Pentaho Data Integration y BA Server

Introducción

Las herramientas Pentaho Data Integration y BA Server vienen con muchos controladores de base de datos diferentes. Sin embargo, a partir de la versión 7 de Community Edition, no vienen con controladores JDBC para Oracle, SQL Server o MySQL (en herramientas de integración de datos). Los siguientes pasos describen cómo agregar los controladores MySQL JDBC a Pentaho.

Siga estas instrucciones sobre cómo instalar el servidor Pentaho BA y las herramientas de integración de datos si las herramientas aún no se han instalado. Después de instalar las herramientas Pentaho, apague el servidor BA y el software de integración de datos.

Obtención de los controladores JDBC de MYSQL

Los controladores JDBC para MySQL se denominan "Conector/J"

Visite:https://dev.mysql.com/downloads/connector/j/

Desplácese hacia abajo hasta la sección con las opciones de descarga.

Asegúrate de seleccionar "Independiente de la plataforma"

Para el sistema operativo Windows, descargue el archivo ZIP

Inicie sesión con su cuenta del sitio web de Oracle (o cree una gratis). O haga clic en Iniciar mi descarga enlace.

Guarde el archivo ZIP en una carpeta:

Descomprima (descomprima) el archivo ZIP:

Las instrucciones para copiar los controladores JDBC a las carpetas correspondientes en las herramientas de Pentaho se describen en la página siguiente.

Tenga en cuenta que, a partir de noviembre de 2019, las herramientas Pentaho versión 8.x no funcionarán directamente con los controladores MySQL Connector versión 8.x más nuevos. La solución más sencilla es utilizar los controladores del conector MySQL 5.x. Una solución alternativa es utilizar los controladores MySQL versión 8.x pero utilizar una conexión genérica. Algunas discusiones se pueden encontrar en este enlace. Otro consejo es instalar el complemento PDI MySql de Pentaho Marketplace en Pentaho Data Integration.

Copiar los archivos del controlador JDBC en las carpetas Pentaho BA Server y Data Integration Lib

Localice el archivo mysql-connector-java-5.1.41-bin.jar (tenga en cuenta que puede tener un nombre ligeramente diferente según la versión).

Copie este archivo .jar en la carpeta LIB correspondiente en la distribución Pentaho Community Edition.

Para Pentaho Data Integration, la carpeta de destino debe ser .\Pentaho\data-integration\lib como se muestra a continuación:

El servidor Pentaho BA almacena sus controladores en la carpeta .\pentaho-server\tomcat\lib. Asegúrese de que no esté instalado un controlador MySQL JDBC. Si es así, conserve solo la copia más reciente del archivo .jar. Por ejemplo, la versión 7.0 de Pentaho Server incluye la versión del controlador MySQL JDBC mysql-connector-java-5.1.17. Sin embargo, esta versión tiene algunos errores, así que asegúrese de eliminar el archivo mysql-connector-java-5.1.17.jar y reemplácelo con el archivo mysql-connector-java-5.1.41-bin.jar más reciente.

Ahora que los controladores JDBC se han copiado en las carpetas correspondientes, reinicie el servidor Pentaho BA (start-pentaho) y ejecute las herramientas de integración de datos (Spoon). Las instrucciones para crear una conexión de base de datos en las herramientas de integración de datos de Pentaho se proporcionan en la página siguiente.

Configuración de una conexión MySQL en Pentaho Data Integration

Siga este conjunto de pasos para crear una nueva conexión de base de datos a MySQL desde las herramientas de integración de datos de Pentaho. En Pentaho Data Integration, muchos de los pasos de transformación envían los datos a una tabla de base de datos. Se pueden encontrar algunos ejemplos en este tutorial sobre Pentaho Data Integration.

Antes de comenzar, necesitará credenciales de inicio de sesión en una instancia de MySQL. Es posible que desee visitar mi tutorial sobre cómo configurar una instancia gratuita de MySQL en GearHost o este tutorial sobre cómo instalar MySQL en Windows.

En Pentaho Data Integration, elija cualquier paso de transformación que utilice una base de datos como salida, como un paso de búsqueda/actualización de dimensión, inserción/actualización o salida de tabla. Haga clic en Nuevo junto al nombre de la conexión para abrir el cuadro de diálogo Conexión de la base de datos como se muestra a continuación.

Asigne un nombre a la conexión y luego seleccione MySQL como Tipo de conexión.

Proporcione el Nombre de host del servidor que ejecuta MySQL. Si tiene MySQL instalado en su PC o servidor local, use localhost como Nombre de host . Proporcione el Nombre de la base de datos y use el número de puerto predeterminado de 3306. Finalmente, asigne a la base de datos MySQL Nombre de usuario y Contraseña .

Haga clic en Prueba para asegurarse de que la conexión a la base de datos funciona correctamente.

Si aparece el siguiente error, asegúrese de que el archivo .jar del controlador MySQL JDBC se haya copiado en Pentaho Data Integration lib carpeta (como se discutió en la página anterior de este tutorial). Salga de la herramienta de integración de datos y vuelva a ejecutarla.

Error connecting to database [MySQLConnetion] :
     org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Driver class 'org.gjt.mm.mysql.Driver' could not be found, 
make sure the 'MySQL' driver (jar file) is installed.

Tenga en cuenta que, a partir de noviembre de 2019, las herramientas Pentaho versión 8.x no funcionarán directamente con los controladores MySQL Connector versión 8.x más nuevos. La solución más sencilla es utilizar los controladores del conector MySQL 5.x. Una solución alternativa es utilizar los controladores MySQL versión 8.x pero utilizar una conexión genérica. Algunas discusiones se pueden encontrar en este enlace. Otro consejo es instalar el complemento PDI MySql de Pentaho Marketplace en Pentaho Data Integration.

Asegúrese de configurar el esquema de destino en cualquier salida de base de datos o pasos de búsqueda de dimensión. En MySQL, el esquema se puede dejar en blanco para usar la base de datos MySQL predeterminada.

Si había practicado la ejecución de la transformación en la base de datos H2 como destino, solía convertir a PUBLIC en el esquema de destino. para MySQL simplemente deje el esquema de destino en blanco para que se use el predeterminado.

La página siguiente cubre cómo configurar una nueva conexión de base de datos y una fuente de datos Mondrian en Pentaho BA Server.

Configuración de una fuente de datos MySQL en el servidor Pentaho BA

Desde la página de inicio de la Consola de usuario de Pentaho, haga clic en Administrar fuentes de datos para abrir la pantalla Administrar fuentes de datos. El primer paso desde este punto será crear una nueva conexión de base de datos a una base de datos MySQL.

Haga clic en el icono de engranaje para abrir el menú y luego haga clic en Nueva conexión... elemento de menú como se muestra a continuación.

Proporcione un nombre para la nueva conexión de base de datos. Seleccione MySQL como Tipo de base de datos y luego haga clic en la opción Nativo (JDBC) debajo de Acceso: título. Complete el Nombre de host , Nombre de la base de datos , Número de puerto , Nombre de usuario y Contraseña para su base de datos MySQL. Si MySQL está instalado en su PC o servidor local, use localhost como Nombre de host .

Cuando haya terminado, haga clic en el Prueba azul. botón para probar la conexión a la base de datos

Si hay algún error, verifique la información de conexión (nombre de host, nombre de usuario, contraseña, etc.) y luego repita la prueba.

Si recibe un error con respecto a las conexiones SSL (es posible que su conexión se agote después de unos minutos), agregue el parámetro useSSL con el valor falso como se muestra a continuación.

Cuando haya terminado, haga clic en Aceptar para guardar la nueva conexión a la base de datos. La nueva conexión de base de datos debería aparecer ahora en la lista:

Ahora que se ha creado y probado la conexión, se puede crear una fuente de datos de Mondrian. Estas instrucciones se proporcionan en la página siguiente.

Creación de una nueva fuente de datos en Pentaho BA Server

En Pentaho BA Server, una fuente de datos representa un esquema de base de datos multidimensional de Mondrian que se asienta sobre un almacén de datos multidimensional o una base de datos relacional. La fuente de datos requiere una conexión a la base de datos subyacente y un modelo de datos de Mondrian que se construirá sobre ella. El modelo de datos de Mondrian consta de dimensiones y medidas. Las dimensiones contienen campos que se apilan en una jerarquía. Es posible tener varios modelos de datos diferentes construidos sobre la misma fuente de datos subyacente.

Para comenzar a crear una nueva fuente de datos, haga clic en el botón azul Nueva fuente de datos. botón. Se iniciará el Asistente de fuentes de datos.

Ingrese un nuevo nombre para la fuente de datos y seleccione la Conexión de base de datos . Elija la(s) tabla(s) de la base de datos como la fuente Tipo. Para este ejemplo, trabajaremos con un esquema en estrella, por lo que seleccionamos la opción para Informes y análisis .

Haga clic en Siguiente y el servidor Pentaho BA consultará el esquema de la base de datos subyacente para la conexión de la base de datos

La siguiente pantalla del asistente presentará una lista de las tablas que se encontraron en el esquema de la conexión a la base de datos.

Haga clic en una de las Tablas disponibles y luego haga clic en el botón de flecha hacia la derecha para moverlo a las Tablas seleccionadas lado. Repita esto para cada una de las tablas que se incluirán en la fuente de datos.

Debido a que este ejemplo utiliza una opción de "Informes y análisis", será necesario seleccionar una de las tablas de la base de datos como Tabla de hechos . Una vez realizados estos cambios, haga clic en Siguiente para pasar al paso final para definir uniones.

Nota:Si no aparecen claves foráneas, asegúrese de estar trabajando con el controlador JDBC de MySQL más reciente, ya que corrige varios errores. mysql-connector-java-5.1.17 es una versión anterior que se envía con Pentaho Server 7.0. Si actualiza el controlador JDBC, asegúrese de reiniciar el servidor Pentaho BA.

Para cada par de tablas, haga clic en Campo clave en la tabla izquierda y el campo clave asociado en la Tabla de la Derecha. Luego haga clic en Crear unión Enlace. En el siguiente ejemplo, se creó una unión entre la tabla sales_fact y luego la tabla customer_dim usando la clave común customer_dim_id.

Repita esto para cada par de llaves. En este ejemplo, hay una tabla de hechos y 5 tablas de dimensiones que dan como resultado la creación de 5 uniones. Si comete un error, resalte la unión y haga clic en Eliminar unión. enlace.

Cuando haya terminado, haga clic en Finalizar botón.

Haga clic en Aceptar para volver a Administrar fuentes de datos pantalla.

Ahora se ha creado una nueva fuente de datos con un modelo de datos predeterminado. Sin embargo, este modelo de datos necesitará alguna edición. Las instrucciones para editar un modelo de datos de Mondrian se proporcionan en la página siguiente.

Edite el modelo de datos de Mondrian para definir dimensiones y medidas

Resalte la fuente de datos, despliegue el ícono de ajustes y seleccione Editar . Esto abrirá el Editor de modelo de origen de datos . El modelo predeterminado copia todas las columnas del esquema como Dimensiones y Medidas. Sin embargo, es probable que este modelo predeterminado no funcione ya que aún no se han definido las jerarquías.

Limpieza del modelo de datos existente

Haga clic en el botón que se muestra a continuación para Borrar el modelo actual.

Cuando se le solicite que confirme, haga clic en para borrar el modelo

El modelo ahora se borrará y las Medidas y Dimensiones mostrarán una advertencia ya que no hay contenido.

Crear una nueva medida

Cree una nueva medida arrastrando y soltando el hecho de ventas de Disponible lado hacia las Medidas entrada bajo Análisis pestaña.

Elimine cada uno de los ID de dimensión y el ID de PEDIDO de las medidas, ya que estas no son realmente medidas (son las claves externas). Haga clic en Customer dim id y luego haga clic en la X azul para quitarlo Repita para los ID de la otra dimensión.

Creación de la dimensión CLIENTE

Con las Medidas en su lugar, se pueden crear las Dimensiones. Haga clic en Dimensiones entrada y luego haga clic en Agregar dimensión como se muestra a continuación.

Asigne a esta nueva dimensión el nombre CLIENTE (asegúrese de utilizar nombres que no sean plurales para las dimensiones) y haga clic en Aceptar. botón.

El CLIENTE se creará una dimensión con una jerarquía CLIENTE debajo:

Abra Customer Dim en el panel Disponible. Arrastre el campo COUNTRY_NAME y suéltelo en la jerarquía CLIENTE. Como se muestra abajo. Puede tomar algunos intentos para colocar esto en el lugar correcto.

El resultado mostrará el NOMBRE DEL PAÍS que aparece dentro de la jerarquía del CLIENTE.

Repita los pasos anteriores para agregar STATE_PROVINCE y CITY a la jerarquía CLIENTE. Para cada uno de los campos en la Jerarquía CLIENTE, cambie el tipo de Geografía para que coincida. Por ejemplo, COUNTRY_NAME debe tener el tipo de geografía "País" y STATE_PROVINCE debe tener el tipo de geografía "Estado".

Creación de la dimensión de fecha

Haga clic en la entrada DIMENSIONES y luego haga clic en Agregar dimensión botón. Asigne el nombre FECHA a la nueva dimensión. Haga clic en el nombre de la dimensión FECHA y marque la casilla "Dimensión de tiempo":

Arrastre y suelte el Año de ventas, el Trimestre de ventas, el Nombre del mes de ventas, el Día de ventas del año y la Fecha de ventas en la jerarquía DATE
. Para cada campo, seleccione el Tipo de nivel de tiempo adecuado y Formato de columna de origen .

La dimensión FECHA completada debería tener el siguiente aspecto:

Creación de la dimensión PRODUCTO

Haga clic en Dimensiones entrada y luego haga clic en Agregar dimensión botón. Asigne el nombre PRODUCTO a la nueva dimensión. Arrastra y suelta CATEGORY_NAME, SUB_CATEGORY_NAME y PRODUCT_NAME debajo de la Jerarquía del PRODUCTO. .

Haga clic en Aceptar para cerrar el Editor del modelo de origen de datos.

Cierre la sesión de la consola de usuario de Pentaho, apague el servidor de Pentaho usando el script stop-pentaho y luego reinicie el servidor de Pentaho.

Ahora que se ha creado el modelo de datos de Mondrian, la nueva fuente de datos está lista para usarse para crear visualizaciones en un tablero o para generar informes.

Crear un gráfico simple usando el asistente de gráficos OLAP

Cree un nuevo Tablero (o edite un Tablero existente) y use el Asistente OLAP para crear un nuevo gráfico

A continuación se muestra la consulta MDX que genera automáticamente el asistente OLAP:

select NON EMPTY({Descendants([CUSTOMER].[All CUSTOMERs] ,[CUSTOMER].[CITY])}) on ROWS, 
 NON EMPTY({Descendants([PRODUCT].[All PRODUCTs] ,[PRODUCT].[SUB CATEGORY NAME])}) on Columns 
 from [Customer_Sales]