Рекламный Помните, когда программное обеспечение с открытым исходным кодом было кустарным промыслом? Эти времена давно прошли. Программное обеспечение, выпущенное под лицензией с открытым исходным кодом, в настоящее время работает на большей части Интернета, и пользователи баз данных также заинтересованы в этой модели.
Механизмы баз данных с открытым исходным кодом обогнали по популярности проприетарные системы. Десять лет назад, по данным службы мониторинга ранжирования DB Engines, рейтинг популярности баз данных с открытым исходным кодом составлял около 35 процентов по сравнению с проприетарными системами. Сегодня он составляет немногим более 50 процентов.
AWS поддерживает предложения баз данных SQL с открытым исходным кодом с момента запуска Amazon Relational Database Service (Amazon RDS) в 2009 году. Этот первый сервис был построен на MySQL, и с тех пор компания развернула больше предложений с открытым исходным кодом как для управляемого SQL, так и для NoSQL-сервисы. Помимо поддержки коммерческих ядер баз данных, Amazon RDS также запустила поддержку PostgreSQL в 2013 году и MariaDB двумя годами позже.
С помощью этих сервисов он предлагает своим клиентам свободу развертывания своих приложений так, как они хотят, предоставляя им уникальную комбинированную ценность инноваций с открытым исходным кодом и автоматизации AWS.
Свобода действий
Базы данных с открытым исходным кодом поддерживают многие из тех же вариантов использования, что и их коммерческие аналоги, — объясняет Энди Кац, главный менеджер по продуктам в AWS. Благодаря структуре реляционной базы данных реализация с открытым исходным кодом освобождает клиентов от того, что Кац описывает как громоздкие процессы закупок, которые часто мешают соглашениям о коммерческом программном обеспечении. Некоторые проприетарные поставщики предлагают печально известные сложные лицензионные соглашения, которые становятся еще более запутанными при работе в виртуальных средах, и они очень агрессивно относятся к их соблюдению. С открытым исходным кодом клиентам не нужно прочесывать сложные юридические контракты для косвенных ограничений использования и страдать от трудоемких проверок.
Помимо того, что вы избегаете бремени лицензирования и аудита, связанного с использованием коммерческой базы данных, использование предложения с открытым исходным кодом также имеет большое значение, когда речь идет о доступе к последним инновациям и наиболее полному набору автоматизированных возможностей.
«Открытый исходный код предоставляет пользователям отличный базовый набор возможностей, и, опираясь на эту инновацию, AWS может значительно улучшить безопасность базы данных, производительность, масштабируемость, надежность, согласованность, доступность и валюту — больше, чем клиенты могут легко достичь самостоятельно. ,” он говорит. «Мы можем сделать это отчасти потому, что мы, как и все остальные, можем заглянуть в код и понять, что происходит».
Обновление баз данных для Amazon Aurora MySQL-Compatible Edition, RDS для MySQL и RDS для MariaDB, например, стало более безопасным, простым и быстрым благодаря недавнему внедрению Amazon RDS Blue/Green. Благодаря сине-зеленым развертываниям клиенты могут всего несколькими щелчками мыши создать управляемую промежуточную среду, отражающую их производственную среду. Затем они могут вносить свои изменения в промежуточную среду, тестировать эти изменения и продвигать промежуточную среду в рабочую среду всего за минуту. В процессе продвижения Blue/Green Deployments использует встроенные барьеры переключения, чтобы защитить продвижение своей зеленой среды в рабочую среду. Эти защитные барьеры отменяют их переключение, если они обнаруживают ошибки репликации, сбои работоспособности экземпляра и т. д.
Возможность автоматизации этих важных задач является ключевым фактором в принятии клиентами управляемых баз данных с открытым исходным кодом. Внедрение ядра базы данных собственными силами может оказаться громоздким процессом, требующим множества манипуляций для создания высокодоступных систем с надлежащими исправлениями и резервными копиями. Облачный уровень позволяет клиентам гибко использовать свои вычислительные ресурсы, отражая интенсивность рабочей нагрузки способами, которые были бы коммерчески невыгодны внутри компании. По словам Каца, в сочетании с внутренними возможностями, предоставляемыми AWS, продукты баз данных с открытым исходным кодом обеспечивают более высокую устойчивость, производительность и гибкость, а также повышают производительность разработчиков и администраторов баз данных.
Свобода сотрудничества
Компания также занята предоставлением новых возможностей сообществам баз данных с открытым исходным кодом. Примером этого является новый проект с открытым исходным кодом Trusted Language Extensions (TLE) для PostgreSQL. Обширная библиотека из тысяч расширений — ключ к универсальности PostgreSQL. Однако использование расширений сопряжено с определенным риском, поскольку расширения имеют доступ к базовой файловой системе. TLE дает клиентам возможность самостоятельного тестирования, сертификации и курирования интересующих их расширений, включая расширения, которые они сами пишут. TLE поддерживает популярные языки программирования, которые нравятся пользователям, включая JavaScript, Perl, PL/pgSQL и совсем недавно Rust.
В течение 2022 года AWS подтверждала свою приверженность открытому исходному коду, участвуя в ряде проектов баз данных с открытым исходным кодом, включая PostgreSQL, MySQL, MariaDB и Redis.
Например, в этом году он обновил популярный плагин аудита MariaDB, чтобы он был совместим с версиями MySQL 5.7 и 8.0. Этот новый код регистрирует действия базы данных, такие как вход пользователей в систему и запросы, что полезно в целях безопасности и соответствия требованиям. AWS сделала этот обновленный код открытым, а также сделала его доступным в Amazon RDS для MySQL.
«Мы также делаем большие инвестиции в PostgreSQL, например, улучшаем возможности логической репликации, улучшаем поддержку сортировки текстовых данных и даем разработчикам возможность создавать расширения, которые настраивают процесс архивирования данных», — говорит Кац. AWS также работает над функциями, упрощающими поддержку пользователей со сложными настройками Active Directory».
По словам Каца, компания наращивает свои возможности для внесения этих вкладов. Когда он начинался, у него была одна команда, которая занималась всем своим вкладом в открытый исходный код и обрабатывала исправления ошибок. Он начал расширять структуру своей команды разработчиков открытого исходного кода, выделяя инженеров на полный рабочий день для работы над конкретными проектами баз данных с открытым исходным кодом.
Свобода инноваций
Благодаря поддержке различных проектов с открытым исходным кодом клиенты Amazon RDS получают доступ к этим операционным усовершенствованиям, таким как Blue/Green Deployments, а также к усовершенствованиям с открытым исходным кодом, таким как TLE. Имея доступ к лучшим инновациям от AWS и своим любимым проектам, клиенты могут ускорить планирование и использование новейших технологий, доступных сегодня на рынке. Это имеет большое значение для клиентов AWS, которые адаптируют свои рабочие нагрузки к инновациям, изменяющим отрасль, таким как генеративный ИИ.
«Одной из наиболее востребованных возможностей Amazon RDS в этом году была поддержка расширения pgvector для PostgreSQL». говорит Кац. pgvector — это управляемое сообществом расширение, которое позволяет пользователям хранить вложения моделей машинного обучения или машинного обучения в своей базе данных и выполнять эффективный поиск сходства. Вложения — это числовые представления или векторы, созданные с помощью генеративного ИИ, которые фиксируют семантическое значение ввода текста в большую языковую модель или LLM.
«Это интересно для наших клиентов и более широкого сообщества PostgreSQL, потому что расширение позволяет им встраивать возможности машинного обучения в свои приложения для электронной коммерции, мультимедиа, здравоохранения и многое другое, чтобы находить похожие элементы в каталоге», — говорит Кац. «Итак, если у вас есть служба потоковой передачи, вы можете использовать pgvector, чтобы предоставить своим клиентам рекомендацию телешоу, аналогичную той, которую они только что просмотрели».
Теперь клиенты, использующие RDS для PostgreSQL версии 13.11 и выше, 14.8 и выше, 15.2 или выше, могут начать сборку с расширением. Клиенты AWS могут использовать pgvector для хранения и поиска вложений из Amazon Bedrock, полностью управляемого сервиса, который делает базовые модели от ведущих стартапов в области искусственного интеллекта и Amazon доступными через API, Amazon SageMaker и многое другое.
«Мы также активно сотрудничаем с разработчиками этого расширения, чтобы продолжать улучшать pgvector для всего сообщества PostgreSQL». — говорит Кац.
По словам Каца, помимо свободы вводить новшества в предложения с открытым исходным кодом, эти технологии позволяют клиентам AWS сочетать инновации сообществ с открытым исходным кодом со стеком AWS для доступа к улучшенному техническому опыту.
Например, AWS предоставляет пользователям, желающим использовать автоматизацию, предоставляемую Kubernetes, контроллеры AWS для Kubernetes (ACK). Этот сервис с открытым исходным кодом предоставляет набор операторов (или контроллеров) Kubernetes, которые позволяют пользователям управлять сервисами AWS непосредственно из API Kubernetes. AWS предлагает своим клиентам возможность работать на Kubernetes во всем своем портфолио с доступностью для Amazon Aurora, Amazon RDS, Amazon MemoryDB, Amazon DynamoDB и других. Каждый из этих контроллеров работает как контейнерные приложения внутри Kubernetes, и их разрешения на доступ к AWS можно точно настроить с помощью ролей IAM для сервисных учетных записей (IRSA). Пользователи ACK могут напрямую подключать приложения Kubernetes к управляемым базам данных в Amazon RDS.
Свобода от повторяющейся работы
По словам Каца, ландшафт баз данных с открытым исходным кодом резко изменился только за последние несколько лет. Концепция бесплатного программного обеспечения уже получила существенное распространение с принятием Linux и инструментов с открытым исходным кодом от таких компаний, как Apache Foundation. Это был лишь вопрос времени, когда предприятия станут более комфортно работать со своими хранилищами информации на одной и той же модели, особенно с облачными реализациями, устраняющими большую часть рутинной работы.
«Мы видели, как мир начал использовать базы данных с открытым исходным кодом, и многие крупные корпоративные клиенты теперь доверяют им», — говорит он.
Некоторые из этих предприятий включают Tonkean, которая использовала базу данных MySQL с открытым исходным кодом с другим поставщиком облачных услуг, прежде чем перейти на Amazon RDS. Компания, которая продает онлайн-интерфейс без кода для организации цепочек сложных бизнес-процессов, столкнулась с проблемами со своим существующим поставщиком. Его разработчикам пришлось выполнять слишком много сантехнических работ, чтобы обеспечить бесперебойную работу базы данных в облаке.
Tonkean перенесла свою реализацию MySQL на AWS в 2019 году, используя версию базы данных Amazon RDS с открытым исходным кодом. Реализация базы данных была такой же, но преимущество заключалось в инновациях вокруг нее. Интеграция с базовой архитектурой вычислений и хранения AWS позволила поставщику SaaS быстро настроить и использовать продукт, поддерживать его с минимальными затратами на управление и повысить производительность.
Свобода надежной работы
AWS предлагает своим клиентам ряд вариантов оптимизации рабочих нагрузок для повышения производительности. Одним из них является функция развертывания Amazon RDS в нескольких зонах доступности с двумя читаемыми резервными копиями, доступная пользователям Amazon RDS с открытым исходным кодом. Этот вариант обеспечивает конфигурацию с тремя зонами доступности для дополнительной производительности. Один содержит первичный узел, а два других содержат читаемые вторичные узлы. Преимущество здесь как в устойчивости, так и в производительности; два вторичных сервера обеспечивают лучшую защиту, а задержка фиксации при записи примерно вдвое меньше, чем в конфигурации с двумя зонами, говорит Кац.
Хотя компания предлагает некоторые готовые конфигурации «из коробки», пользователи могут настраивать детали, добавляет Кац. Они могут использовать инструмент Amazon CloudFormation, например, для масштабного развертывания своих собственных конфигураций, что позволяет им развертывать конфигурации с большим количеством операций чтения или высокой доступностью в зависимости от рабочей нагрузки.
AWS еще больше снижает нагрузку на создание производительных и масштабируемых баз данных с помощью возможности подготовки реплик чтения Amazon RDS. Это узлы, которые позволяют клиентам обслуживать несколько копий данных базы данных из разных мест. Они позволяют клиентам обрабатывать операции чтения из нескольких точек в базе данных, повышая производительность для объемных томов с интенсивным чтением. Сегодня пользователи с открытым исходным кодом могут развертывать до 15 реплик чтения на экземпляр. Механизмы Amazon RDS с открытым исходным кодом также поддерживают каскадные реплики чтения. Благодаря каскадным репликам чтения они могут масштабироваться до 255 реплик чтения без увеличения нагрузки на исходные базы данных.
Производительность — это вечно актуальная тема, гарантирующая, что у клиентов всегда будет запас для будущих требований к производительности. Помимо горизонтального масштабирования для повышения пропускной способности, AWS также инвестирует в производительность каждого экземпляра базы данных для сокращения времени отклика. Недавнее добавление оптимизированных операций записи RDS для RDS для MySQL и MariaDB и оптимизированных операций чтения, доступных для RDS для MySQL, MariaDB и PostgreSQL, являются примерами этого. Внутренние реализации операций записи и чтения недавно были улучшены, так что запись и сложные запросы могут выполняться в 2 раза быстрее.
По словам Каца, эти операционные преимущества, а также возможность наращивания емкости по запросу — то, что отличает открытый исходный код в Amazon RDS от самодельных конфигураций с открытым исходным кодом. Свободное программное обеспечение — это только часть дела; это конфигурация, управление задачами и оптимизация вокруг него, которые действительно возвращают его домой.
По мере того, как все больше компаний рассматривают базы данных с открытым исходным кодом в целом, облачные среды будут активно учитывать их в своих дорожных картах. Ввод в эксплуатацию с низким коэффициентом трения, а также управляемые операции окажутся привлекательными для многих клиентов, которым нужно что-то, что просто работает, позволяя им внедрять инновации в программном обеспечении, которые двигают их бизнес вперед.
При поддержке AWS.