Что такое PostgreSQL?

PostgreSQL Источник: Postgres ProfessionalАвтор Иван Панченко

PostgreSQL1 – это свободно распространяемая объектно-реляционная система управления базами данных (СУБД). PostgreSQL разрабатывается международным сообществом разработчиков и не контролируется ни одной компанией и ни одним частным лицом. PostgreSQL распространяется по крайне свободной лицензии (близкой к BSD), которая позволяет включать его в состав коммерческих программных продуктов.

PostgreSQL (тогда он назывался Postgres) создавался и изначально развивался 1980х гг в научном сообществе – в университете Беркли в Калифорнии. Для его основоположника и идеолога - Майкла Стоунбрейкера, ставшего впоследствие лауратом премии Тюринга, Postgres был исследовательским проектом, на котором опробовались концепции СУБД-строения. В его основу изначально был заложен принцип расширяемости, который наряду с другими хорошо продуманными инженерными решениями позволил Postgres'у развиваться в течение многих лет, и занять лидирующее положение среди своободно распространяемых СУБД. В 1990х годах в Postgres появилась поддержка языка SQL, и он получил свое нынешнее название – PostgreSQL. И уже тогда в PostgreSQL появился российский вклад – одним из четырех ключевых разработчиков стал Вадим Михеев из Красноярска, разработавший такие фундаментальные компоненты, как многоверсионную систему управления транзакциями (MVCC), механизм обеспечения целостности данных (WAL), триггеры и подзапросы.

С тех пор PostgreSQL непрерывно развивался. В нем одновременно росла производительность, совершенствовался уровень поддержки стандартного SQL (ANSI SQL 1992,1999, 2003, 2011), и развивались нестандартные возможности – расширяемость, массивы, слабоструктурированные данные, полнотекстовый поиск. В последние годы активно развивается функциональность, необходимая для использования PostgreSQL в крупных промышленных системах – репликация (в т.ч. двунаправленная), масштабируемость, мониторинг, средства интеграции и миграции. Существенный вклад в развитие PostgreSQL сделан российской командой разработчиков – Олегом Бартуновым, Федором Сигаевым и Александром Коротковым. 

На текущий момент PostgreSQL считается наиболее совершенной из свободно распространяемых СУБД, и конкурирует с лучшими из коммерческих СУБД – Oracle, Microsoft SQL Server, DB/2.2 Он активно используется в крупнейших государственных и частных организациях по всему миру, и популярность его растет. В числе пользователей PostgreSQL корпорации Sony, Hitachi, Huawei, Yahoo, и многие другие. На основе PostgreSQL были построены такие интернет-гиганты, как Skype и Instagram. Применяется PostgreSQL и в Яндексе и Mail.Ru. В последнее время к PostgreSQL стали проявлять интерес и банки – а частности, бразильский банк Caixa Economica Federal.

Во всем мире многие организации, использующие коммерческие СУБД, выбирают PostgreSQL и мигрируют на него, поскольку при меньших затратах он обеспечивает требуемое качество. По подсчетам компании EnterpriseDB, эксплуатационные расходы в 2 раза ниже, чем для Oracle, при полном отсутствии лицензионных платежей. Например, во Франции на PostgreSQL мигрировали национальный фонд семейных пособий CNAF (БД которого обслуживает миллиард запросов в сутки), национальная метеослужба и крупнейшая система частных объявлений leboncoin.

Благодаря развитой системе пространственного поиска PostgreSQL является почти общепринятым лидером в области СУБД для геоинформационных и картографических систем. Он используется, например, в OpenStreetMap и российской системе Дубль-Гис.

Долгое время организованного продвижения PostgreSQL в России не было, но тем менее, на чистом энтузиазме PostgreSQL приобрел большую популярность. Однако отсутствие официальной компании-вендора, обеспечивающей техническую поддержку PostgreSQL на любом уровне, мешало применению PostgreSQL во многих крупных и ответственных системах. Сейчас такая компания есть – это созданное в начале 2015 года ООО “Постгрес Профессиональный”.

В России в наше время, как по политическим, так и по чисто экономическим причинам, остро стоит вопрос импортозамещения. PostgreSQL, по нашему твердому мнению, является наилучшим кандидатом на замещение импортных СУБД по следующим причинам:

- Одна из наиболее распространённых СУБД в мире, обладающая большой экосистемой.

- Распространяется по открытой BSD-подобной лицензии.

- Это полнофункциональная СУБД общего назначения, пригодная для широкого круга решаемых задач.

- Существенный российский вклад и задел, развитое сообщество3.

PostgreSQL позволяет решить проблему импортозамещения без изоляции от мировой технической мысли, напротив, укрепляя позиции российских разработчиков на мировом рынке.

Будучи качественным продуктом, находящимся на передовом уровне развития, PostgreSQL может стать основой для роста отечественной отрасли СУБД-строения, включающей самовоспроизводящуюся экосистему прикладных и фундаментальных разработчиков, науки и образования.

 

1 - Произносится Постгр'ескъюэл, или П'остгрес

2 - Функциональное стравнение см. http://sql-workbench.net/dbms_comparison.html

3 - Российская конференция PgConf.Russia 2015 (февраль 2015 г) собрала более 450 человек и стала крупнейшим в мире форумом сообщества PostgreSQL.