Buscar en el Blog

Mostrando las entradas con la etiqueta configurar. Mostrar todas las entradas
Mostrando las entradas con la etiqueta configurar. Mostrar todas las entradas

lunes, 18 de junio de 2018

Cómo configurar DataCleaner para conectarse a MS SQL Server usando ActiveDirectory

En ésta publicación explico el procedimiento para configurar DataCleaner y que esté en capacidad de conectarse a Microsoft SQL Server usando Active Directory en el sistema operativo Windows.

1) Descargar el controlador JDBC jTDS del siguiente link

2) Descomprimir el archivo jtds-1.3.1-dist.zip

3) Copiar el archivo jtds-1.3.1.jar al directorio \DataCleaner\lib

4) Copiar el archivo ntlmauth.dll:

Para máquinas virtuales de 64 bits

Copiar el archivo ntlmauth.dll ubicado en jtds-1.3.1-dist\x64\SSO a \DataCleaner\lib

Para máquinas virtuales de 32 bits

Copiar el archivo ntlmauth.dll ubicado en jtds-1.3.1-dist\x86\SSO a \DataCleaner\lib

5) Editar el archivo datacleaner.cmd, ubicar la línea en donde se llama a java e incluir la referencia al directorio lib dónde se copió la DLL del paso 4), como se muestra a continuación:

call java %DATACLEANER_JAVA_OPTS% "-Djava.library.path="="%DATACLEANER_LIB_HOME%lib" -jar "%DATACLEANER_LIB_HOME%\DataCleaner.jar"

6) En la sección de Manage Datastores seleccionar una conexión Microsoft SQL Server 

7) Ir a la pestaña Generic connection parameters y usar la siguiente cadena de conexión (Connection string)

jdbc:jtds:sqlserver://localhost:1433/master;domain=nombreDelDominio;useUnicode=true;characterEncoding=UTF-8

lunes, 11 de junio de 2018

Configuración de Pentaho Server 8.x para PostgreSQL

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentahohibernate, quartz jackrabbit en la base de datos PostgreSQL v9.6

Por defecto, el pentaho-server de Pentaho usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto. El servidor central pentaho-server viene con los scripts para MySQL, Oracle, SQL Server y PostgreSQL.

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.8, en la siguiente publicación se explica el procedimiento
  • Tener instalado la base de datos  PostgreSQL v9.6
  • Haber descargado la aplicación pentaho-server y haberla copiado y descomprimido en el directorio: \pentaho-server-ce-8.x
  • Haber descargado el controlador JDBC para  PostgreSQL
Configuración paso a paso.-

1. Ir al directorio \pentaho-server\data aquí se encuentran los scripts para MySQL, Oracle, SQL Server y PostgreSQL

2. Abrir el directorio postgresql y ejecutar los scripts: create_repository_postgresql.sqlcreate_quartz_postgresql.sql y create_jcr_postgresql.sql

NOTA: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  pentaho_user del repositorio quartz, y jcr_user del repositorio jackrabbit

Configuración de Tomcat

3. Copiar el driver JDBC Tipo 4 de PostgreSQL (postgresql-42.1.4.jar) al directorio \pentaho-server\tomcat\lib.

NOTA: Borrar el driver postgresql-42.1.1.jar existente de tal forma que solo quede el archivo postgresql-42.1.4.jar

4. Editar el archivo context.xml ubicado en el directorio: \pentaho-server\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a PostgreSQL
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="hibuser" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/hibernate"
  validationQuery="select version();" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="pentaho_user" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/quartz"
  validationQuery="select version();"/>
</Context>

5. Eliminar el archivo pentaho.xml del directorio: \pentaho-server\tomcat\conf\Catalina\localhost

6. Editar el archivo web.xml en el directorio \pentaho-server\tomcat\webapps\pentaho\WEB-INF. Comentar las secciones: [BEGIN HSQLDB DATABASES] y [BEGIN HSQLDB STARTER]

Configuración en Pentaho Server

Todos los archivos de configuración del servidor central de Pentaho Community Edition (pentaho-server) se encuentran en el directorio: \pentaho-server\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

7. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/system/hibernate/postgresql.hibernate.cfg.xml como se muestra a continuación:
...
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>
...

NOTA: no olvidar de editar el archivo postgresql.hibernate.cfg.xml sí la base de datos está en otro servidor

8. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a PostgreSQL como se muestra a continuación:
jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

9. En la base de datos quartz crear la siguiente tabla:
CREATE TABLE "qrtz"
(
NAME VARCHAR(200) NOT NULL,
PRIMARY KEY (NAME)
);

ALTER TABLE "qrtz" OWNER TO pentaho_user;

