Рубрика «postgresql» - 60

Сегодня давайте поговорим о преимуществах Postgres перед другими системами с открытым кодом. Эту тему мы обязательно раскроем более подробно на PG Day'16 Russia, до которой осталось всего два месяца.

Возможно, вы спрашиваете себя: «Почему PostgreSQL?» Ведь есть и другие варианты реляционных баз данных с открытым исходным кодом (в рамках этой статьи мы рассматривали MySQL, MariaDB и Firebird), так что же Постгрес может предложить такого, чего нет у них? В слогане PostgreSQL заявляется, что это «Самая продвинутая база данных с открытым исходным кодом в мире». Мы приведем несколько причин, почему Постгрес делает такие заявления.

В первой части этой серии мы поговорим о хранении данных — модели, структуре, типах и ограничениях размера. А во второй части больше сфокусируемся на выборке и манипуляциях с данными.

Чем PostgreSQL лучше других SQL баз данных с открытым исходным кодом. Часть 1 - 1
Читать полностью »

Очередная Reflection Library и ORM для C++ - 1

Сразу же предупрежу о велосипедности выдаемого здесь на обозрение. Если прочтение заголовка вызывает лишь с трудом подавляемый возглас «Твою мать, только не новый таксон ORM!», то лучше наверное воздержаться от дальнейшего чтения, дабы не повышать уровень агрессии в космологическом бульоне, в котором мы плаваем. Виной появлению данной статьи явилось то, что в кои-то веки выдался у меня отпуск, в течение которого решил я попробовать себя на поприще написания блогопостов по околохабровской тематике, и предлагаемая тема мне показалась вполне для этого подходящей. Кроме того, здесь я надесь получить конструктивную критику, и возможно понять чего же еще с этим можно сделать этакого интересного. В конце будет ссылка на github-репозиторий, в котором можно посмотреть код.
Читать полностью »

Всем привет!
После долгого перерыва блудный Python Meetup снова с нами. На долгожданной мартовской встрече сообщества любителей и профессионалов языка программирования Python обсуждались животрепещущие темы: противостояние Python и Erlang, а также дополнительные возможности PostgreSQL.
Видеозаписи выступлений под катом. Приятного просмотра!
Мартовский Python Meetup: Python VS Erlang и возможности PostgreSQL - 1
Читать полностью »

В течение последнего десятилетия быстродействие процессоров выросло примерно в 10 раз, оперативной памяти – в 8 раз, сетей – в 100 раз, внутренней шины вычислительных систем – в 20 раз, а накопителей на жестких дисках – всего в 1,5 раза. То есть увеличение производительности подсистемы хранения серверов существенно отстает от роста производительности центрального процессора, оперативной памяти, внутренней шины, а также пропускной способности сетей. Недостаточная производительность традиционных жестких дисков (HDD) приводит к увеличению времени отклика приложений. Еще вчера решением могло быть только использование SSD или PCIe-флэш. Сегодня мы шагнули еще дальше с новым типом накопителей непосредственно на шине оперативной памяти!

Новая память для новой архитектуры хранения данных - 1
Читать полностью »

Как использовать ограничения JSON при работе с PostgreSQL - 1

Ранее в блоге на Хабре мы рассказывали о развитии нашего продукта — биллинга для операторов связи «Гидра», а также рассматривали вопросы работы с инфраструктурой и использования новых технологий. К примеру, мы рассмотрели плюсы Clojure и ситуации, когда стоит и не стоит использовать MongoDB.

Сегодня речь пойдет о работе с JSON, и в частности, о применении ограничений. Интересный материал на эту тему опубликовал в своем блоге разработчик Магнус Хагандер (Magnus Hagander) — мы представляем вашему вниманию главные мысли этого материала.Читать полностью »

image

Хочу поделиться инструментом, который родился при разработке одного веб-проекта и очень помогает мне не потеряться в море таблиц, хранимых процедур, индексов и прочих обитателей базы данных.

Сам проект написан на Django, в качестве бекенда — PostgreSQL. В самом начале работы было решено, по крайней мере, частично отказаться от использования Django ORM в пользу «сырого» SQL и хранимых процедур. Другими словами, почти вся бизнес-логика вынесена на уровень базы данных. Сразу скажу, что готовить ORM я умею, но в данном случае требовалось производить многоступенчатые вычисления, связанные с множеством выборок, а это лучше делать на сервере БД и не таскать промежуточные данные в приложение.

Столкнувшись с необходимостью поддержания структуры базы данных вручную, без приятностей Django Migrations, я выяснил, что вручную писать инкрементальные SQL патчи возможно, но трудно уследить за зависимостями объектов БД. К примеру, когда функции, которая используется где-то еще, добавляешь еще один аргумент, простого CREATE OR REPLACE недостаточно — ее нужно сначала DROP, а потом CREATE. При этом нужно предварительно удалить зависимые от нее функции, а потом создать заново (а если от этих функций еще кто-то зависит, тогда надо и их пересоздать).

Под катом краткое описание возможностей в виде туториала. Встречайте — Sqlibrist.Читать полностью »

Мы продолжаем готовиться к PG Day’16 и знакомить вас с интересными возможностями PostgreSQL.

В предыдущих постах этой серии я говорил о том, как читать вывод EXPLAIN и что означает каждая строка (операция/узел).

В заключительном посте я постараюсь объяснить, почему Постгрес выбирает «Операцию X», а не «Операцию Y».

Объясняя необъяснимое. Часть 5 - 1
Читать полностью »

Иногда вам нужно определить какому файлу на диске соответствует таблица. У вас имеется путь, полный цифр, такой как base/16499/19401 и вы хотите разобраться в нем. Вы можете смотреть на сообщение об ошибке, которое упоминает имя файла, например:

ERROR:  could not read block 11857 of relation base/16396/3720450: read only 0 of 8192 bytes

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

Привет!

Сегодня с нами Руслан Тугушев, основатель компании Boomstarter, уже 3.5 года разрабатывающей краудфандинговую платформу и консультирующей авторов проектов, как привлекать деньги на свои деньги. На момент марта 2016 года проекты привлекли уже больше 210 миллионов рублей, и Руслан рассказывает, как Microsoft Azure поддерживает платформу возможностями уже инфраструктурными. Как раз недавно Бумстартер помог собрать космическому проекту «Маяк» без семи тысяч два миллиона рублей — самый успешный проект о космосе за всю историю Boomstarter! Под катом — подробности.

Boomstarter в облаке — кто помогает запускать новые проекты? - 1
Читать полностью »

Полезные трюки PostgreSQL - 1

В мануале есть всё. Но чтобы его целиком прочитать и осознать, можно потратить годы. Поэтому один из самых эффективных методов обучения новым возможностям Postrges — это посмотреть, как делают коллеги. На конкретных примерах. Эта статья может быть интересна тем, кто хочет глубже использовать возможности postgres или рассматривает переход на эту СУБД.
Читать полностью »


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