Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Веб-сервіси Amazon

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Веб-сервіси Amazon

Це гостьовий пост, написаний у співавторстві з Бабу Срінівасаном з MongoDB.

Оскільки галузі розвиваються в сучасному стрімкому бізнес-ландшафті, неможливість мати прогнози в реальному часі створює значні проблеми для галузей, які сильно залежать від точної та своєчасної інформації. Відсутність прогнозів у режимі реального часу в різних галузях створює гострі бізнес-проблеми, які можуть суттєво вплинути на прийняття рішень і операційну ефективність. Без статистичних даних у реальному часі компаніям важко адаптуватися до динамічних ринкових умов, точно передбачати попит клієнтів, оптимізувати рівень запасів і приймати проактивні стратегічні рішення. Такі галузі, як фінанси, роздрібна торгівля, управління ланцюгами поставок і логістика, стикаються з ризиком втрачених можливостей, збільшення витрат, неефективного розподілу ресурсів і неможливості відповідати очікуванням клієнтів. Досліджуючи ці проблеми, організації можуть усвідомити важливість прогнозування в реальному часі та досліджувати інноваційні рішення для подолання цих перешкод, що дозволить їм залишатися конкурентоспроможними, приймати обґрунтовані рішення та процвітати в сучасному швидкоплинному бізнес-середовищі.

Використовуючи трансформаційний потенціал нативної версії MongoDB часовий ряд можливості обробки даних та їх інтеграція з потужністю Canvas Amazon SageMaker, організації можуть подолати ці виклики та розблокувати новий рівень гнучкості. Надійне керування даними часових рядів MongoDB дозволяє зберігати та отримувати великі обсяги даних часових рядів у режимі реального часу, тоді як передові алгоритми машинного навчання та можливості прогнозування забезпечують точні та динамічні моделі прогнозування за допомогою SageMaker Canvas.

У цій публікації ми дослідимо потенціал використання даних часових рядів MongoDB і SageMaker Canvas як комплексного рішення.

Атлас MongoDB

Атлас MongoDB це повністю керована платформа даних для розробників, яка спрощує розгортання та масштабування баз даних MongoDB у хмарі. Це сховище на основі документів, яке забезпечує повністю керовану базу даних із вбудованим повним текстом і вектором Пошук, підтримка Геопросторової запити, Чарти і рідна підтримка для ефективної часовий ряд можливості зберігання та запитів. MongoDB Atlas пропонує автоматичне сегментування, горизонтальну масштабованість і гнучке індексування для прийому великих обсягів даних. З-поміж усього, власні можливості часових рядів є видатною функцією, що робить його ідеальним для керування великим обсягом даних часових рядів, таких як дані критично важливих бізнес-додатків, телеметрія, серверні журнали тощо. За допомогою ефективних запитів, агрегації та аналітики компанії можуть отримувати цінну інформацію з даних із мітками часу. Використовуючи ці можливості, підприємства можуть ефективно зберігати, керувати й аналізувати дані часових рядів, що дозволяє приймати рішення на основі даних і отримувати конкурентну перевагу.

Canvas Amazon SageMaker

Canvas Amazon SageMaker – це служба візуального машинного навчання (ML), яка дає змогу бізнес-аналітикам і дослідникам обробки даних створювати та розгортати власні моделі ML, не вимагаючи жодного досвіду ML або написання одного рядка коду. SageMaker Canvas підтримує низку варіантів використання, зокрема прогнозування часових рядів, що дозволяє підприємствам точно прогнозувати майбутній попит, продажі, потреби в ресурсах та інші часові ряди даних. Сервіс використовує методи глибокого навчання для обробки складних шаблонів даних і дозволяє компаніям створювати точні прогнози навіть з мінімальними історичними даними. Використовуючи можливості Amazon SageMaker Canvas, підприємства можуть приймати обґрунтовані рішення, оптимізувати рівень запасів, підвищити ефективність роботи та підвищити рівень задоволеності клієнтів.