10. Editar el archivo repository.xml de Jackrabbit en el directorio \pentaho-server\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para apuntar Jackrabbit al repositorio de base de datos creado en PostgreSQL:
  • Configuración del FileSystem: descomentar de la línea 61 a la 68. Comentar de la línea 79 a la 83
  • Configuración del DataStore: descomentar de la línea 123 a la 134. Comentar de la línea 150 a la 152
  • Configuración del FileSystem: descomentar de la línea 236 a la 243. Comentar de la línea 255 a la 259
  • Configuración del PersistenceManager: descomentar de la línea 293 a la 300. Comentar de la línea 312 a la 317
  • Configuración del FileSystem: descomentar de la línea 368 a la 375. Comentar de la línea 386 a la 390
  • Configuración del PersistenceManager: descomentar de la línea 425 a la 432. Comentar de la línea 443 a la 448
11. Reiniciar el servidor Pentaho Server
12. Borrar el cache del navegador web (Browser) y abrir http://localhost:8080

Consideraciones Importantes

En sistemas operativos Windows, sí se ejecutó pentaho-server antes de realizar ésta configuración usando la base de datos por defecto HSQLDB, es conveniente eliminar el contenido de los siguientes directorios para evitar comportamientos inesperados:
  • \pentaho-server\tomcat\work\Catalina\* 
  • \pentaho-server\tomcat\temp\* 
  • \pentaho-server\pentaho-solutions\system\karaf\caches\* 
  • \pentaho-server\pentaho-solutions\system\jackrabbit\repository
NOTA: de preferencia igual limpiar el cache del navegador web con el que se esté trabajando.

domingo, 14 de enero de 2018

Configuración de Pentaho Server 7.x para PostgreSQL

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentahohibernate, quartz jackrabbit en la base de datos PostgreSQL v9.6

Por defecto, el pentaho-server de Pentaho usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto. El servidor central pentaho-server viene con los scripts para MySQL, Oracle, SQL Server y PostgreSQL.

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.8, en la siguiente publicación se explica el procedimiento
  • Tener instalado la base de datos  PostgreSQL v9.6
  • Haber descargado la aplicación biserver-ce de Pentaho y haberla copiado y descomprimido en el directorio: \pentaho-server-ce-7.x
  • Haber descargado el controlador JDBC para  PostgreSQL
Configuración paso a paso.-

1. Ir al directorio \pentaho-server\data aquí se encuentran los scripts para MySQL, Oracle, SQL Server y PostgreSQL

2. Abrir el directorio postgresql y ejecutar los scripts: create_repository_postgresql.sqlcreate_quartz_postgresql.sql y create_jcr_postgresql.sql

NOTA: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  pentaho_user del repositorio quartz, y jcr_user del repositorio jackrabbit

Configuración de Tomcat

3. Copiar el driver JDBC Tipo 4 de PostgreSQL (postgresql-42.1.4.jar) al directorio \pentaho-server\tomcat\lib.

NOTA: Borrar el driver postgresql-9.3-x.jdbc4.jar existente de tal forma que solo quede el archivo postgresql-42.1.4.jar

4. Editar el archivo context.xml ubicado en el directorio: \pentaho-server\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a PostgreSQL
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="hibuser" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/hibernate"
  validationQuery="select version();" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="pentaho_user" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/quartz"
  validationQuery="select version();"/>
</Context>

5. Eliminar el archivo pentaho.xml del directorio: \pentaho-server\tomcat\conf\Catalina\localhost

6. Editar el archivo web.xml en el directorio \pentaho-server\tomcat\webapps\pentaho\WEB-INF. Comentar las secciones: [BEGIN HSQLDB DATABASES] y [BEGIN HSQLDB STARTER]

Configuración en BI Server

Todos los archivos de configuración del servidor central de Pentaho Community Edition (pentaho-server) se encuentran en el directorio: \pentaho-server\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

7. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/system/hibernate/postgresql.hibernate.cfg.xml como se muestra a continuación:
...
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>
...

NOTA: no olvidar de editar el archivo postgresql.hibernate.cfg.xml sí la base de datos está en otro servidor

8. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a PostgreSQL como se muestra a continuación:
jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

9. En la base de datos quartz crear la siguiente tabla:
CREATE TABLE "qrtz"
(
NAME VARCHAR(200) NOT NULL,
PRIMARY KEY (NAME)
);

ALTER TABLE "qrtz" OWNER TO pentaho_user;

