Графовые базы данных для соц. сетей. Часть 2

3 мин. на чтение

В первой части статьи мы познакомились с понятием Графа. Вот он:

Ладно, не совсем с таким, а математическим. Хотя Александр Федорович Ланжерон (на портрете) фигура не менее значимая, пусть и не математическая.

Пришло время перейти от теории к практике. В качестве базы данных мы выберем достаточно известный пакет Neo4j. Neo4j был выпущен еще в 2007 году, претерпев до 2018-го немало изменений, вплоть до полного переписывания исходного кода на новые языки программирования. Как правило этому предшествовало изучение его автором «чего-то новенького». Самая последняя редакция Neo4j работает на Java VM. Соответственно, чтобы эта балалаечка заиграла, нужно убедиться в наличии и работоспособности у вас Java. Проще всего это сделать через Термнал и команду java -version

Далее, если у вас Mac, как у приличного человека и разработчика используйте менеджер пакетов Homebrew

brew update
brew install neo4j

Магия Мака сама установит все зависимости, вам останется только запустить сам сервис с помощью незамысловатой команды neo4j start:

Как вы можете видеть, в консоли присутствует сразу информация о том, что у Neo4j есть какая-то веб-морда, которая доступна по адресу http://localhost:7474/, давайте сходим и посмотрим:

У вас он конечно будет выглядеть не так, потому что Вы еще не загрузили демо данные, которые есть в комплекте к Neo4j. Чтобы сделать это достаточно подключить к локальной БД, выбрать раздел Favorites -> Saved Scripts -> Course Queries -> Neo4j course data

После выполнения запроса в пару тысяч строк (наберитесь терпения, если у вас не самое мощное железо), у вас будет прекрасная выборка для экспериментов и обучения. Кстати, могу порекомендовать прекрасный курс на Udemy по Neo4j, который прошел в т.ч. автор этой статьи. Между прочим, это не реклама. Курс стоит совсем недорого — 11 баксов.

В следующей части статьи мы детально рассмотрим язык запросов к БД и вообще работать с бекендом.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.