GitHub user conker84 reopened a pull request: https://github.com/apache/zeppelin/pull/1582
[ZEPPELIN-1604] Add Neo4j interpreter and Network visualization ### What is this PR for? This contribution would to introduce Neo4j Cypher intepreter and the new network visualization; at the same time would provide base APIs that enable other graph databases (or graph framworks such as GraphX or Giraph). ### What type of PR is it? [Feature] ### Todos * [x] - Create the network visualization * [x] - Provide base APIs to manage graph results (under: org.apache.zeppelin.interpreter.graph.*) * [x] - Create the Neo4j intepreter ### What is the Jira issue? [[ZEPPELIN-1604]](https://issues.apache.org/jira/browse/ZEPPELIN-1604) ### How should this be tested? Donwload and execute [Neo4j](https://neo4j.com/download/?ref=home) v3.x, you can also pull a [Docker image](https://neo4j.com/developer/docker/). In order to execute test cases, if you are running Java 7, you need to also provide an environment variable telling the tests where to find Java 8, because Neo4j-the-database needs it to run. ```bash export NEO4J_JAVA=<path/to/java/home> ``` Use this statement to create a dummy dataset ```bash %neo4j UNWIND range(1,100) as id CREATE (p:Person {id:id, name: "Name " + id, age: id % 3}) WITH collect(p) as people UNWIND people as p1 UNWIND range(1,10) as friend WITH p1, people[(p1.id + friend) % size(people)] as p2 CREATE (p1)-[:KNOWS {years: abs(p2.id - p2.id)}]->(p2) ``` Then you can write some simple queries like: ```bash %neo4j MATCH (p:Person)-[r:KNOWS]-(p1:Person) RETURN p, r, p1 LIMIT 10; ``` ```bash %neo4j MATCH (p:Person)-[r:KNOWS]-(p1:Person) RETURN p.id AS ID_A, p.name AS NAME_A, r.years AS YEARS, p1.id AS ID_B, p1.name AS NAME_B LIMIT 20; ``` ### Screenshots   ### Video  ### Questions: * Does the licenses files need update? **Yes** * Is there breaking changes for older versions? **No** * Does this needs documentation? **Yes**. I have create the neo4j.md file in /docs/intepreter folder You can merge this pull request into a Git repository by running: $ git pull https://github.com/conker84/zeppelin master Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/1582.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1582 ---- commit 4e685ccf2bc23c41f7d48569af584ee535feb474 Author: conker84 <sant...@gmail.com> Date: 2016-10-26T20:07:17Z First commit commit acc4307dd1b7f90dedf76ecb8a4b27e93658399f Author: conker84 <sant...@gmail.com> Date: 2016-10-26T21:40:47Z Added the graph footer to provide detailed data information commit 72f12036047e8fdd518712527380730ac139988d Author: conker84 <sant...@gmail.com> Date: 2016-10-26T22:15:39Z Code clean commit bd1b0f23fd1b5e35e5a3c125fff50abccebc4ba3 Author: conker84 <sant...@gmail.com> Date: 2016-10-29T13:37:30Z Changes: Move the GraphResult to zeppelin-intepreter package in order to use as base api for other graph databases. Added neo4.md to the documentation. Prevented the nodes overlap. commit 251fba0a16ded784be33995ba83abe0cb23f388a Author: conker84 <sant...@gmail.com> Date: 2016-10-29T13:43:02Z Added doc images commit bf68eb6b6ee28de7e9fa8c67c223130d7b802949 Author: conker84 <sant...@gmail.com> Date: 2016-10-29T13:45:27Z doc fix commit c8249b6c45c1b5957957ea3cac13d8fb4c17ef5d Author: conker84 <sant...@gmail.com> Date: 2016-11-01T13:43:07Z Removed Jackson Dependencies commit d5997778c2edf9b75cef66d36ec95bf5a14fc5bb Author: conker84 <sant...@gmail.com> Date: 2016-11-01T14:04:59Z reactivate "goog-webfont-dl" task commit 9aefddfc5a95fb469f21cec1a968cc917020dea5 Author: conker84 <sant...@gmail.com> Date: 2016-11-02T13:47:48Z Added tests and changed network icon commit 793f72922cd9acbe4a5cbf26986d4c4ceedf9df2 Author: conker84 <sant...@gmail.com> Date: 2016-11-02T21:07:05Z Bugfixes commit 96853e1e3070230c24c96ac1c549754a3af63737 Author: conker84 <sant...@gmail.com> Date: 2016-11-03T17:26:51Z Updated the navigation menu commit f68ab8e4ac3b9a09a45ae9d534743035ecd8ff25 Author: conker84 <sant...@gmail.com> Date: 2016-11-03T17:28:14Z updated the zeppelin-site-xml.template file commit 6e92dbb923e6d11ff85d50bbf2748bc61d37942a Author: conker84 <sant...@gmail.com> Date: 2016-11-03T17:35:03Z Update to LICENSE file commit d57133d39f9bf9d9518cb74e0ed1bb2e32da983a Author: conker84 <sant...@gmail.com> Date: 2016-11-03T17:35:03Z Update to LICENSE file commit 964404b360d70a2337761b7ff716e780140d6648 Author: conker84 <sant...@gmail.com> Date: 2016-11-03T18:03:02Z Added tag to sigma.js in bower.json commit 39d0fa2dc1993ba89f6273602e7289083fb3cc49 Author: conker84 <sant...@gmail.com> Date: 2016-11-04T21:10:41Z Updated the code to manage simple graphs. Updated the documentation. commit 956a53735b8e69ed92815e8e8a84587af88997ac Author: conker84 <sant...@gmail.com> Date: 2016-11-08T19:27:01Z Changes: Updated documentation Fixed perfomance issues commit c5b57f7a83fd1ebccb0c2509e959f906dc0085c6 Author: conker84 <sant...@gmail.com> Date: 2016-11-15T18:36:26Z Rebase 1 commit 96d79a5e93a1dbcab7cace724feabf07ecf082f1 Author: conker84 <sant...@gmail.com> Date: 2016-10-26T21:40:47Z Added the graph footer to provide detailed data information commit 4a6e69023b8999d00c38f8987668316df0922366 Author: conker84 <sant...@gmail.com> Date: 2016-10-26T22:15:39Z Code clean commit 14fddace5d3b179983efeed4ee0bd7f3489dea1d Author: conker84 <sant...@gmail.com> Date: 2016-11-15T18:38:26Z Rebase 2 commit 00acf1e3021eb6d93be385ba98fbfa85860b4514 Author: conker84 <sant...@gmail.com> Date: 2016-10-29T13:43:02Z Added doc images commit 59a85f84cf673323f811ae15609ca93cef0da951 Author: conker84 <sant...@gmail.com> Date: 2016-10-29T13:45:27Z doc fix commit 62ed113760b6cdac39d691e6f38a33fd22ce8ee0 Author: conker84 <sant...@gmail.com> Date: 2016-11-01T13:43:07Z Removed Jackson Dependencies commit 144224d806169187531b1a06bbd0a3bfc951d233 Author: conker84 <sant...@gmail.com> Date: 2016-11-01T14:04:59Z reactivate "goog-webfont-dl" task commit 44c924db0827a6fb9982dd28aee2c4d40896a339 Author: conker84 <sant...@gmail.com> Date: 2016-11-02T13:47:48Z Added tests and changed network icon commit 3221fa5723f05d6f7423008e25ce33b4280271e2 Author: conker84 <sant...@gmail.com> Date: 2016-11-02T21:07:05Z Bugfixes commit a86ed5423b81e5a4d053aede274cb6356f5e1bdf Author: conker84 <sant...@gmail.com> Date: 2016-11-03T17:26:51Z Updated the navigation menu commit b2aaa1c85c1b49482bda0e9428ad518948b6b9a2 Author: conker84 <sant...@gmail.com> Date: 2016-11-15T18:39:22Z Rebase 3 commit cbd6e64a396f653c2944fbd98c3c76331e6e3d34 Author: conker84 <sant...@gmail.com> Date: 2016-11-15T18:40:23Z Rebase 3 ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---