| ************************************* |
| HCatalog Integration |
| ************************************* |
| |
| Apache Tajo™ catalog supports HCatalogStore driver to integrate with Apache Hive™. |
| This integration allows Tajo to access all tables used in Apache Hive. |
| Depending on your purpose, you can execute either SQL queries or HiveQL queries on the |
| same tables managed in Apache Hive. |
| |
| In order to use this feature, you need to build Tajo with a specified maven profile |
| and then add some configs into ``conf/tajo-env.sh`` and ``conf/catalog-site.xml``. |
| This section describes how to setup HCatalog integration. |
| This instruction would take no more than ten minutes. |
| |
| First, you need to compile the source code with hcatalog profile. |
| Currently, Tajo supports hcatalog-0.11.0 and hcatalog-0.12.0 profile. |
| So, if you want to use Hive 0.11.0, you need to set ``-Phcatalog-0.11.0`` as the maven profile :: |
| |
| $ mvn clean package -DskipTests -Pdist -Dtar -Phcatalog-0.11.0 |
| |
| Or, if you want to use Hive 0.12.0, you need to set ``-Phcatalog-0.12.0`` as the maven profile :: |
| |
| $ mvn clean package -DskipTests -Pdist -Dtar -Phcatalog-0.12.0 |
| |
| Then, you need to set your Hive home directory to the environment variable ``HIVE_HOME`` in conf/tajo-env.sh as follows: :: |
| |
| export HIVE_HOME=/path/to/your/hive/directory |
| |
| If you need to use jdbc to connect HiveMetaStore, you have to prepare MySQL jdbc driver. |
| Next, you should set the path of MySQL JDBC driver jar file to the environment variable HIVE_JDBC_DRIVER_DIR in conf/tajo-env.sh as follows: :: |
| |
| export HIVE_JDBC_DRIVER_DIR==/path/to/your/mysql_jdbc_driver/mysql-connector-java-x.x.x-bin.jar |
| |
| Finally, you should specify HCatalogStore as Tajo catalog driver class in ``conf/catalog-site.xml`` as follows: :: |
| |
| <property> |
| <name>tajo.catalog.store.class</name> |
| <value>org.apache.tajo.catalog.store.HCatalogStore</value> |
| </property> |