Создание базы данных графов с помощью Amazon Neptune Часть 1a — AWS CloudFormation


Содержание
  1. Как мы все связаны друг с другом?
  2. Результаты обучения
  3. Что такое Amazon Neptune?
  4. Что такое граф?
  5. Ключевые преимущества:
  6. Для чего используется Amazon Neptune?
  7. Архитектура
  8. Обзор решения
  9. Как начать работу?
  10. Предварительные условия
  11. Урок 1: Создание ролевой политики с привязкой к службе для Amazon Neptune
  12. Урок 2: Создание нового пользователя IAM со всеми необходимыми разрешениями для доступа к Amazon Neptune
  13. Урок 3: Создание экземпляра Amazon EC2 Key Pair for Windows для запуска кластера Neptune DB с помощью шаблона AWS CloudFormation
  14. Урок 4: Добавьте политики IAM для предоставления разрешений на использование шаблона AWS CloudFormation
  15. Урок 5: Создание кластера БД Amazon Neptune с помощью шаблона AWS CloudFormation
  16. Заключительные размышления
  17. AWS re:Invent 2020: Глубокое погружение в Amazon Neptune с Брэдом Биби, генеральным директором Amazon Neptune
  18. AWS re:Invent 2020: Новые возможности для быстрого создания графовых приложений с помощью Amazon Neptune
  19. Ссылки
  20. Дополнительные ресурсы
  21. AWS Innovate Online Conference APJ — 23 & 25 августа 2022 г.
  22. 🚀 Горячая новость: Представляем Amazon Neptune Global Database
  23. Регистрация на крупнейшую австралийскую конференцию по инженерии данных DataEngBytes:
  24. Следующий урок

Как мы все связаны друг с другом?

Возможно, вы слышали о термине «6 степеней разделения». Возможно, вы являетесь «другом друга» на Facebook, каждый месяц летаете на самолете из Сиднея в Сан-Франциско, каждое утро покупаете свой любимый кофе в Starbucks или приобретаете учебник по машинному обучению на Amazon.com, и ваши предпочтения схожи с другими людьми из вашего демографического профиля.

Именно здесь могут пригодиться графовые базы данных, поскольку взаимосвязи не могут храниться в традиционной реляционной базе данных или запрашиваться с помощью структурированного языка запросов (SQL).

Результаты обучения

В консоли управления AWS вы узнаете, как:

  • Создавать учетную запись AWS
  • Прикреплять политики IAM к пользователю IAM Admin для CloudFormation и EC2
  • Создавать базу данных графов с помощью Amazon CloudFormation.

Что такое Amazon Neptune?

Amazon Neptune — это полностью управляемая база данных графов. Она может быть очень полезна, когда вам нужно описать и отобразить взаимосвязи внутри связанных наборов данных.

Что такое граф?

Граф состоит из узлов (или вершин), которые подобны таблицам в SQL, они соединены ребрами, которые представляют отношения.

Например, в случае с маршрутами полетов узлы представлены самолетами, а ребра — городами прибытия и отправления, такими как Лондон.

В другом примере, в случае социальных сетей, узлы представлены людьми, а ребра определяют, существует ли дружба.

Ключевые преимущества:

  • Инфраструктура полностью управляется AWS

  • Вы платите только за те запросы, которые используете

  • Вам не нужно предоставлять аппаратное обеспечение

  • Может хранить миллиарды отношений

  • Разработана с более чем 99,99-процентной доступностью

  • Amazon Neptune поддерживает язык запросов с открытым исходным кодом, такой как openCypher, Apache TinkerPop Gremlin и SPARQL 1.1 от Консорциума Всемирной паутины (W3C).

Для чего используется Amazon Neptune?

Amazon Neptune может быть использован для описания таких отношений, как:

  • Социальные сети

  • Составление карт путешествий клиентов для улучшения потребительского опыта

  • Обнаружение мошенничества

  • Графы знаний, используемые для борьбы с глобальным терроризмом

  • Системы рекомендаций

  • Графы идентичности для создания единого представления о клиенте

Архитектура

Приведенная ниже диаграмма предоставлена Amazon Web Services и описывает обзор решения для создания базы данных графов с помощью Amazon Neptune:

Рабочий процесс описывает:

Шаг 1: Массовая загрузка csv-файла в Amazon Neptune.

Шаг 2: Amazon Neptune хранит данные, содержащие взаимосвязи.

Шаг 3: Запрос данных

Обзор решения

На рисунке ниже показана моя высокоуровневая архитектура решения:

Как начать работу?

Если вы новый пользователь, вы получаете мгновенный доступ к AWS Free Tier на 30 дней с 750 часами использования экземпляров t3.medium или t4g.medium.

