Driver JDBC untuk Neo4J Menjembatani Jurang SLQ/NoSQL

Database NoSQL seperti database graf Neo4j biasanya tidak dapat bekerja dengan tool database yang umumnya didesain untuk database SQL. Rickard Öberg, pengembang dari Neo Technology merasa ini tidak tepat dan dalam sebuah posting blog dia menjelaskan antarmuka JDBC yang dia buat yang meneruskan query database ke Neo4j yang mengijinkan aplikasi apapun untuk mengakses database NoSQL tanpa modifikasi.

Pendekatan yang dilakukan oleh Öberg adalah dengan menggunakan API REST untuk Neo4j dan Cyber query language milik Neo4j. Hasil Cyper query adalah map yang dapat diiterasi yang dapat dikonversi menjadi JDBC ResultSet. Implementasi API JDBC ringan mendelegasi request ke API REST dan Cyper query engine. Untuk informasi tabel dan kolom, Öberg membuat sebuah graf yang mendeskripsikan metadata lewat “type nodes”.

Sistem ini mampu merespon Cyper query yang dikirim lewat JDBC tetapi sebagian besar tool database mengirim query seperti "SELECT * FROM table WHERE query" untuk membuat tool ini bekerja dengan baik, dia menambahkan quirks mode yang mengkonversi statemen SQL umum ke ekuivalen Cypher. Ini memungkinkan dia untuk mendapat DbVisualiser, LibreOffice, gateway ODBC-JDBC dan IntelliJ untuk dapat bekerja dengan database Neo4j.

Proyek ini masih dalam tahap awal, baru dapat melakukan query baca dan hanya bekerja dengan Neo4j lewat API REST dan akan tidak efisien untuk load tinggi.

Bagaimanapun Öberg merasa bahwa ada potensi besar menghubungkan database NoSQL dengan tool SQL. Kode sumber kode ini dapat diunduh dari repositori github milik Öberg. Kode ini dilepas dibawah lisensi GPL.

Via

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.