войти зарегистрироваться

PostgreSQL whois

индекс
95,14

В ожидании 9.0: NOTIFY/LISTEN

Люди, внимательно следящие за новинками в мире PostgreSQL, не по наслышке знакомы с блогом Хуберта 'depesz' Любашевского. А циклы его постов «Waiting for X.X» — настоящий кладезь полезной информации.

Не забыл он и про предстоящий релиз. На его блоге уже присутствуют 34 поста из цикла «Waiting for 9.0». Казалось бы, что угнаться за братом-поляком не представляется возможным. Но в очередной раз просматривая заметки к релизу, я обнаружил ценное нововведение, обделенное вниманием. А именно новую реализацию LISTEN/NOTIFY механизма.

8.5 превращается в элегантный…

В попытке предвосхитить обычно бесконечные дисскусии о том, как должна быть пронумерована следующая версия PostgreSQL, ведущая группа разработчиков обсудила этот вопрос. После «продолжительных» прений, затянувшихся буквально на пару минут, было решено, что следующий релиз будет отмечен как…

Физика высоких температур

Все уже наверняка обратили внимание, что в PostgreSQL 8.4 появился новый режим работы базы данных: Warm standby. При нём во время работы базы данных Write-Ahead логи (WAL) транслируются на подчинённую базу данных, на которой в реальном времени применяются, как если бы это происходило на основной системе. Поэтому, если основная база данных по какой-то причине (молния/торнадо/третья мировая война/другие стихийные бедствия) выйдет из строя, можно будет мгновенно переключиться на подчинённую базу данных (данные в которой будут достаточно актуальны по сравнению с основной базой) и использовать её дальше.
Но, к сожалению, «тёплый стэндбай» подразумевает, что на подчинённой системе непрерывно происходит процесс восстановления базы данных; из чего следует, что пока основная база жива, подчинённой базой пользоваться нельзя.
Если вы читаете хотя бы блог depesz (не говоря уже про коммит-логи), то вы уже знаете, к чему я веду; если же нет, то… 19-го декабря прошлого года в разрабатываемую версию PostgreSQL 8.5 была добавлена функциональность Hot standby. Теперь, при настройке репликации WAL, подчинённая база данных тоже может использоваться для запросов SELECT (и только SELECT, по понятным причинам). Если раньше второй сервер со второй базой данных простаивал в ожидании форс-мажора, и админу приходилось краснеть перед менеджерами при вопросах об эффективности использования оборудования — то теперь этот сервер, при правильном построении логики приложений, поможет разгрузить основную базу данных.
Подробности о функционировании Hot standby можно прочитать в соответствующей статье из документации разрабатываемой версии PostgreSQL.

Раздача лицензий на Database Designer for PostgreSQL

Первые восемь миллиардов лицензий на MicroOLAP Database Designer for PostgreSQL, запрошенных до 8 утра 31 декабря 2009 со ссылкой на этот пост, раздаются бесплатно.

Количество лицензий ограничено, поторопитесь.

Триграммный индекс или «Поиск с опечатками»

Как-то по долгу службы появилась необходимость добавить к поиску на сайте всем известную фичу, сервис «Возможно вы имели в виду…» или «Поиск с опечатками». Стали думать как реализовывать. Сторонние сервисы и api использовать не хотелось, ибо время до чужого сервера и назад, да и в целом не очень хорошо. Как раз кстати пришелся модуль pg_trgm, который ищет близкие к запросу слову на основе триграммного индекса.

PostgreSQL и Vista

На домашнем ноуте стоит Виста. И я бы не сказала, чтобы она меня не устраивала, она мне нравится. Сейчас бы возможно и поставила Семерку, но Виста лицензионная и сносить ее не хочу. Но очень часто сталкиваюсь с проблемой установки всяких программок до сих пор.
Вот и сейчас столкнулась с ошибкой при установке последней версии PostgreSQL — «database cluster initialization failed».
Полазила по англоязычным форумам, потому что в русскоязычных ничего хорошего не нашла. Видимо, не так много извращенцев, которые хотят поставить Postgre на Висту))).
Вообщем, установила так — в процессе установки создается пользователь postgres. И как только он создался (установка еще идет), надо успеть до окончания установки дать этому пользователю полный доступ к папке, куда ставится postgree. ))) Поставить смогла только таким образом.

Возможно есть и другие способы, но я об этом незнаю.

Поддержка версий PostgreSQL

Разработчики PostgreSQL собираются полностью поддерживать мажорный релиз в течении пяти лет.

По истечении периода поддержки, мы можем (на наше усмотрение) продолжить применять критические исправления. Формально ни релизов, ни инсталляционных пакетов производиться не будет, но обновленный исходный код будет доступен через систему контроля версий.

В редких случаях поддержка версии может быть прекращена досрочно. Например, из-за серьезной ошибки, которая не может быть исправлена в текущей мажорной версии без потерь совместимости или без существенного риска для стабильности кода.

Таблица поддержки версий


Версия Окончание поддержки
PostgreSQL 7.4 Июль 2010 (продлено)
PostgreSQL 8.0 Июль 2010 (продлено)
PostgreSQL 8.1 Ноябрь 2010
PostgreSQL 8.2 Декабрь 2011
PostgreSQL 8.3 Февраль 2013
PostgreSQL 8.4 Июль 2014


Примечание: Версии 8.1 и ниже не поддерживаются для платформы Windows.

Указание Windows путей в выражениях PostgreSQL

Не так уж и много выражений существует в диалекте SQL от Postgres'а, требующих в качестве аргумента путь файловой системы. С ходу могу назвать пару:
  • CREATE TABLESPACE…
  • CREATE FUNCTION… (в случае динамической загрузки функций на языке C)

Распараллеливание длительных операций

Мне часто приходится сталкиваться с задачами, требующими от базы данных очень большой производительности при обработке больших массивов данных. Сегодня я расскажу об очень простом, но действенном приеме, который может вас выручить, если база уже не поспевает за тем количеством данных, которые скапливаются и должны быть обработаны. Метод не зависит от базы данных, но по привычке публикую в блог PostgreSQL, и пример будет именно на ней. Давайте сразу перейдем к примеру.