Інтерфейс користувача SageMaker Canvas дає змогу легко інтегрувати джерела даних із хмари чи локально, легко об’єднувати набори даних, тренувати точні моделі та робити прогнози з новими даними — і все це без програмування. Якщо вам потрібен автоматизований робочий процес або пряма інтеграція моделі ML у програми, функції прогнозування Canvas доступні через Інтерфейси.

Огляд рішення

Користувачі зберігають дані часових рядів транзакцій в MongoDB Atlas. Через Atlas Data Federation дані витягуються в сегмент Amazon S3. Amazon SageMaker Canvas отримує доступ до даних для створення моделей і прогнозів. Результати прогнозування зберігаються у відрі S3. Використовуючи сервіси MongoDB Data Federation, прогнози представлені візуально за допомогою діаграм MongoDB.

На наступній діаграмі показано запропоновану архітектуру рішення.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Передумови

Для цього рішення ми використовуємо MongoDB Atlas для зберігання даних часових рядів, Amazon SageMaker Canvas для навчання моделі та створення прогнозів і Amazon S3 для зберігання даних, отриманих із MongoDB Atlas.

Переконайтеся, що у вас є такі передумови:

Налаштувати кластер MongoDB Atlas

Створіть безкоштовний кластер MongoDB Atlas, дотримуючись інструкцій у Створіть кластер. Налаштуйте Доступ до бази даних та Доступ до мережі.

Заповніть колекцію часових рядів у MongoDB Atlas

Для цілей цієї демонстрації ви можете використати зразок набору даних із Згорнути і завантажити те саме до MongoDB Atlas за допомогою MongoDB інструменти , Переважно Компас MongoDB.

У наступному коді показано зразок набору даних для колекції часових рядів:

{ "store": "1 1", "timestamp": { "2010-02-05T00:00:00.000Z"}, "temperature": "42.31", "target_value": 2.572, "IsHoliday": false
}

На наступному знімку екрана показано зразки даних часового ряду в MongoDB Atlas:

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створіть відро S3

Створювати відро S3 в AWS, де потрібно зберігати та аналізувати дані часових рядів. Зверніть увагу, що у нас є дві папки. sales-train-data використовується для зберігання даних, отриманих з MongoDB Atlas, тоді як sales-forecast-output містить передбачення від  Canvas.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створіть об'єднання даних

Налаштуйте Федерація даних в Atlas і зареєструйте сегмент S3, створений раніше як частину джерела даних. Зверніть увагу, що три різні бази даних/колекції створюються в об’єднанні даних для кластера Atlas, сегменті S3 для даних MongoDB Atlas і сегменті S3 для зберігання результатів Canvas.

На наступних знімках екрана показано налаштування об’єднання даних.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Налаштувати службу додатків Atlas

створіть Служби додатків MongoDB для розгортання функцій для передачі даних із кластера MongoDB Atlas у сегмент S3 за допомогою $ out агрегація.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Перевірте конфігурацію джерела даних

Служби додатків створюють нове ім’я служби Altas, яке потрібно використовувати як служби даних у наступній функції. Переконайтеся, що ім’я служби Atlas створено, і запишіть його для використання в майбутньому.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створіть функцію

Налаштуйте служби програми Atlas для створення тригер і функції. Тригери повинні бути заплановані для запису даних до S3 з частотою періоду, що базується на бізнес-потребі для навчання моделей.

Наступний сценарій показує функцію для запису в сегмент S3:

exports = function () { const service = context.services.get(""); const db = service.db("") const events = db.collection(""); const pipeline = [ { "$out": { "s3": { "bucket": "<S3_bucket_name>", "region": "<AWS_Region>", "filename": {$concat: ["<S3path>/<filename>_",{"$toString": new Date(Date.now())}]}, "format": { "name": "json", "maxFileSize": "10GB" } } } } ]; return events.aggregate(pipeline);
};

Зразкова функція

Цю функцію можна запустити на вкладці «Виконати», а помилки можна налагодити за допомогою функцій журналу в службах додатків. Крім того, помилки можна налагодити за допомогою меню журналів на лівій панелі.

На наступному знімку екрана показано виконання функції разом із результатом:

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створіть набір даних в Amazon SageMaker Canvas