10. Editar el archivo repository.xml de Jackrabbit en el directorio \pentaho-server\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para apuntar Jackrabbit al repositorio de base de datos creado en PostgreSQL:
  • Configuración del FileSystem: descomentar de la línea 61 a la 68. Comentar de la línea 79 a la 83
  • Configuración del DataStore: descomentar de la línea 123 a la 134. Comentar de la línea 150 a la 152
  • Configuración del FileSystem: descomentar de la línea 236 a la 243. Comentar de la línea 255 a la 259
  • Configuración del PersistenceManager: descomentar de la línea 293 a la 300. Comentar de la línea 312 a la 317
  • Configuración del FileSystem: descomentar de la línea 368 a la 375. Comentar de la línea 386 a la 390
  • Configuración del PersistenceManager: descomentar de la línea 425 a la 432. Comentar de la línea 443 a la 448
11. Reiniciar el servidor de Pentaho

Consideraciones Importantes

En sistemas operativos Windows, sí se ejecutó pentaho-server antes de realizar ésta configuración usando la base de datos por defecto HSQLDB, es conveniente eliminar el contenido de los siguientes directorios para evitar comportamientos inesperados:
  • \pentaho-server\tomcat\work\Catalina\* 
  • \pentaho-server\tomcat\temp\* 
  • \pentaho-server\pentaho-solutions\system\karaf\caches\* 
  • \pentaho-server\pentaho-solutions\system\jackrabbit\repository
NOTA: de preferencia igual limpiar el cache del navegador web con el que se esté trabajando.

viernes, 5 de enero de 2018

Cómo configurar un repositorio basado en archivos para Pentaho Data Integration

En ésta publicación explico el procedimiento para configurar un repositorio basado en archivos (File Repository) para Pentaho Data Integration (PDI).

Instrucciones.-

1. Ir al directorio de PDI y ejecutar la herramienta Spoon.bat

2. Hacer clic en la opción Connect y seleccionar la opción Other Repositories

3. Seleccionar File Repository y hacer clic en el botón Get Started

4. Colocar los siguientes valores para las propiedades:
Display Name = PDI_FILE_REPO
Location = c:\sistema_dwh_bi\src\etls



5. Hacer clic en el botón Finish y en la opción Connect Now

NOTA IMPORTANTE.-

Sí al seguir éstas instrucciones y querer conectarse la pantalla se muestra totalmente en blanco, ubicar el directorio .\data-integration\system\karaf y eliminar la carpeta caches. Después de realizar éste procedimiento reiniciar Spoon.bat.

jueves, 27 de abril de 2017

Configuración de Pentaho BI Server 6.x para PostgreSQL

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentahohibernate, quartz jackrabbit en la base de datos PostgreSQL v9.6

Por defecto, el biserver de Pentaho usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto. El servidor central biserver viene con los scripts para MySQL, Oracle, SQL Server y PostgreSQL.

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.8, en la siguiente publicación se explica el procedimiento
  • Tener instalado la base de datos  PostgreSQL v9.6
  • Haber descargado la aplicación biserver-ce de Pentaho y haberla copiado y descomprimido en el directorio: \biserver-ce-6.x
  • Haber descargado el controlador JDBC para  PostgreSQL
Configuración paso a paso.-

1. Ir al directorio \biserver-ce-6.x\data aquí se encuentran los scripts para MySQL, Oracle, SQL Server y PostgreSQL

2. Abrir el directorio postgresql y ejecutar los scripts: create_repository_postgresql.sqlcreate_quartz_postgresql.sql y create_jcr_postgresql.sql

NOTA: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  pentaho_user del repositorio quartz, y jcr_user del repositorio jackrabbit

Configuración de Tomcat

3. Copiar el driver JDBC Tipo 4 de PostgreSQL (postgresql-42.0.0.jre7.jar) al directorio \biserver-ce-6.x\tomcat\lib.

NOTA: Borrar el driver postgresql-9.3-x.jdbc4.jar existente de tal forma que solo quede el archivo postgresql-42.0.0.jre7.jar

4. Editar el archivo context.xml ubicado en el directorio: \biserver-ce-6.x\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a PostgreSQL
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="hibuser" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/hibernate"
  validationQuery="select version();" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxTotal="20" maxIdle="5"
  maxWaitMillis="10000" username="pentaho_user" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/quartz"
  validationQuery="select version();"/>
</Context>

5. Eliminar el archivo pentaho.xml del directorio: \biserver-ce-6.x\tomcat\conf\Catalina\localhost

6. Editar el archivo web.xml en el directorio \biserver-ce-6.x\tomcat\webapps\pentaho\WEB-INF. Comentar las secciones: [BEGIN HSQLDB DATABASES] y [BEGIN HSQLDB STARTER]

Configuración en BI Server

