Хотите поместить больше данных в свою базу данных?

    0
    1


    Рекламная функция В этом году DynamoDB от Amazon исполняется одиннадцать лет. База данных NoSQL продолжает обслуживать десятки тысяч клиентов большими объемами данных с малой задержкой благодаря высокой производительности пары ключ-значение и масштабируемой архитектуре. До недавнего времени клиенты, желающие воспользоваться его скоростью и емкостью, имели только одну основную проблему: как легко перенести свои данные в DynamoDB.

    В августе прошлого года эта проблема была решена с запуском новой функции, упрощающей импорт данных из Amazon S3 в таблицы DynamoDB. Новая функция массового импорта была специально разработана, чтобы предложить более простой способ импорта данных в DynamoDB в масштабе, минимизируя затраты и сложность для пользователей, поскольку не требует написания кода или управления инфраструктурой.

    Жизнь до массового импорта

    До того, как была введена функция массового импорта, импорт данных из S3 в DynamoDB требовал дополнительных ручных операций и сложного управления пропускной способностью и повторными попытками. Клиентам приходилось писать собственные скрипты с помощью Amazon EMR или использовать AWS Glue для интеграции данных, что требовало компромиссов между стоимостью и производительностью. Эти подходы требовали обработки десериализации, управления пропускной способностью и устранения потенциальных сбоев из-за превышения доступных единиц емкости записи (WCU).

    Массовый импорт DynamoDB из S3 решает все эти проблемы, автоматизируя весь процесс для клиента, — говорит Шахзеб Фаррух, старший менеджер по продуктам в AWS.

    «Мы слышали от клиентов, что им нужен более простой и быстрый способ массовой загрузки данных в таблицы DynamoDB. Они также хотели сделать это экономически эффективным», — объясняет он. «Это полностью управляемое решение одним щелчком мыши. Оно помогает устранить основные проблемы, связанные с импортом данных из S3».

    Система массового импорта поддерживает три типа файлов: CSV, JSON и разработанный Amazon язык сериализации данных под названием ION, который является надмножеством JSON. Клиенты могут сжать эти файлы с помощью GZIP или ZSTD, если они того пожелают (хотя услуга основана на несжатом размере).

    Клиентам нужно сделать совсем немного, кроме как определить свои первичные ключи и ключи сортировки. Они активируют импорт либо из Консоли управления AWS, либо из интерфейса командной строки AWS (CLI), либо через AWS SDK. Они выбирают входной файл и задают окончательный режим емкости и параметры единицы емкости для новых таблиц DynamoDB. Затем система автоматически форматирует данные в этих файловых форматах для DynamoDB, создавая новую таблицу для импорта.

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

    Под капотом

    При создании функции импорта AWS понимает наборы данных и оптимизирует распределение, чтобы обеспечить максимально возможную производительность импорта. По словам представителей AWS, все это происходит «под капотом», и заказчику не нужно об этом беспокоиться.

    Сервис создает три основных преимущества для клиентов: удобство, скорость и более низкая стоимость, — добавляет Фаррух. Это избавляет клиента от необходимости создавать собственный загрузчик, а это означает, что он может применить свои технические навыки в другом месте. Это может сократить драгоценное время процесса установки.

    AWS автоматически управляет пропускной способностью для пользователей, решая проблему пропускной способности таблицы. Клиентам больше не нужно беспокоиться о количестве WCU, которые они используют в секунду, им не нужно писать собственный код для регулирования емкости таблицы или платить больше за емкость по требованию. Вместо этого они просто выполняют задание и платят фиксированную плату в размере 0,15 доллара США за гигабайт импортированных данных, объясняет Фаррух.

    Это не только делает цены более предсказуемыми для клиентов, но и экономит их деньги. «Мы специально установили цену, чтобы она была простой», — говорит он. «Это также стоит довольно дешево по сравнению с другими вариантами, доступными сегодня».

    AWS проанализировала стоимость импорта 381 ГБ данных, содержащих сто миллионов записей. Было подсчитано, что импорт без использования массового импорта S3 с использованием емкости по требованию будет стоить 500 долларов. Использование выделенной емкости сократит эту сумму до 83 долларов. Использование функции массового импорта сократило ее до 28 долларов, а также избавило от связанных с этим головных болей при настройке.

    Варианты использования, нуждающиеся в поддержке

    Какие потенциальные приложения может использовать этот сервис? Фаррух выделяет три основные возможности. Первый — миграционный. AWS сотрудничает с клиентами, переносящими данные из других баз данных, таких как MySQL или базы данных NoSQL, такие как MongoDB. Фаррух отмечает, что создание новых таблиц для импортируемых данных с помощью функции массового импорта особенно полезно в этом контексте. Массовый импорт переносит исторические данные в новую таблицу DynamoDB, запуская процесс. Затем клиенты могут установить конвейеры для регистрации любых изменений данных в исходной базе данных во время миграции. По словам Фарруха, эта функция значительно упрощает процесс миграции.

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

    В ноябре 2020 года AWS представила возможность массового экспорта данных из DynamoDB в S3. До этого клиентам приходилось использовать функцию конвейера данных AWS или EMR для передачи своих данных из базы данных NoSQL в хранилище S3 или полагаться на настраиваемые решения на основе DynamoDB Streams. Функция массового экспорта позволяет клиентам экспортировать данные в Amazon S3 в формате DynamoDB JSON или в расширенной альтернативе Amazon ION на основе JSON. Клиенты могут выбрать экспорт данных за любой момент за последние 35 дней с детализированными временными интервалами в секунду. Как и функция массового импорта, функция экспорта не использует WCU или RCU и работает независимо от емкости таблицы DynamoDB клиента.

    Пополнение озера данных

    Фаррух предполагает, что клиенты могут использовать эти данные для «пополнения озера данных» для последующих аналитических приложений. Однако он также может способствовать рабочему процессу копирования базы данных, поскольку функция массового импорта завершает этот процесс. Фаррух подчеркивает, что экспортированные данные должны использоваться непосредственно для процесса импорта без каких-либо модификаций.

    Третий вариант использования, привлекший внимание, включает использование функции массового импорта для загрузки моделей машинного обучения в DynamoDB. Это оказывается ценным, когда модель должна обслуживаться с малой задержкой. Фаррух предполагает, что клиенты будут использовать это для целей вывода, используя модели данных для выявления закономерностей в новых данных для приложений на базе ИИ.

    Добавляя функцию массового импорта в DynamoDB, AWS позволяет клиентам более легко вводить дополнительные данные в этот механизм обработки больших объемов данных с малой задержкой. Это может побудить больше пользователей изучить DynamoDB, которая предлагает задержку в одну миллисекунду, что делает ее подходящей для интернет-приложений, которые могут беспрепятственно обслуживать сотни тысяч пользователей.

    Таким образом, возможность быстро, без усилий и по доступной цене заполнять DynamoDB данными S3 может помочь значительно изменить внедрение, предоставив то, что для многих станет очень востребованной функцией.

    При поддержке AWS.

    Предыдущая статьяvivo Дебют X Fold2 и X Flip с Snapdragon Чипсеты серии 8 и Zeiss
    Следующая статьяЗарядите свой электромобиль за 2 минуты с помощью этих новых терминалов!
    Виктор Попанов
    Эксперт тестовой лаборатории. Первый джойстик держал в руках в возрасте 3 лет. Первый компьютер, на котором „работал” был с процессором Intel i386DX-266. Тестирует оборудование для издания ITBusiness. Будь то анализ новейших гаджетов или устранение сложных неполадок, этот автор всегда готов к выполнению поставленной задачи. Его страсть к технологиям и приверженность качеству делают его бесценным помощником в любой команде.