В прошлом году мы объявили об общедоступности RStudio на Amazon SageMaker, первая в отрасли полностью управляемая интегрированная среда разработки (IDE) RStudio Workbench в облаке. Вы можете быстро запустить знакомую среду разработки RStudio и подключать и отключать базовые вычислительные ресурсы, не прерывая свою работу, что упрощает создание решений для машинного обучения (ML) и аналитики в R в любом масштабе.
Многие пользователи RStudio on SageMaker также являются пользователями Амазонка Redshift, полностью управляемое массивно-параллельное хранилище данных петабайтного масштаба для хранения данных и аналитических рабочих нагрузок. Это позволяет быстро, просто и экономично анализировать все ваши данные с помощью стандартного SQL и существующих инструментов бизнес-аналитики (BI). Пользователи также могут взаимодействовать с данными с помощью ODBC, JDBC или Amazon Redshift Data API.
Использование RStudio в SageMaker и Amazon Redshift может быть полезным для эффективного анализа больших наборов данных в облаке. Однако работа с данными в облаке может создавать проблемы, такие как необходимость удаления хранилищ данных организации, обеспечение безопасности и соответствия требованиям, а также снижение сложности за счет стандартизации инструментов. AWS предлагает такие инструменты, как RStudio на SageMaker и Amazon Redshift, которые помогут решить эти проблемы.
В этом сообщении блога мы покажем вам, как использовать обе эти службы вместе, чтобы эффективно выполнять анализ больших наборов данных в облаке, одновременно решая упомянутые выше проблемы. Этот блог посвящен Rstudio на языке Amazon SageMaker, целевой аудиторией которого являются бизнес-аналитики, инженеры по данным, специалисты по данным и все разработчики, использующие R Language и Amazon Redshift.
Если вы хотите использовать традиционный опыт SageMaker Studio с Amazon Redshift, см. Использование Amazon Redshift Data API для взаимодействия с блокнотом Amazon SageMaker Jupyter.
Обзор решения
Сегодня в блоге мы будем выполнять следующие шаги:
- Клонирование репозитория примеров с необходимыми пакетами.
- Подключение к Amazon Redshift с помощью защищенного соединения ODBC (ODBC является предпочтительным протоколом для RStudio.).
- Выполнение запросов и действий SageMaker API с данными в Amazon Redshift Serverless через RStudio на SageMaker
Этот процесс изображен в следующей архитектуре решения:
Пошаговое руководство по решению
Предпосылки
Прежде чем приступить к работе, убедитесь, что выполнены все требования для настройки RStudio в Amazon SageMaker и Amazon Redshift Serverless, например:
Мы будем использовать стек CloudFormation для создания необходимой инфраструктуры.
Примечание: Если у вас уже есть домен RStudio и кластер Amazon Redshift, этот шаг можно пропустить.
Запуск этого стека создает следующие ресурсы:
- 3 частные подсети
- 1 общедоступная подсеть
- 1 NAT-шлюз
- Интернет-шлюз
- Бессерверный кластер Amazon Redshift
- Домен SageMaker с RStudio
- Профиль пользователя SageMaker RStudio
- Роль службы IAM для выполнения домена SageMaker RStudio
- Роль службы IAM для выполнения профиля пользователя SageMaker RStudio
Этот шаблон предназначен для работы в регионе (например, us-east-1
, us-west-2
) с тремя зонами доступности, RStudio на SageMaker и Amazon Redshift Serverless. Убедитесь, что ваш регион имеет доступ к этим ресурсам, или соответствующим образом измените шаблоны.
Нажмите Стек запуска Кнопка для создания стека.
- На Создать стек выберите страницу Следующая.
- На Укажите детали стека страницу, укажите имя для своего стека и оставьте остальные параметры по умолчанию, затем выберите Следующая.
- На Настроить параметры стека страницу, оставьте параметры по умолчанию и нажмите Следующая.
- На Страница обзора, выберите
- Я признаю, что AWS CloudFormation может создавать ресурсы IAM с пользовательскими именами
- Я понимаю, что для AWS CloudFormation может потребоваться следующая возможность: CAPABILITY_AUTO_EXPANDфлажки и выберите Отправить.
Шаблон сгенерирует пять стеков.
Как только состояние стека CREATE_COMPLETE, перейдите к консоли Amazon Redshift Serverless. Это новая возможность, которая упрощает выполнение аналитики в облаке с высокой производительностью в любом масштабе. Просто загрузите свои данные и начните запрашивать. Нет необходимости настраивать и управлять кластерами.
Внимание: схема интеграции Amazon Redshift и RStudio в Amazon SageMaker, показанная в этом блоге, будет одинаковой независимо от схемы развертывания Amazon Redshift (бессерверный или традиционный кластер).
Загрузка данных в Amazon Redshift Serverless
Сценарий CloudFormation создал базу данных с именем sagemaker
. Давайте заполним эту базу данных таблицами для запросов пользователя RStudio. Создайте вкладку редактора SQL и убедитесь, что sagemaker
выбрана база данных. Мы будем использовать синтетические данные о транзакциях по кредитным картам для создания таблиц в нашей базе данных. Эти данные являются частью примеров наборов табличных данных SageMaker. s3://sagemaker-sample-files/datasets/tabular/synthetic_credit_card_transactions
.
Мы собираемся выполнить следующий запрос в редакторе запросов. Это создаст три таблицы, карты, транзакции, и пользователей.
Вы можете убедиться, что запрос выполнен успешно, увидев три таблицы на левой панели редактора запросов.
После заполнения всех таблиц перейдите в SageMaker RStudio и запустите новый сеанс с базовым образом RSession на экземпляре ml.m5.xlarge.
После запуска сеанса мы запустим этот код, чтобы создать подключение к нашей базе данных Amazon Redshift Serverless.
Для просмотра таблиц в синтетической схеме вам потребуется предоставить доступ в Amazon Redshift через редактор запросов.
Студио Коммутация панель должна показывать sagemaker
база данных с синтетической схемой и таблицами карт, транзакций, пользователей.
Вы можете щелкнуть значок таблицы рядом с таблицами, чтобы просмотреть 1,000 записей.
Примечание. Мы создали предварительно созданный файл R Markdown со всеми предварительно созданными блоками кода, которые можно найти в проекте. Репо GitHub.
Теперь воспользуемся DBI
функция пакета dbListTables()
для просмотра существующих таблиц.
Используйте dbGetQuery() для передачи SQL-запроса в базу данных.
Мы также можем использовать dbplyr
и dplyr
пакеты для выполнения запросов в базе данных. Давайте count()
сколько транзакций в таблице транзакций. Но сначала нам нужно установить эти пакеты.
Использовать tbl()
функцию при указании схемы.
Давайте запустим подсчет количества строк для каждой таблицы.
Итак, у нас 2,000 пользователей; 6,146 24,386,900 карт; и XNUMX XNUMX XNUMX транзакций. Мы также можем просматривать таблицы в консоли.
transactions_tbl
Мы также можем посмотреть, что dplyr
глаголы делают под капотом.
Давайте наглядно изучим количество транзакций по годам.
Мы также можем суммировать данные в базе данных следующим образом:
Предположим, мы хотим просмотреть мошенничество с использованием информации о карте. Нам просто нужно объединить таблицы, а затем сгруппировать их по атрибуту.
Теперь давайте подготовим набор данных, который можно использовать для машинного обучения. Давайте отфильтруем данные транзакций, чтобы включить только кредитные карты Discover, сохранив при этом только подмножество столбцов.
А теперь давайте проведем чистку, используя следующие преобразования:
- Конвертировать
is_fraud
в бинарный атрибут - Удалить строку транзакции из
use_chip
и переименуйте его в тип - Объедините год, месяц и день в объект данных
- Удалить $ из суммы и преобразовать в числовой тип данных
Теперь, когда мы отфильтровали и очистили наш набор данных, мы готовы собрать этот набор данных в локальную оперативную память.
Теперь у нас есть рабочий набор данных, чтобы приступить к созданию признаков и подгонке моделей. Мы не будем рассматривать эти шаги в этом блоге, но если вы хотите узнать больше о построении моделей в RStudio на SageMaker, обратитесь к Анонс полностью управляемой RStudio на Amazon SageMaker для специалистов по данным.
уборка
Чтобы очистить любые ресурсы и избежать повторяющихся расходов, удалите корневой шаблон CloudFormation. Также удалите все созданные монтирования EFS и все созданные корзины и объекты S3.
Заключение
Анализ данных и моделирование могут быть сложными при работе с большими наборами данных в облаке. Amazon Redshift — это популярное хранилище данных, которое помогает пользователям выполнять эти задачи. RStudio, одна из наиболее широко используемых интегрированных сред разработки (IDE) для анализа данных, часто используется с языком R. В этой записи блога мы показали, как совместно использовать Amazon Redshift и RStudio в SageMaker для эффективного анализа больших наборов данных. Используя RStudio в SageMaker, пользователи могут воспользоваться преимуществами полностью управляемой инфраструктуры, управления доступом, работы в сети и безопасности SageMaker, а также упростить интеграцию с Amazon Redshift. Если вы хотите узнать больше о совместном использовании этих двух инструментов, ознакомьтесь с другими статьями и ресурсами нашего блога. Вы также можете сами попробовать использовать RStudio в SageMaker и Amazon Redshift и посмотреть, как они могут помочь вам в анализе данных и задачах моделирования.
Пожалуйста, оставьте свой отзыв в этом блоге или создайте запрос на вытягивание на GitHub.
Об авторах
Райан Гарнер является специалистом по данным в AWS Professional Services. Он увлечен тем, что помогает клиентам AWS использовать R для решения своих проблем с наукой о данных и машинным обучением.
Радж Патхак является старшим архитектором решений и технологом, специализирующимся на финансовых услугах (страхование, банковское дело, рынки капитала) и машинном обучении. Он специализируется на обработке естественного языка (NLP), больших языковых моделях (LLM) и проектах инфраструктуры и операций машинного обучения (MLOPs).
Адити Раджниш учится на втором курсе по разработке программного обеспечения в Университете Ватерлоо. Ее интересы включают компьютерное зрение, обработку естественного языка и граничные вычисления. Она также увлечена общественной деятельностью STEM и защитой интересов. В свободное время она занимается скалолазанием, игрой на пианино или учится печь идеальные лепешки.
Сайтея Пуди работает архитектором решений в AWS в Далласе, штат Техас. Он работает в AWS уже более 3 лет, помогая клиентам раскрыть истинный потенциал AWS, будучи их доверенным консультантом. Он имеет опыт разработки приложений, интересуется наукой о данных и машинным обучением.
- AI
- ай искусство
- генератор искусств ай
- искусственный интеллект
- Амазонка Redshift
- Создатель мудреца Амазонки
- искусственный интеллект
- сертификация искусственного интеллекта
- искусственный интеллект в банковском деле
- робот с искусственным интеллектом
- роботы с искусственным интеллектом
- программное обеспечение искусственного интеллекта
- Машинное обучение AWS
- блокчейн
- конференция по блокчейну
- Coingenius
- разговорный искусственный интеллект
- криптоконференция ИИ
- дал-и
- глубокое обучение
- Эксперт (400)
- google ai
- обучение с помощью машины
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платон игра
- ПлатонДанные
- платогейминг
- масштаб ай
- синтаксис
- Технические инструкции
- зефирнет