Todos los archivos de configuración del servidor central de BI de Pentaho Community Edition (biserver-ce) se encuentran en el directorio: \biserver-ce-6.x\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

7. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/system/hibernate/postgresql.hibernate.cfg.xml como se muestra a continuación:
...
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>
...

NOTA: no olvidar de editar el archivo postgresql.hibernate.cfg.xml sí la base de datos está en otro servidor

8. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a PostgreSQL como se muestra a continuación:
jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

9. En la base de datos quartz crear la siguiente tabla:
CREATE TABLE "QRTZ"
(
NAME VARCHAR(200) NOT NULL,
PRIMARY KEY (NAME)
);

ALTER TABLE "QRTZ" OWNER TO pentaho_user;

10. Editar el archivo repository.xml de Jackrabbit en el directorio \biserver-ce-5.2\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para apuntar Jackrabbit al repositorio de base de datos creado en PostgreSQL:
  • Configuración del FileSystem: descomentar de la línea 61 a la 68. Comentar de la línea 69 a la 83
  • Configuración del DataStore: descomentar de la línea 123 a la 134. Comentar de la línea 135 a la 155
  • Configuración del FileSystem: descomentar de la línea 236 a la 243. Comentar de la línea 244 a la 259
  • Configuración del PersistenceManager: descomentar de la linea 293 a la 300. Comentar de la linea 301 a la 317
  • Configuración del FileSystem: descomentar de la linea 386 a la 393. Comentar de la linea 394 a la 408
  • Configuración del PersistenceManager: descomentar de la linea 443 a la 450. Comentar de la linea 451 a la 466
11. Reiniciar el servidor de BI de Pentaho

Consideraciones Importantes

En sistemas operativos Windows, sí se ejecutó biserver antes de realizar ésta configuración usando la base de datos por defecto HSQLDB, es conveniente eliminar el contenido de los siguientes directorios para evitar comportamientos inesperados:
  • \biserver-ce-6.x\tomcat\work\Catalina\* 
  • \biserver-ce-6.x\tomcat\temp\* 
  • \biserver-ce-6.x\pentaho-solutions\system\karaf\caches\* 
  • \biserver-ce-6.x\pentaho-solutions\system\jackrabbit\repository
NOTA: de preferencia igual limpiar el cache del navegador web con el que se esté trabajando.

miércoles, 14 de octubre de 2015

Configuración de Conexión JNDI en Pentaho BI Server v5.x para MySQL

En ésta publicación explico el procedimiento para configurar una conexión JNDI (Java Naming and Directory Interface) en Pentaho BI Server v5.x hacia un servidor de base de datos MySQL.

1. Ir al directorio tomcat/conf y editar el archivo context.xml

2. Dentro de la etiqueta <Context> colocar lo siguiente:
<Context>
...
<Resource name="jdbc/dwh"
    auth="Container" type="javax.sql.DataSource"
    factory="org.apache.commons.dbcp.BasicDataSourceFactory"
    maxActive="20"
    maxIdle="5"
    maxWait="10000"
    username="usuario"
    password="password"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/dwh"/>
...
<Context>
NOTA: el nombre jdbc/dwh es muy importante y es sensible a mayúsculas y minúsculas. Es importante recordarlo para configurarlo en las herramientas de BI de Pentaho que se usen. El atributo driverClassName hace referencia al driver JDBC de MySQL y el atributo url a la cadena de conexión hacia el Data Warehouse.

3. Ir al directorio /tomcat/webapps/pentaho/WEB-INF y editar el archivo web.xml

4. Ubicar el comentario <!-- insert additional resource-refs --> y colocar la referencia al recurso JNDI creado en el paso 2.
  <!-- insert additional resource-refs -->
  <resource-ref>
    <description>DWH</description>
    <res-ref-name>jdbc/dwh</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
5. Iniciar Pentaho BI Server y acceder a PUC como Administrador

6. Ir a la perspectiva Home > Manage Data Sources > New Connection en JNDI Name colocar dwh

Configuración de Pentaho BI Server v5.4 para MySQL Server

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentahohibernate, quartz jackrabbit en la base de datos MySQL

Por defecto,  biserver usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto, biserver viene con los scripts para MySQL, Oracle, PostgreSQL y SQL Server

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.7 o superior, en la siguiente publicación se explica el procedimiento
  • Tener instalado la base de datos  MySQL v5.5 o superior
  • Haber descargado la aplicación biserver-ce de Pentaho y haberla copiado y descomprimido en el directorio: \biserver-ce-5.4
  • Haber descargado el controlador JDBC para  MySQL
Configuración paso a paso.-