У наступних кроках передбачається, що ви створили домен SageMaker і профіль користувача. Якщо ви ще цього не зробили, переконайтеся, що ви налаштували Домен та профіль користувача SageMaker. У профілі користувача оновіть сегмент S3, щоб він був власним, і вкажіть ім’я сегмента.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Після завершення перейдіть до SageMaker Canvas, виберіть свій домен і профіль, а потім виберіть Canvas.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створіть набір даних, що постачає джерело даних.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Виберіть джерело набору даних як S3

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Виберіть розташування даних у сегменті S3 і виберіть Створити набір даних.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Перегляньте схему та натисніть Створити набір даних

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Після успішного імпорту набір даних з’явиться у списку, як показано на наступному знімку екрана.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Тренуйте модель

Далі ми використаємо Canvas для налаштування для навчання моделі. Виберіть набір даних і натисніть «Створити».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.
Створіть ім’я моделі, виберіть «Прогнозний аналіз» і виберіть «Створити».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Виберіть цільовий стовпець

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Потім клацніть «Налаштувати модель часових рядів» і виберіть item_id як стовпець «Ідентифікатор елемента».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Select tm для стовпця позначки часу

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Щоб указати проміжок часу, який потрібно спрогнозувати, виберіть 8 тижнів.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Тепер ви готові переглянути модель або запустити процес збірки.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

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

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Коли модель буде готова, виберіть модель і натисніть останню версію

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Перегляньте показники моделі та вплив стовпців і, якщо ви задоволені продуктивністю моделі, натисніть «Передбачити».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Далі виберіть «Пакетне прогнозування» та натисніть «Вибрати набір даних».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Виберіть набір даних і натисніть «Вибрати набір даних».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Далі натисніть «Почати передбачення».

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Спостерігайте за створеним завданням або перебігом виконання завдання в SageMaker у розділі Виведення, Завдання пакетного перетворення.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Коли завдання завершиться, виберіть завдання та запам’ятайте шлях S3, де Canvas зберігає прогнози.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Візуалізуйте прогнозні дані в Atlas Charts

Щоб візуалізувати дані прогнозу, створіть Діаграми MongoDB Atlas на основі об’єднаних даних (amazon-forecast-data) для прогнозів P10, P50 і P90, як показано на наступній діаграмі.

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Прибирати

  • Видаліть кластер MongoDB Atlas
  • Видалити конфігурацію об’єднання даних Atlas
  • Видалити Atlas Application Service App
  • Видаліть сегмент S3
  • Видалити набір даних і моделі Amazon SageMaker Canvas
  • Видалити діаграми атласу
  • Вийдіть із Amazon SageMaker Canvas

Висновок

У цій публікації ми витягли дані часових рядів із колекції часових рядів MongoDB. Це спеціальна колекція, оптимізована для зберігання та швидкості запитів даних часових рядів. Ми використовували Amazon SageMaker Canvas для навчання моделей і створення прогнозів, а також візуалізували прогнози в Atlas Charts.

Для отримання додаткової інформації зверніться до наступних ресурсів.


Про авторів

Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Ігор Алексєєв є старшим архітектором партнерських рішень в AWS у сфері даних і аналітики. У своїй ролі Ігор працює зі стратегічними партнерами, допомагаючи їм створювати складні архітектури, оптимізовані для AWS. До приходу в AWS як архітектор даних/рішень він реалізував багато проектів у сфері великих даних, зокрема кілька озер даних в екосистемі Hadoop. Як інженер з даних він брав участь у застосуванні AI/ML для виявлення шахрайства та автоматизації офісу.


Прискорення часу до аналізу за допомогою колекцій часових рядів MongoDB і Amazon SageMaker Canvas | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Бабу Шрінівасан
є старшим архітектором партнерських рішень у MongoDB. На своїй поточній посаді він працює з AWS над створенням технічної інтеграції та еталонних архітектур для рішень AWS і MongoDB. Він має понад два десятиліття досвіду роботи з базами даних і хмарними технологіями. Він захоплений наданням технічних рішень клієнтам, які працюють із кількома глобальними системними інтеграторами (GSI) у різних регіонах.

Часова мітка:

Більше від AWS Машинне навчання