Начало работы с Amazon Neptune

Графовые базы данных, такие как Amazon Neptune, предназначены для хранения взаимосвязей и навигации в них. Они имеют ряд преимуществ перед реляционными базами данных в таких примерах использования, как социальные сети, сервисы рекомендаций и системы выявления мошенничества, когда требуется создавать взаимосвязи между данными и быстро их запрашивать. Существует ряд проблем при создании этих типов приложений с использованием реляционной базы данных. Потребуется множество таблиц с множеством внешних ключей. SQL-запросы для навигации по этим данным будут содержать вложенные запросы и сложные объединения, которые быстро станут громоздкими, при этом по мере увеличения объема данных запросы будут выполняться с меньшей эффективностью. На re:Invent 2018 мы представили переход на графовые базы данных, предоставляющие более подробные сведения.

Neptune использует структуры графов, такие как узлы (объекты данных), ребра (взаимосвязи) и свойства для представления и хранения данных. Эти взаимосвязи сохраняются как элементы первого порядка модели данных. Это позволяет напрямую связывать данные в узлах и значительно повышать производительность запросов, используемых для навигации по взаимосвязям в данных. Производительность Neptune в интерактивном режиме при любом масштабе позволяет эффективно использовать этот сервис в широком спектре примеров использования графов.

Если ваши данные уже представлены в графовой модели, начать работу с Amazon Neptune не составит труда. Сервис позволяет загружать данные в формате CSV или RDF и создавать запросы графов с помощью Apache TinkerPop Gremlin, SPARQL или openCypher. Можно воспользоваться документацией для начала работы или просмотреть вебинар AWS Online Tech Talk по расположенным ниже ссылкам. Кроме того, мы составили рекомендации по работе с Amazon Neptune. 

 
Поскольку Amazon Neptune поддерживает открытые API Graph и языки запросов, мы предоставили ссылку на внешнюю документацию для Gremlin, SPARQL и openCypher. Клиенты, использующие Gremlin с Neptune, часто обращаются к онлайн-книге Practical Gremlin: An Apache TinkerPop Tutorial как полезному дополнению к документации по Apache TinkerPop. Для клиентов, использующих RDF и SPARQL с Neptune, будет полезен обзор SPARQL 1.1 Консорциума Всемирной паутины. openCypher – это декларативный язык запросов для графов свойств, который первоначально был разработан компанией Neo4j, затем в 2015 году был открыт и внесен в проект openCypher под лицензией Apache 2 с открытым исходным кодом. Его синтаксис изложен в документе Cypher Query Language Reference, Version 9.

Если вы хотите понять, как просматривать данные в виде графа, обратитесь к презентации re:Invent 2018 по работе с графовой моделью данных и запросами с помощью Amazon Neptune и примеру кода, доступному на Github.

Доступны и другие примеры, которые помогут начать работу. У нас есть пример кода для визуализации графа Neptune. У нас есть приложение к ETL IMDB в Neptune, использующее AWS Glue для испытания графовых запросов на поиск «Шести шагов до Кевина Бейкона». У нас есть пример сервиса рекомендаций, показывающий использование совместной фильтрации.

Если вас интересует включение GraphQL для получения доступа к Amazon Neptune, просмотрите пример приложения, демонстрирующий использование AWS AppSync GraphQL и Amazon Neptune.

Если вы хотите перейти на Amazon Neptune, обратитесь к презентации re:Invent 2018 по миграции в Amazon Neptune. Кроме того, у нас есть сервисная программа по преобразованию данных GraphML в формат Neptune CSV, а также библиотека Python для записи заданий из AWS Glue в Neptune.

Получите ответы на все вопросы

Посетите страницу вопросов и ответов по Amazon Neptune.

Подробнее 
Зарегистрировать бесплатный аккаунт

Получите мгновенный доступ к уровню бесплатного пользования AWS. 

Регистрация 
Начать разработку в консоли

Начните разработку с помощью Amazon Neptune в Консоли управления AWS.

Войти