1. Ir al directorio \biserver-ce-5.4\data aquí se encuentran los scripts para MySQL, Oracle, PostgreSQL y SQL Server

2. Abrir el directorio mysql5 y ejecutar los scripts: create_repository_mysql.sqlcreate_quartz_mysql.sql y create_jcr_mysql.sql

Se puede ejecutar los scripts SQL desde la línea de comandos, de la siguiente forma:

mysql -u root -ppassword < /path/to/create_repository_mysql.sql
mysql -u root -ppassword < /path/to/create_quartz_mysql.sql
mysql -u root -ppassword < /path/to/create_jcr_mysql.sql

NOTA: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  pentaho_user del repositorio quartz, y jcr_user del repositorio jackrabbit


Configuración de Tomcat

3. Copiar el driver JDBC de MySQL (mysql-connector-java-5.X.X-bin.jar) al directorio \biserver-ce-5.4\tomcat\lib. NOTA: sí existe un driver JDBC para MySQL en el directorio, de preferencia reemplazarlo por uno más reciente.

4. Editar el archivo context.xml ubicado en el directorio: \biserver-ce-5.4\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a MySQL

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="hibuser" password="password"
  driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/hibernate"
  validationQuery="select 1;" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="pentaho_user" password="password"
  driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/quartz"
  validationQuery="select 1;"/>
</Context>


5. Editar el archivo web.xml en el directorio \biserver-ce-5.4\tomcat\webapps\pentaho\WEB-INF. En la línea 76 colocar lo siguiente para que únicamente se inicie la base de datos de ejemplo de HSQLDB:

<!-- [BEGIN HSQLDB DATABASES] -->
  <context-param>
    <param-name>hsqldb-databases</param-name>
    <param-value>sampledata@../../data/hsqldb/sampledata</param-value>
  </context-param>
  <!-- [END HSQLDB DATABASES] -->

Configuración en BI Server

Todos los archivos de configuración del servidor central de BI de Pentaho Community Edition (biserver-ce) se encuentran en el directorio: \biserver-ce-5.4\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

6. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/mysql5.hibernate.cfg.xml como se muestra a continuación:

<?xml version='1.0' encoding='utf-8'?>
<settings>
 <config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>
</settings>

NOTA: no olvidar de editar el archivo mysql5.hibernate.cfg.xml sí la base de datos está en otro servidor

7. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a MySQL como se muestra a continuación:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.MySQLDialect

8. Editar el archivo quartz.properties en el directorio \biserver-ce-X.X.X\pentaho-solutions\system\quartz ubicar la propiedad org.quartz.jobStore.driverDelegateClass (línea 300) y colocar el siguiente valor:
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate

9. Editar el archivo repository.xml de Jackrabbit en el directorio \biserver-ce-5.4\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para que Jackrabbit apunte al repositorio de base de datos creado en MySQL:

  • Configuración del FileSystem: descomentar de la línea 44 a la 51. Comentar de la línea 79 a la 83
  • Configuración del DataStore: descomentar de la línea 97 a la 108. Comentar la línea 151
  • Configuración del Workspace: descomentar de la línea 219 a la 226. Comentar de la línea 255 a la 259. Descomentar de la línea 274 a la 281. Comentar de la línea 312 a la 317
  • Configuración del Versionamiento: descomentar de la línea 367 a la 374. Comentar de la línea 402 a la 406. Descomentar de la línea 422 a la 429. Comentar de la línea 459 a la 464

10. Reiniciar el servidor de BI de Pentaho

lunes, 20 de julio de 2015

Cómo configurar una conexión JNDI en Pentaho Data Integration

En ésta publicación explico el procedimiento para configurar una conexión JNDI a PostgreSQL en Pentaho Data Integration (PDI)

1. Ir al directorio data-integration/simple-jndi

2. Dentro del directorio editar el archivo de nombre jdbc.properties

3.
Agregar las conexiones a la base de datos STAGE y DWH:

#Conexión a PostgreSQL
dwh/type=javax.sql.DataSource
dwh/driver=org.postgresql.Driver
dwh/url=jdbc:postgresql://127.0.0.1:5432/dwh
dwh/user=postgres
dwh/password=postgres

#Conexión a PostgreSQL
stage/type=javax.sql.DataSource
stage/driver=org.postgresql.Driver
stage/url=jdbc:postgresql://127.0.0.1:5432/stage
stage/user=postgres
stage/password=postgres

