AFAIK Tableau uses Drill ODBC driver, not JDBC (although Tableau hinted at some JDBC support at some point: https://community.tableau.com/ideas/4633).
it's technically feasible BUT the Drill protocol is very low level so the adapter would have to use the Drill RPC protocol and represent its own data as DrillBuf (which is column oriented, not row oriented). Also, Tableau seems to optimize things a bit for a specific DB: it doesn't query the driver for what is supported and lots of things are hardcoded, which means either the DB would have to replicate Drill dialect of SQL, or the adaptation layer would have to translate. Laurent On Tue, Sep 19, 2017 at 3:17 PM, Muhammad Gelbana <m.gelb...@gmail.com> wrote: > Tableau supports Apache Drill JDBC driver, so you basically can use Drill > as a data provider for Tableau. > > I'm asking if anyone implemented a Calcite adapter for some data engine and > tested if Tableau would be able to connect to it as if it was Apache Drill > ? > > It's like you connect to that adapter by configuring an Apache Drill > connection to it, through Tableau. > > Because otherwise, that data engine will need to have an ODBC driver, which > is clearly a pain in the neck if you Google enough. That's actually what > I'm trying to do. I need to implement a Calcite adapter to support a data > engine but supporting Tableau is essential to our customers and I'd be very > happy if I can avoid going through the Calcite ODBC driver path. > > I apologize if this sounds like a Calcite question but I believe Drill > developers who worked on the JDBC driver can give a good insight. > > If you ask me, I believe Drill is all about Calcite in distributed mode :D, > this may very well be so sketchy point of view but I'm not experienced with > Drill or Calcite myself. > > Hopefully I explained my self clearly. > > Thanks, > Gelbana >