ODBC driver for HBase/Phoenix

2019-07-07 00:22发布

问题:

I need to connect Tableau to HBase or Phoenix and Tableau does not support JDBC. Bummer!

I've read about the proprietary Simba driver but haven't seen any reports of people using it. I don't feel like forking over money when it's not ideal, and my employer feels the same way.

Is there another way to connect Tableau to HBase or Phoenix? How are other people doing it? I don't like the idea of using Hive to connect to HBase because one of the main reasons to go away from Hive is its atrocious performance, so I hope that's not my 'best' alternative.

On the other hand, if people have used Simba and it works well, I'm curious to hear about that.

回答1:

I am the developer on Simba's Phoenix driver. Hortonworks, Cloudera, Databricks, Microsoft, Amazon, Google, etc all choose Simba's drivers for a variety of products.

ie. http://hortonworks.com/partner/simba/,

http://www.simba.com/news/databricks-offers-simba-technologies-developed-odbc-3-8-connectivity-sql-capability-apache-spark/

Also, you need to choose either Phoenix on HBase or HBase standalone for all of your applications. The two types of drivers encode data in different binary representations. String and unsigned integers will be interpreted correctly, but unsigned integers and more complex data-types will be decoded differently. ie. Phoenix doesn't display negative integer values correctly

So if you use Phoenix JDBC for your / applications, you cannot use an HBase ODBC driver with Tableau (unless you have nothing but strings and unsigned integers in your datasource). From your other postings, you do use Phoenix JDBC. So HBase ODBC is not an option for you.



回答2:

The CData ODBC driver will allow you to connect Tableau to HBase (full disclosure: I work for CData Software). You can download a free Beta here. We have an article that outlines the configuration and connection, but I've copied the relevant information steps:

  1. Create/configure a DSN from the ODBC Driver by setting the server address and port (we use the REST API, so the default port is 8080)
    • You should click the "Test Connection" button in the DSN Configuration wizard to ensure that you can establish a proper connection to your HBase database.
  2. Click through the "Connect to Data" options to find "Other Database (ODBC)" and select the DSN you configured
  3. Select CData as the database
  4. Enter a Table name (or leave the Table field blank and click search (the magnifying glass) to see a list of Tables).

Once you have access to the tables, you can work with them exactly as you would any other table in Tableau (drag the table to the join area, manipulate Measures and Dimensions to view your data, etc.). If you have any questions, I or our Support Team will be happy to help.