#Conexión a Oracle
stage_oracle/type=javax.sql.DataSource
stage_oracle/driver=oracle.jdbc.driver.OracleDriver
stage_oracle/url=jdbc:oracle:thin:@127.0.0.1:1521:orcl_instance
stage_oracle/user=usuario
stage_oracle/password=password
4. Guardar el archivo y ejecutar Spoon. Cuando se cree la conexión, hacer referencia al JNDI Name: stage o dwh

miércoles, 18 de febrero de 2015

Cómo configurar una conexión JNDI en Pentaho Report Designer

En ésta publicación explico el procedimiento para configurar una conexión JNDI a PostgreSQL en Pentaho Report Designer (PRD)

1. Ir al directorio home del usuario.

En Mac OS X: /Users/nombre_usuario/.pentaho

En Windows: C:\Users\nombre_usuario\.pentaho 

2. Crear el directorio simple-jndi

3. Dentro del directorio crear un archivo de nombre default.properties

4. Suponiendo que la conexión JNDI en BI Server se la configuró como jdbc/dwh colocar en el archivo lo siguiente:
dwh/type=javax.sql.DataSource
dwh/driver=org.postgresql.Driver
dwh/url=jdbc:postgresql://127.0.0.1:5432/dwh
dwh/user=postgres
dwh/password=postgres
5. Guardar el archivo y ejecutar report-designer. Cuando se cree la conexión, hacer referencia al JNDI Name: dwh

Cómo configurar una conexión JNDI en Pentaho Metadata Editor

En ésta publicación explico el procedimiento para configurar una conexión JNDI a PostgreSQL en Pentaho Metadata Editor (PME)

1. Ir al directorio /simple-jndi y editar el archivo jdbc.properties

2. Suponiendo que la conexión JNDI en BI Server se la configuró como jdbc/dwh_bus colocar al final del archivo lo siguiente:
dwh_bus/type=javax.sql.DataSource
dwh_bus/driver=org.postgresql.Driver
dwh_bus/url=jdbc:postgresql://127.0.0.1:5432/dwh_bus
dwh_bus/user=postgres
dwh_bus/password=postgres
3. Guardar el archivo y ejecutar metadata-editor. Cuando se cree la conexión, hacer referencia al JNDI Name: dwh_bus

martes, 17 de febrero de 2015

Configuración de Conexión JNDI en Pentaho Server para PostgreSQL

En ésta publicación explico el procedimiento para configurar una conexión JNDI (Java Naming and Directory Interface) en Pentaho Server v5.x a v8.x hacia un servidor de base de datos PostgreSQL.

1. Ir al directorio tomcat/conf y editar el archivo context.xml

2. Dentro de la etiqueta <Context> colocar lo siguiente:
<Resource name="jdbc/dwh_bus"
    auth="Container" type="javax.sql.DataSource"
    factory="org.apache.commons.dbcp.BasicDataSourceFactory"
    maxActive="20"
    maxIdle="5"
    maxWait="10000"
    username="postgres"
    password="postgres"
    driverClassName="org.postgresql.Driver"
    url="jdbc:postgresql://127.0.0.1:5432/dwh_bus"/>
NOTA: el nombre jdbc/dwh_bus es muy importante y es sensible a mayúsculas y minúsculas. Es importante recordarlo para configurarlo en las herramientas de BI de Pentaho que se usen. El atributo driverClassName hace referencia al driver JDBC de PostgreSQL y el atributo url a la cadena de conexión hacia el Data Warehouse.

3. Ir al directorio /tomcat/webapps/pentaho/WEB-INF y editar el archivo web.xml

4. Ubicar el comentario <!-- insert additional resource-refs --> y colocar la referencia al recurso JNDI creado en el paso 2.
  <!-- insert additional resource-refs -->
  <resource-ref>
    <description>Conexion al DWH_BUS</description>
    <res-ref-name>jdbc/dwh_bus</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
5. Iniciar Pentaho Server y acceder a PUC como Administrador

6. Ir a la perspectiva Home > Manage Data Sources > New Connection en JNDI Name colocar dwh_bus como se muestra a continuación:



viernes, 17 de octubre de 2014

Configuración de Pentaho BI Server 5.x para PostgreSQL

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentahohibernate, quartz jackrabbit en la base de datos PostgreSQL v9.3

Por defecto, el biserver de Pentaho usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto. El biserver viene con los scripts para MS SQL Server, MySQL, Oracle y PostgreSQL.

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.7, en la siguiente publicación se explica el procedimiento
  • Tener instalado la base de datos  PostgreSQL v9.3
  • Haber descargado la aplicación biserver-ce de Pentaho y haberla copiado y descomprimido en el directorio: \biserver-ce-5.x
  • Haber descargado el controlador JDBC para  PostgreSQL
Configuración paso a paso.-

