Рубрика «pgsql»

Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. В первой части доклада Ивана Фролкова речь шла о непоследовательном именовании, о constraints, о том, где лучше сосредоточить логику — в базе или в приложении. В этой части вас ждет разбор обработки ошибок, конкурентного доступа, неотменяемых операций, CTE и JSON.

Типичные ошибки при работе с PostgreSQL. Часть 2 - 1

Расскажу такую историю. Наш клиент говорит: «Медленно работает база, а наше приложение занимается обслуживаем населения. Мы боимся, что нас тут поднимут на вилы». Выяснилось, что у них было очень много процессов в состоянии idle in transaction. Приложение начало транзакцию, ничего не делает, но и транзакцию не завершает. Если вы взаимодействуете с какими-то внешними сервисами, то, в принципе, это нормальная ситуация. Другое дело, что если у вас состояние idle in transaction длится долго (больше минуты уже подозрительно), то это плохо потому, что PostgreSQL очень не любит долгие транзакции: VACUUM не сможет почистить все те строки, которые он мог бы увидеть, и долго висящая транзакция эффективно блокирует VACUUM. Начинают разбухать таблицы, индексы становятся всё менее эффективными.

Типичные ошибки при работе с PostgreSQL. Часть 2 - 2Читать полностью »

Вышел релиз PostgreSQL 10. Мы долго ждали появления новых фич. Мои коллеги ещё весной тестировали новую версию и отправляли баг-репорты: раз, два. А я был очень рад обновлению и подготовил перевод Release Notes на русский язык. Давайте обсуждать.

Встречаем PostgreSQL 10. Перевод Release Notes - 1

Читать полностью »

Мы были неподалёку от JavaScript, когда нами одолел php. Я помню сказал что-то вроде: Что-то у меня голова кружится. Может лучше тебе повести проект.

Страх и ненависть в MiddleWare - 1

Внезапно, вокруг нас раздался ужасный бум… И весь WEB кишал этими статьями про LAMP…
Казалось, что они были написаны под любые нужды. Они разрастались и поглощали задачи для которых ранее пользовался perl, bash и даже С. Нет смысла говорить об этих статьях, подумал я. Все и так это знают.

У нас был пятый IE, немного Netscape, Opera и целое море разношёрстных cgi модулей на perl. Не то что бы это был необходимый стек технологий. Но если начал собирать дурь, становится трудно остановиться. Единственное что вызывало у меня опасение — это студент, употребляющий PHP. Нет ничего более беспомощного, безответственного и испорченного, чем это. Я знал, что рано или поздно мы перейдем и на эту дрянь.
Читать полностью »

Если вы когда-нибудь задумывались о доверии и надежде, то скорее всего, не испытывали этого ни к чему так же сильно, как к системам управления базами данных. Ну и действительно, это же База Данных! В названии содержится весь смысл — место, где хранятся данные, основная задача ХРАНИТЬ. И что самое печальное, как всегда, однажды, эти убеждения разбиваются об останки такой одной умершей БД на 'проде'.

Неубиваемый Postgresql cluster внутри Kubernetes cluster - 1

И что же делать? — спросите вы. Не деплоить на сервера ничего, — отвечаем мы. Ничего, что не умеет само себя чинить, хотя бы временно, однако надежно и быстро!

В этой статье я попробую рассказать о своем опыте настройки почти бессмертного Postgresql кластера внутри другого отказоустойчивого решения от Google — Kubernates (aka k8s)

Читать полностью »

imageДля тех кто использует PostgreSQL, есть две новости. Сначала та, что про исправления проблем. Все активные ветки PostgreSQL обновились: 9.3.5, 9.2.9, 9.1.14, 9.0.18 и 8.4.22.

В ветке 8.4.* это заключительное обновление, данная ветка более поддерживаться не будет (если используете, запланируйте апгрейд!)

Самое важное в выпущенных обновлениях:
Читать полностью »

Набор выживания для веб разработчика под win*

Привет!

Давно собирался написать статью на Хабр, и вот наконец-то собрался.

Расскажу про одну сборку, сильно облегчающую жизнь вебмастеру под Windows.

История такова — во время очередных «плясок с бубном» по поднятию web-окружения под win у заказчика, я понял что меня достало вся эта магия.

Надоел поиск и вызов элементалей 50 уровня ради того чтобы найти модуль mod_wsgi под Python и Апач, скомпиленный под win, инициализация данных Postge SQL, маета с тем, что Апач не стартует, потому что скайпик уже висит на 80 порту…

Хотелось чего-то простого, гибкого и главное — портабельного.
Читать полностью »

О секционировании можно найти много информации, в частности здесь можно прочитать о теории, и дальше автор развивает идею и предоставляет свое решение для быстрого добавления секции. Рекомендую к ознакомлению.
После изучения теории почти ко всем приходит идея автоматизации процесса создания секций. Выше был один из вариантов, второй комплексный вариант я видел у создателей уважаемого думаю не только мной Zabbix.
После изучения и небольшого адаптирования я решил внедрить его у себя… К сожалению в нем выяснилось несколько недостатков: при создании новой секции первая запись в эту секцию терялась; при большом количестве секций вставка даже одной записи занимает слишком много времени (вызвано 2 факторами: каждый раз вычислялась таблица куда следует положить запись; использования множества rules вместо 1 триггера со всеми условиями). Тем не менее ребята проделали отличную работу и пользуясь случаем посылаю им лучи уважения.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js