AWS представил новый проект ExtendDB, который позволяет разработчикам использовать API DynamoDB с различными хранилищами данных, начав с PostgreSQL. Это открытое решение поддерживает существующие AWS SDK и инструменты без необходимости модификации, что дает командам большую гибкость в работе с данными.
Что такое ExtendDB
На данный момент ExtendDB находится на версии 0.1 и реализует API управления и передачи данных DynamoDB, включая поддержку таблиц, элементов и потоков. Его основным хранилищем является PostgreSQL, однако адаптер может быть расширен новыми бэкендами благодаря своей разъемной архитектуре. Такое решение может успешно применяться на локальных серверах для разработки, тестирования и запуска рабочих нагрузок, совместимых с DynamoDB.
Технические детали и требования
ExtendDB написан на языке Rust и работает как единый бинарный файл без внешних зависимостей на выполнение. Он требует установки TLS с самоподписанным сертификатом и поддерживает аутентификацию SigV4 через локальное хранилище учетных данных, что совместимо с обычными рабочими процессами подписи DynamoDB. Особая архитектура ExtendDB позволяет добавлять другие бэкенды, такие как Apache Cassandra или MySQL, не изменяя основной адаптер.
Польза для российских разработчиков
Для команд разработки в России ExtendDB может стать удобным инструментом для миграции существующих приложений с DynamoDB на локальные серверы. Отсутствие необходимости изменения кода при использовании PostgreSQL значительно экономит время и ресурсы. Однако стоит учитывать, что в текущей версии адаптер может показывать увеличенное время отклика под нагрузкой, что необходимо оценить при планировании использования для производственных задач.
Дальнейшие обновления ExtendDB обещают улучшить производительность и расширить функционал, что сделает его более конкурентоспособным на рынке решений для работы с NoSQL базами данных.