1. Ir al directorio \biserver-ce-5.x\data aquí se encuentran los scripts para MS SQL Server, MySQL, Oracle y PostgreSQL

2. Abrir el directorio postgresql y ejecutar los scripts: create_repository_postgresql.sqlcreate_quartz_postgresql.sql y create_jcr_postgresql.sql

NOTA: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  pentaho_user del repositorio quartz, y jcr_user del repositorio jackrabbit

Configuración de Tomcat

3. Copiar el driver JDBC Tipo 4 de PostgreSQL (postgresql-9.3-x.jdbc4.jar) al directorio \biserver-ce-5.x\tomcat\lib.

4. Editar el archivo context.xml ubicado en el directorio: \biserver-ce-5.x\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a PostgreSQL
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="hibuser" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/hibernate"
  validationQuery="select version();" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="pentaho_user" password="password"
  driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/quartz"
  validationQuery="select version();"/>
</Context>

5. Eliminar el archivo pentaho.xml del directorio: \biserver-ce-5.x\tomcat\conf\Catalina\localhost

6. Editar el archivo web.xml en el directorio \biserver-ce-5.x\tomcat\webapps\pentaho\WEB-INF. En la línea 76 colocar lo siguiente para que únicamente se inicie la base de datos de ejemplo de HSQLDB:
<!-- [BEGIN HSQLDB DATABASES] -->
  <context-param>
    <param-name>hsqldb-databases</param-name>
    <param-value>sampledata@../../data/hsqldb/sampledata</param-value>
  </context-param>
  <!-- [END HSQLDB DATABASES] -->

Configuración en BI Server

Todos los archivos de configuración del servidor central de BI de Pentaho Community Edition (biserver-ce) se encuentran en el directorio: \biserver-ce-5.x\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

7. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/system/hibernate/postgresql.hibernate.cfg.xml como se muestra a continuación:
...
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>
...

NOTA: no olvidar de editar el archivo postgresql.hibernate.cfg.xml sí la base de datos está en otro servidor

8. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a PostgreSQL como se muestra a continuación:
jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc:postgresql://127.0.0.1:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

9. En la base de datos quartz crear la siguiente tabla:
CREATE TABLE "QRTZ"
(
NAME VARCHAR(200) NOT NULL,
PRIMARY KEY (NAME)
);

ALTER TABLE "QRTZ" OWNER TO pentaho_user;

10. Editar el archivo repository.xml de Jackrabbit en el directorio \biserver-ce-5.x\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para apuntar Jackrabbit al repositorio de base de datos creado en PostgreSQL:

  • Configuración del FileSystem: descomentar de la línea 61 a la 68. Comentar de la línea 71 a la 73
  • Configuración del DataStore: descomentar de la línea 114 a la 125. Comentar la línea 129
  • Configuración del Workspace: descomentar de la línea 214 a la 221. Comentar de la línea 225 a la 227. Descomentar de la línea 262 a la 269. Comentar de la línea 273 a la 276
  • Configuración del Versionamiento: descomentar de la línea 344 a la 351. Comentar de la línea 354 a la 356. Descomentar de la línea 392 a la 399. Comentar de la línea 402 a la 405

11. Reiniciar el servidor de BI de Pentaho

Consideraciones Importantes

En sistemas operativos Windows, sí se ejecutó biserver antes de realizar ésta configuración usando la base de datos por defecto HSQLDB, es conveniente eliminar el contenido de los siguientes directorios para evitar comportamientos inesperados:

  • \biserver-ce-5.x\tomcat\work\Catalina\*
  • \biserver-ce-5.x\tomcat\temp\*
  • \biserver-ce-5.x\pentaho-solutions\system\osgi\cache\*
  • \biserver-ce-5.x\pentaho-solutions\system\jackrabbit\repository

NOTA: de preferencia igual limpiar el cache del navegador web con el que se esté trabajando.


viernes, 29 de agosto de 2014

Configuración de Pentaho BI Server 5.1 para Oracle

En ésta publicación explico el procedimiento para configurar los repositorios de metadatos de Pentaho: hibernate, quartz y jackrabbit en la base de datos Oracle

Por defecto, el biserver de Pentaho usa la base de datos HSQLDB, ésta base de datos no es recomendada para instalaciones en producción por lo que es conveniente instalarlo en un motor de base de datos más robusto. El biserver viene con los scripts para MySQL, Oracle y PostgreSQL.

