Новая свободная кластерная СУБД Postgres-XL
16 мая 2014 года
Компания TransLattice, специализирующаяся на управлении географически распределёнными системами хранения данных, анонсировала новую СУБД Postgres-XL, основанную на технологиях PostgreSQL и позиционируемую для создания кластерных систем как для обработки транзакций в реальном времени (OLTP), так и для создания крупных баз для анализа больших наборов данных (решения для бизнес-аналитики). Код СУБД Postgres-XL распространяется под свободной лицензией Mozilla Public License 2.0.
Postgres-XL полностью соответствует требованиям ACID (атомарность, согласованность, изолированность, надежность) на уровне всего кластера, предоставляет методы массивной параллельной обработки данных (MPP, Massively Parallel Processing) и поддерживает механизм многоверсионности для обеспечения одновременного конкурентного доступа к БД ( MVCC). По своей структуре кластер Postgres-XL состоит из балансировщика нагрузки, узла управления глобальными транзакциями, узлов координации выполнения запросов и узлов хранения данных (используется распределённая модель хранения, при которой каждый узел хранит и обрабатывает отдельную порцию данных).
Postgres-XL поддерживает модель разграничения доступа, позволяющую организовать в рамках одного кластера несколько виртуальных СУБД, закреплённых за разными арендаторами (Multi-tenant). При этом Postgres-XL поддерживает большинство штатных возможностей PostgreSQL и позволяет использовать SQL и техники NoSQL (например, хранения данных в формате JSON и hstore) для формирования запросов, охватывающих данные на всех узлах кластера. В качестве одного из применений Postgres-XL также отмечается плавный перевод обособленных серверов PostgeSQL, которым перестало хватать мощности оборудования, на кластерную архитектуру, при которой тот же набор данных обслуживается несколькими узлами. При необходимости наращивания размера базы или при увеличении нагрузки достаточно подключить новые узлы в кластер. Система обеспечивает почти линейную масштабируемость.
С кластером Postgres-XL могут работать как приложения с большой интенсивностью записи, так и программы, в которых преобладают операции чтения. При записи данные равномерно распределяются по разным узлам хранения, что позволяет более эффективно использовать кэширование и распределять нагрузку и при чтении. Для обеспечения отказоустойчивости предоставлена возможность развётывания запасных узлов (slave), которые обеспечат дублирование данных и примут нагрузку в случае выхода из строя основного узла (автоматическая подмена узлов не поддерживается из коробки и требует применения отдельных решений, таких как Corosync/Pacemaker).
В качестве основы Postgres-XL выступил основанный на PostgeSQL 9.2 коммерческий продукт StormDB, перешедший в руки TransLattice после покупки одноимённой компании. StormDB, в свою очередь, основан на открытом проекте Postgres-XС и развивается разработчиками, ранее вовлечёнными в проекты Postgres-XC и Stado. Postgres-XL отличается от Postgres-XC иной философией и целями развития, в рамках которых стабильность, корректность и производительность ставятся выше функциональности. Postgres-XL также включает в себя дополнительные средства для повышения производительности и безопасности, такие как MPP-параллелизм и расширенная модель разграничения доступа, и охватывает область применения обработки больших объёмов данных, в то время как Postgres-XC в основном нацелен на OLTP.
Источники
правитьЛюбой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.