Предварительные условия

  • Добавьте права пользователю IAM Admin для работы с кластером Amazon Neptune DB.

  • Создайте пару ключей Amazon EC2 для использования при запуске кластера Neptune с помощью AWS CloudFormation.

  • Добавьте политики IAM для предоставления разрешений, необходимых для использования шаблона AWS CloudFormation.

  • Используйте стек AWS CloudFormation для создания кластера Amazon Neptune DB.

Урок 1: Создание ролевой политики с привязкой к службе для Amazon Neptune

Создайте пользователя IAM с правами доступа к Amazon Neptune, следуя приведенным здесь инструкциям.

Шаг 1: Создайте учетную запись AWS и войдите в нее под пользователем IAM Admin. Вы можете следовать инструкциям здесь, чтобы создать учетную запись, если у вас ее нет.

Шаг 2: Войдите в систему с учетными данными пользователя IAM Admin.

Шаг 3: Загрузите и сохраните копию руководства пользователя Amazon Neptune на своем компьютере или следуйте инструкциям здесь.

Шаг 4: Войдите в консоль IAM, наберите в навигационной панели ‘IAM’ или этот ресурс может быть сохранен в ваших закладках.

Шаг 5: Нажмите Policies в меню слева.

Шаг 6: Нажмите синюю кнопку Создать политику.

Шаг 7: Скопируйте этот код и вставьте его во вкладку json.

Шаг 8: В разделе Tags сохраните настройки по умолчанию и нажмите Next review.

Шаг 9: В разделе Обзор политики укажите имя для роли NeptuneServiceLinked и нажмите кнопку Создать политику.

Шаг 10: Роль, связанная с сервисом, была успешно создана.

Урок 2: Создание нового пользователя IAM со всеми необходимыми разрешениями для доступа к Amazon Neptune

Создайте IAM-пользователя с разрешениями для доступа к Amazon Neptune, следуя приведенным здесь инструкциям.

Шаг 1: Повторите шаги 1-4 из руководства 1 и нажмите Пользователи в левом меню консоли IAM.

Шаг 2: Нажмите Добавить пользователей.

Шаг 3: Укажите имя пользователя, установите флажок ‘Ключ доступа: Программный доступ» и, наконец, нажмите Далее:Разрешения.

Шаг 4: В разделе Установить разрешения нажмите на поле Прикреплять политики напрямую и скопируйте, а в строке поиска введите слово ‘Neptune’ и отметьте флажками поля для предоставления доступа к политике:

  • NeptuneConsoleFullAccess
  • NeptuneFullAccess
  • NeptuneReadOnlyAccess .

Шаг 5: На той же странице введите ‘VPC’ в строке поиска и установите флажок, чтобы предоставить доступ к:

*AmazonVPCFullAccess.

Нажмите кнопку Next:tags.

Шаг 6: Вам не нужно указывать никаких тегов. Нажмите Далее:обзор

Шаг 7: Просмотрите детали доступа. Нажмите Создать пользователя

Шаг 8: Нажмите Загрузить как файл csv, чтобы сохранить идентификатор ключа доступа нового пользователя и секретный ключ доступа для программного доступа для взаимодействия с AWS с помощью CLI.

Урок 3: Создание экземпляра Amazon EC2 Key Pair for Windows для запуска кластера Neptune DB с помощью шаблона AWS CloudFormation

Для создания пары ключей Amazon EC2 для экземпляров Windows с помощью pem вы можете следовать приведенным здесь инструкциям.

Шаг 1: Введите ‘EC2’ в строку поиска, чтобы перейти к консоли EC2.

Шаг 2: В левом меню Network & Security нажмите Key Pairs.

Шаг 3: Нажмите кнопку создать пару ключей

Шаг 4: Укажите описательное имя в разделе Имя. Для Windows выберите ‘Key Pair Type’ RSA и, в-третьих, выберите ‘Private key file format’ как .pem для использования с openSSH. Нажмите кнопку Создать пару ключей.

Шаг 5: Пара ключей успешно создана. Загрузите и сохраните данные файла закрытого ключа.

Урок 4: Добавьте политики IAM для предоставления разрешений на использование шаблона AWS CloudFormation

Следуйте инструкциям из документации AWS для предоставления разрешений на использование AWS CloudFormation.

Шаг 1: К только что созданному пользователю из руководства 2 прикрепите управляемую политику ‘AWSCloudFormationReadOnlyAccess’ для предоставления доступа к AWS CloudFormation.

Нажмите на Users в левом меню и выберите Add permissions.

Шаг 2: В разделе Grant Permissions введите AWSCloudFormationReadOnlyAccess для фильтрации политики, установите флажок и нажмите Next:review

Шаг 3: Нажмите Добавить разрешения

Шаг 4: Вы можете просмотреть 5 политик, примененных к пользователю.

Шаг 5: Перейдите к Политикам в левом меню и нажмите кнопку Создать политику.