Pre-requisitos.-
  • Tener instalado y configurado el JDK v1.7 en la siguiente publicación se explica el procedimiento. JDK v1.8 no está totalmente probado, por lo que sugiero no usarlo con biserver
  • Tener instalado la base de datos  Oracle v10g o superior. Para esta publicación he usado Oracle Express Edition 11g
  • Haber descargado la aplicación biserver-ce de Pentaho y haberla copiado y descomprimido en el directorio: \biserver-ce-5.1
  • Haber descargado el controlador JDBC para  Oracle
Configuración paso a paso.-

1. Ir al directorio \biserver-ce-5.1\data aquí se encuentran los scripts para MySQL, Oracle y PostgreSQL

2. Abrir el directorio oracle10g y ejecutar los scripts: create_repository_ora.sqlcreate_quartz_ora.sqlcreate_jcr_ora.sql

NOTAS: password es la contraseña por defecto para los usuarios hibuser del repositorio hibernate,  quartz del repositorio quartz, y jcr_user del repositorio jackrabbit. Sugiero usar sqlplus para ejecutar los scripts.

Configuración de Tomcat

3. Copiar el driver JDBC de Oracle (ojdbc6.jar) al directorio \biserver-ce-5.1\tomcat\lib.

4. Editar el archivo context.xml ubicado en el directorio: \biserver-ce-5.1\tomcat\webapps\pentaho\META-INF. Colocar la siguiente configuración para cambiar la conexión a Oracle

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/pentaho" docbase="webapps/pentaho/">
 <Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="hibuser" password="password"
  driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521/XE"
  validationQuery="select 1 from dual" />
  
 <Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"
  factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
  maxWait="10000" username="quartz" password="password"
  driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521/XE"
  validationQuery="select 1 from dual"/>
</Context>

5. Eliminar el archivo pentaho.xml del directorio: \biserver-ce-5.1\tomcat\conf\Catalina\localhost

6. Editar el archivo web.xml en el directorio \biserver-ce-5.1\tomcat\webapps\pentaho\WEB-INF. En la línea 73 colocar lo siguiente para que únicamente se inicie la base de datos de ejemplo de HSQLDB:

<!-- [BEGIN HSQLDB DATABASES] -->
  <context-param>
    <param-name>hsqldb-databases</param-name>
    <param-value>sampledata@../../data/hsqldb/sampledata</param-value>
  </context-param>
  <!-- [END HSQLDB DATABASES] -->

Configuración en BI Server

Todos los archivos de configuración del servidor central de BI de Pentaho Community Edition (biserver-ce) se encuentran en el directorio: \biserver-ce-X.X.X\pentaho-solutions\system

El resto de configuraciones se realizarán en éste directorio.

7. Ir al subdirectorio /hibernate y editar el archivo hibernate-settings.xml, cambiar la etiqueta <config-file> al valor: system/hibernate/oracle10g.hibernate.cfg.xml como se muestra a continuación:

<?xml version='1.0' encoding='utf-8'?>
<settings>  
    <!--config-file>system/hibernate/hsql.hibernate.cfg.xml</config-file-->
 <config-file>system/hibernate/oracle10g.hibernate.cfg.xml</config-file>
</settings>

NOTA: no olvidar de editar el archivo oracle10g.hibernate.cfg.xml sí la base de datos está en otro servidor

8. Editar el archivo applicationContext-spring-security-hibernate.properties y cambiar la configuración de conexión a Oracle como se muestra a continuación:

jdbc.driver=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521/XE
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect

9. Editar el archivo quartz.properties en el directorio \biserver-ce-X.X.X\pentaho-solutions\system\quartz ubicar la propiedad org.quartz.jobStore.driverDelegateClass (línea 300) y colocar el siguiente valor:

org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate

10. Editar el archivo repository.xml de Jackrabbit en el directorio \biserver-ce-X.X.X\pentaho-solutions\system\jackrabbit. Realizar los siguientes pasos para apuntar Jackrabbit al repositorio de base de datos creado en Oracle:

  • Configuración del FileSystem: descomentar de la línea 53 a la 59. Comentar de la línea 71 a la 73
  • Configuración del DataStore: descomentar de la línea 101 a la 112. Comentar la línea 129
  • Configuración del Workspace: descomentar de la línea 206 a la 212. Comentar de la línea 225 a la 227. Descomentar de la línea 252 a la 260. Comentar de la línea 273 a la 276
  • Configuración del Versionamiento: descomentar de la línea 336 a la 342. Comentar de la línea 354 a la 356. Descomentar de la línea 382 a la 390. Comentar de la línea 402 a la 405

NOTA: no olvidar colocar el valor de PENTAHO_TABLESPACE en el parámetro tablespace para todas las conexiones.

...
<param name="tablespace" value="PENTAHO_TABLESPACE"/>
...

11. Reiniciar el servidor de BI de Pentaho