Neo4j BI connector to Tableau
I was inspired by David Allen’s https://medium.com/neo4j/using-the-bi-connector-to-query-neo4j-with-sql-372eacb08fbc. So I wanted to try out on Tableau (instead of using SQL). This allows me to use Tableau to access the data on my local Neo4J database like below:
First step is to download the Neo4J BI connector (https://neo4j.com/bi-connector/) and extract the files and place them into this specific folder on my windows machine:
Windows: C:\Program Files\Tableau\DriversOTHERS:
Mac: ~/Library/Tableau/Drivers
Linux: /opt/tableau/tableau_driver/jdbc
This is how it looks like on my PC:
Then for the 2nd step, I run Tableau and create a [Other Database (jdbc)] connector:
The 3rd step is to drag the NODES and the Relationships and establish their links/relationships (not JOIN) together:
Do Note: Using the ‘Standard’ Movie database, I dragged the Person NODE to the right of each of the relationships, and then RENAMED them from Person1, Person2, Person3 etc. to the appropriate role (Actor, Director,etc).
Now I can now go to the worksheet and do Tableau analysis:
Will this be faster than just exporting the Neo4J output into CSV and then importing them into Tableau? Let’s find out… in the future!
Some errors encountered:
- The JDBC connection details seem to have been cached. Even if we open another NEO4J database, the schema in Tableau always defaults to the previous one.
Resolution: deleted the old cached data in the folder:
2. When working with super large NEO4J files, the JDBC connector will timeout with the error “Deadline Time Exceeded”
Resolution: create a neo4j.properties file with this entry:
setNetworkTimeout=5000 ←or set this value higher
And then in the [Other Database (JDBC)] config screen point to that file!