Шаг 6: В разделе Создать политику перейдите на вкладку json и скопируйте код отсюда и вставьте его в json. Нажмите кнопку Далее:теги.

Шаг 7: Сохраните настройки по умолчанию для тегов и нажмите кнопку Next:review.

Шаг 8: В разделе Политика обзора укажите имя роли и нажмите Создать политику.

Шаг 9: Нажмите Пользователи в меню слева и нажмите Добавить разрешения. Нажмите Прикрепить политики напрямую и Далее:обзор.

Шаг 10: Нажмите Добавить разрешения

Шаг 11: Вы можете просмотреть политики, прикрепленные к пользователю IAM Admin, который предоставляет доступ к AWS CloudFormation для доступа к Amazon Neptune.

Урок 5: Создание кластера БД Amazon Neptune с помощью шаблона AWS CloudFormation

AWS CloudFormation позволяет управлять набором сервисов AWS с помощью шаблона, что помогает в обеспечении и управлении сервисами с помощью инфраструктуры как кода.

Для создания кластера Amazon Neptune DB будет использоваться стек AWS CloudFormation для описания ресурсов AWS и других зависимостей для запуска и настройки стека.

Шаг 1: Из руководства пользователя Amazon Neptune используйте шаблон Amazon CloudFormation для создания кластера БД Amazon Neptune, нажав на Launch Stack для вашего региона AWS по ссылке здесь.

Например, я выбрал стек запуска для Азиатско-Тихоокеанского региона (Сидней).

Шаг 2: В консоли AWS CloudFormation в разделе Template is ready нажмите Next.

Шаг 3: На странице Specify Stack details введите имя ключевой пары в поле EC2SSHKeyPairName. Нажмите кнопку Next.

Шаг 4: На странице Параметры нажмите Далее.

Шаг 5: На странице Review Neptune QuickStart установите два флажка, показанных на изображении, чтобы подтвердить, что IAM-ресурсы будут созданы с помощью AWS CloudFormation. Нажмите кнопку Создать стек.

Шаг 6: AWS CloudFormation инициирует создание стека.

Процесс создания стека занял примерно 25 минут для создания кластера Amazon Neptune DB.

Заключительные размышления

AWS CloudFormation особенно полезен при предоставлении:

  • фрагменты шаблонов
  • Шаблоны по регионам AWS
  • Шаблоны для конкретного сервиса AWS, например, Amazon Redshift
  • Примеры решений, например, интеграция с Microsoft Sharepoint и Active Directory.

AWS re:Invent 2020: Глубокое погружение в Amazon Neptune с Брэдом Биби, генеральным директором Amazon Neptune

AWS re:Invent 2020: Новые возможности для быстрого создания графовых приложений с помощью Amazon Neptune

Ссылки

  • Упрощение управления инфраструктурой с помощью AWS CloudFormation

  • Ресурсы для разработчиков Amazon Neptune

  • Процесс ETL для преобразования и загрузки данных в Amazon Neptune

  • Результаты запросов в рабочем столе Amazon Neptune

  • Руководство пользователя Amazon Neptune

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

  • Знакомство с глобальной базой данных Amazon Neptune

Дополнительные ресурсы

  • Запуск экземпляра EC2

  • Создание системы рекомендаций друзей

  • Возможности Amazon Neptune

  • Графические блокноты AWS

  • Об Amazon Neptune

  • Путь обучения для Amazon Neptune

  • Следите за последними новостями из AWS Database Blogs для Amazon Neptune

  • Amazon Neptune упрощает граф-аналитику и рабочие процессы машинного обучения благодаря интеграции с Python

  • Инструменты Neptune

  • Графовые блокноты AWS

AWS Innovate Online Conference APJ — 23 & 25 августа 2022 г.

Зарегистрируйтесь по этой ссылке

🚀 Горячая новость: Представляем Amazon Neptune Global Database

С 27 июля 2022 года глобальная база данных AWS Neptune Global Database может строить графовые отношения в нескольких регионах, включая Восточный регион США (Северная Вирджиния), Восточный регион США (Огайо), Западный регион США (Северная Калифорния), Западный регион США (Орегон), Европу (Ирландия), Европу (Лондон) и Азиатско-Тихоокеанский регион (Токио).

Вы можете прочитать об этом объявлении в блоге AWS Database Blog, написанном автором Navtanay Sinha, здесь.

Регистрация на крупнейшую австралийскую конференцию по инженерии данных DataEngBytes:

  • Мельбурн: 27 сентября 2022 г.
  • Сидней: 29 сентября 2022 г.

Регистрация здесь: https://dataengconf.com.au/

До следующего урока, счастливого обучения! 😁

Следующий урок

Часть 2, в следующем уроке мы рассмотрим преобразование данных и загрузку данных в Amazon Neptune.

Оцените статью
devanswers.ru
Добавить комментарий