Следующая статья была первоначально написана Майклом Хангером в блоге Neo4j.
После того, как две недели назад мы опубликовали призыв SOS помочь нам протестировать драйвер JDBC Neo4j в дикой природе, мы надеялись на большой интерес и внимание. К сожалению, это был не тот случай.
К счастью, Ральф Бехер из TIQView активизировал и протестировал множество инструментов JDBC с драйвером. Большое спасибо за эту помолвку, Ральф!
Luanne Coutinho , победитель нашего конкурса Heroku, и Michael Wilmes также взяли на себя задачу тестирования JDBC-драйвера с использованием реальных инструментов. Спасибо!
Я немного повеселился, но не очень успешно тестировал некоторые клиенты JDBC из командной строки с драйвером.
Полный список тестов находится в опубликованной электронной таблице Google .
Ниже приведен довольно внушительный список, не стесняйтесь добавлять свой любимый JDBC-инструмент в этот список, следуя инструкциям в нашем призыве к действию .
Eclipse BIRT
Работает очень хорошо, вам просто нужно указать драйвер в настройке драйвера и отредактировать SQL-запросы в представлении DataSet, чтобы они были Cypher-запросами. Я протестировал против локального экземпляра Neo4j Server.
Петер Нойбауэр
SQuirrel SQL v.3.3.0
Все запросы Cypher работали очень хорошо.
Ральф Бехер Ссылка на сообщение в блоге
Aqua Data Studio 4.7.2
Протестировано как с обычными запросами на чтение, так и с запросами на удаление. Работает. Нет необязательных узлов TYPE «/» HAS_PROPERTY «в запрашиваемой БД. Поэтому просмотр схемы БД невозможен. Приложение работает хорошо. Нет сообщений об ошибках. Древовидная структура представления БД просто остается пустой.
Майкл Уилмес
QlikView
Хорошо работает, подробные объяснения и примеры с запросами, визуализацией и трансформацией в блоге .
Ральф Бехер
Интеграция данных чайника Pentaho
Работал за исключением возврата узла или отношения вызывает исключение. Подробное объяснение и пример в посте блога .
Ральф Бехер
Плагин SQL-запросов для IntelliJ
Работал довольно хорошо, смог выполнить пару запросов, в том числе и мутировавших, — это действительно полезно. Схема браузера была понятна не очень интересно. Попробовал пару экспортов данных — html, csv и xml — примеров, загруженных в dropbox. Применяются ли параметры автоматической фиксации в этих инструментах? В случае, если они делают, я играл с ними без особого успеха. Для default = true я создал узел, а затем запросил его по ID — получил исключение SQLException. Только если я явно фиксирую, узел возвращается. Затем отключил автокоммит, создал узел — то же самое — не смог запросить его, пока я не зафиксировал. Также невозможно обновить свойство, пока я не завершу создание. После фиксации я обновил свойство и откатился (тоже попытался отключиться, убив IntelliJ) — но обновление все равно было зафиксировано.
Luanne Ссылка на скриншоты и файлы данных.
Ataccama DQ Analyzer
Ataccama DQ Analyzer хорошо работает с Neo4j. Это дает нам возможность выполнять профилирование данных на графических данных, более подробно в блоге .
SQLExplorer
Работает плавно. Подробности и множество скриншотов в блоге.
Ральф Бехер
DbVisualizer
Работал хорошо (с реализацией подключения клиента для метаданных базы данных).
Rickard Öberg
Ссылка на сообщение в блоге
LibreOffice
Когда дело доходит до использования базы данных в качестве инструмента отчетности, одна из самых простых вещей, которую вы можете сделать, — это использовать один из пакетов Office, подключиться к базе данных и использовать данные для диаграмм и электронных таблиц. Так как LibreOffice имеет довольно хорошее соединение JDBC, я попробовал это, и вот результат
Rickard Öberg
Ссылка на сообщение в блоге
ODBC в Windows
Хотя наличие драйвера JDBC прекрасно, не все инструменты, работающие с базами данных, используют JDBC. Некоторые используют вместо этого ODBC, и поскольку есть доступ к шлюзу ODBC-JDBC, доступному от Easysoft, я хотел попробовать это. После установки этого программного обеспечения было очень легко установить соединение, а затем подключиться к нему с помощью стандартного инструмента ODBC.
Rickard Öberg
Ссылка на сообщение в блоге
IntelliJ
Наконец, я попытался использовать драйвер JDBC с IntelliJ, моей предпочтительной Java IDE. Это сработало очень хорошо, и с некоторой конфигурацией это даже позволяет мне вводить значения для параметризованных запросов, что приятно.
Rickard Öberg
Ссылка на сообщение в блоге
HenPlus
Не сработало, дошло до регистрации драйвера, но, похоже, он анализирует SQL, поэтому он не выполнил оператор cypher и вместо этого попытался загрузить файл
jisql
Это не работает, он пытается разобрать sql и поэтому не выполняет шифр. Пришлось сначала починить сломанный стартовый скрипт и даже потом он просто зависал в приглашении.
SQL Workbench
Работает очень хорошо, простая настройка, простота в использовании.
SQLShell (Клаппер)
Прежде всего, это работает! Оболочка командной строки, написанная на scala, размещенная на github, но с графическим установщиком ?
Я установил ее в локальный каталог, добавил neo4j-jdbc.jar в каталог lib и настроил файл конфигурации.
[drivers] # Driver aliases. neo4j = org.neo4j.jdbc.Driver [db_neo4j] aliases: neo4j url: jdbc:neo4j://localhost:7474 driver: neo4j user: password: history: $vars.historyDir/neo4j.hist
Then you start it with: sh bin/sqlshell -c config.cfg neo4j
SQLShell, version 0.8.1 (2012/03/16 09:43:31) Copyright (c) 2009-2011 Brian M. Clapper Using JLine Type ""help"" for help. Type "".about"" for more information. sqlshell> start n=node(0) return n Executing query: start n=node(0) return n with params{} Starting the internal [HTTP/1.1] client Execution time: 0.792 seconds Retrieval time: 0.1 seconds 1 row returned. n ----------------------- {_node_id=0, name=root} sqlshell> start n=node(*) return n limit 20 Executing query: start n=node(*) return n limit 20 with params{} Execution time: 0.770 seconds Retrieval time: 0.13 seconds 20 rows returned.
Пока единственным недостатком является то, что инструмент уничтожает терминал, поэтому вам необходимо выполнить «сброс» после этого.