Об этом проекте
Apache ShardingSphere — это проект верхнего уровня Apache, позиционируемый как «Database Plus» — стандартный и экосистемный слой, построенный поверх существующих гетерогенных баз данных, а не новая база данных сама по себе. Его цель — сделать так, чтобы несколько баз данных вели себя как одна, обеспечивая унифицированный доступ и расширенные вычислительные возможности.
Проект организован вокруг трех основных направлений: Connect (адаптация протоколов баз данных, диалектов SQL и форматов хранения), Enhance (добавление распределенных вычислений, безопасности, контроля трафика и наблюдаемости) и Pluggable (микроядро и трехслойная плагинная архитектура, которая разделяет ядро, функциональные компоненты и интеграции экосистемы).
Предлагаются два способа доступа. ShardingSphere-JDBC — это легковесный Java-фреймворк, который действует как расширенный JDBC-драйвер, подключаясь к базам данных напрямую из приложения без отдельного развертывания; он совместим с распространенными ORM-фреймворками. ShardingSphere-Proxy — это прозрачный прокси-сервер базы данных, развертываемый независимо, поддерживающий протоколы, совместимые с MySQL/PostgreSQL, что позволяет клиентам на других языках подключаться, и предоставляющий стабильную точку входа для администраторов баз данных. Оба способа могут быть развернуты независимо или в гибридном режиме с общим реестром и единой конфигурацией.
Документированные возможности включают шардирование данных (горизонтальное, вертикальное и пользовательские стратегии), разделение чтения/записи с балансировкой нагрузки и отказоустойчивостью, распределенные транзакции (XA и BASE), шифрование и маскирование данных, аудит SQL и контроль доступа, стресс-тестирование с теневой базой данных, наблюдаемость и перевод диалектов SQL между такими базами данных, как MySQL, PostgreSQL, Oracle, SQL Server и Firebird. Также описаны кластерное развертывание, интеграция с Kubernetes и мониторинг.
В README отмечается, что проект стал проектом верхнего уровня Apache в апреле 2020 года и используется многими проектами. Также предупреждается, что адаптер JDBC полагается на кэш парсинга SQL от ANTLR, который может расти при большом количестве SQL-шаблонов, поэтому следует настроить разумный размер кучи. Приведены ссылки на документацию, руководства по внесению вклада, список рассылки, проблемы на GitHub и примечания к выпускам. Версия 5.5.4-SNAPSHOT описана как находящаяся в активной разработке.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.