Обновить
151.36

PostgreSQL *

Свободная объектно-реляционная СУБД

Сначала показывать
Порог рейтинга
Уровень сложности

Мониторинг PostgreSQL. Новые возможности анализа производительности 1С и других систем. Часть 2: Трассировка

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели9.7K

Продолжаем обсуждать инструменты анализа производительности систем на PostgreSQL.

В прошлой статье я начал рассказывать о расширении SP_TRACE, устанавливаемого на любые сборки PostgreSQL, и являющегося неотъемлемой частью мониторинга PerfExpert.

SP_TRACE предоставляет новые сведения в виде счетчиков и трасс, которых нет в других известных инструментах.

Читать далее

Почему в России большим компаниям нужен on-premise

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели13K

В мире информационных технологий существует два основных способа размещения инфраструктуры - внутри контура предприятия (on-premise) и в облаке (cloud-based). В данной статье мы рассмотрим преимущества on-premise и почему они могут быть выгодными для некоторых организаций.

Читать далее

Организация миграции схем баз данных на основе Nasgrate

Уровень сложностиСложный
Время на прочтение5 мин
Охват и читатели3.6K

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

В этой статье я бы хотел подробнее остановиться на Nasgrate

Основные преимущества Nasgrate

в качестве хранилища SQL-запросов используются обычные текстовые файлы без привязки к какому либо языку программирования. Это упрощает процесс взаимодействия между командами, работающими с разными технологиями (например Node и Python), не приходится разбираться в особенностях язковых конструкций

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

наличие визуального интерфейса (а не только консольного клиента) позволяющего организовать просмотр изменений в наглядном виде

Читать далее

JSONB и hstore: использование специальных типов данных PostgreSQL для работы с полуструктурированными данными

Время на прочтение11 мин
Охват и читатели33K

В современной разработке программного обеспечения, где данные играют ключевую роль, понятие "полуструктурированные данные" заняло особое место. Эти данные сочетают в себе гибкость документов и строгость таблиц, что позволяет эффективно моделировать сложные информационные потоки. Однако работа с такими данными требует специальных подходов и инструментов.

Полуструктурированные данные — это неотъемлемая часть современных приложений, работающих с разнообразной информацией. Они позволяют представить данные в формате, близком к человеческому восприятию, в то время как классические реляционные базы данных предоставляют ограниченные возможности для хранения и извлечения такого типа информации. Примерами могут быть структуры JSON, XML и другие форматы, которые могут содержать вложенные поля, дополнительные атрибуты и даже массивы данных.

Читать далее

Таблица-справочник – генератор DAG? А что так можно было?

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели8.3K

Таблица справочник, которая является медленно изменяющейся и также генерирует DAG.

В статье рассказывается как можно хранить бизнес-метрики и собирать их через DAG.

Читать далее

Генерируем простой web интерфейс для просмотра таблиц PostgreSQL

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели29K

В публикациях на хабре, чаще всего самое интересное в комментариях. Вот и в моем прошлом посте "Сгенерировать web интерфейс из БД или объектной модели не стало проще даже 10 лет спустя" я собрал джекпот из SharePoint, Vaadin и нескольких библиотек либо устаревших, либо поддерживаемых "одним автором".

Что я пытался объяснить читателям, что на этапе проверки идей не нужна дополнительная сложность в виде серверной инфраструктуры только ради этой самой инфраструктуры и нового языка программирования/платформы. Именно поэтому мне не нужны сейчас Yii, Symfony и Laravel, не подойдет ADF. На любое обучение тратится драгоценное время и поэтому надо понимать зачем тратить время на что-то, что потом возможно навсегда придется забыть через неделю-другую игры с прототипом.

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

Читать далее

Не Oracle единым: как мы обучили сотрудников PostgreSQL и сократили миграции БД на полгода

Время на прочтение7 мин
Охват и читатели9.5K

Привет, Хабр! На связи Т1 Цифровая Академия из Холдинга Т1. Сегодня хотим рассказать, как мы добились того, что 233 специалиста перешли с Oracle на PostgreSQL всего за 10 месяцев.

Почему часто лучше обучить, чем нанять

В начале 2022 года внешние условия резко поменяли картину мира и ИТ-отрасль. Во-первых, иностранные поставщики решений — Microsoft, IBM, Cisco, Adobe и не  только — ушли с российского рынка, и ИТ-специалисты остались один на один с отечественными разработками и альтернативными ИТ-решениями, которые приходилось изучать по ходу работы. Во-вторых, в среднем отрасли не хватает около 1 млн ИТ-специалистов, особенно уровня middle и senior. На поиск кандидатов с опытом от 6 лет может уходить до полугода. Такое положение дел заставляет бизнес искать альтернативы найму новых сотрудников с нужными знаниями.

Как представители одного из лидеров ИТ-отрасли мы понимаем, что сейчас постоянный апгрейд знаний в ИТ — основа основ. Компаниям выгодней взрастить текущие кадры, раскрыть их сильные стороны и улучшить навыки, чем потратить от 3-х месяцев на поиск идеального кандидата в условиях нехватки кадров.

Почему переход с одной СУБД на другую — это вызов

Одна российская компания обратилась к нам за помощью — ей требовалось импортозаместить Oracle на PostgreSQL за 1 год. По оценкам команд это заняло бы минимум 1,5 года из-за отсутствия специалистов по PostgreSQL, затяжной миграции и низкой мотивации специалистов. 

Такой длительный переход мог существенно затормозить бизнес-процессы: если в процессе перехода лицензия закончится, то купить новую уже не получится; при отсутствии технической поддержки со стороны Oracle нельзя будет устранить технические ошибки, из-за которых можно остаться без функционирующих БД как у всей компании, так и у заказчиков. Сбои в работе ПО, которые работают на основе БД, могли бы повлечь и более серьезные проблемы. А потеря данных была бы вовсе критической.

Читать далее

MongoDB vs PostgreSQL. Сравнение документо-ориентированной и реляционной базы данных

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели22K

Дети часто задаются вопросом - кто сильнее, кит или слон? каратист или боксер? В этой статье мы попробуем ответить на на похожий вопрос, сравнив SQL (ну или почти SQL) базу данных PostgreSQL и NoSQL базу данных MongoDB. И понять, для каких проектов лучше подойдет реляционная PostgreSQL, а для каких MongoDB.

Данное сравнение также важно, потому что, учитывая новый функционал, MongoDB стала обладать некоторыми качествами SQL СУБД, включая многодокументные ACID-транзакции, вторичный индекс и расширенные возможности запросов. А PostgreSQL расширяет возможности работы с JSON, включаяиндексирование и оптимизацию запросов.

Читать далее

Как обучить миллионы моделей прогнозирования временными сериями

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели3.8K

Не буду вдаваться в подробности о том, откуда берутся миллионы временных серий и почему они умудряются изменяться еженедельно. Просто возникла задача еженедельно сделать прогноз на 2-8 недель по паре миллионов временных серий. Причем не просто прогноз, а с кроссвалидацией и выбором наиболее оптимальной модели (ARIMA, нейронная сеть, и т.п.).

Имеется свыше терабайта исходных данных и достаточно сложные алгоритмы трансформации и чистки данных. Чтобы не гонять большие массивы данных по сети решено было реализовать прототип на одном сервере.

Читать далее

PostgreSQL 17: Часть 1 или Коммитфест 2023-07

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9.4K


Продолжаем следить за новостями из мира PostgreSQL. Выпуск PostgreSQL 16 Release Candidate 1 планируется на 31 августа и, если всё будет в порядке, то 16-я версия выйдет 14 сентября.


Что изменилось в 16-й версии после апрельской заморозки кода? Что попало в 17 версию по результатам первого коммитфеста? Обо всем об этом в свежем обзоре.

Читать дальше →

1.0.BackupStorage на NixOS

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели4K

Всем привет, меня зовут Алексей, являюсь IT‑инженером в одной из крупных компаний. Иногда включаю внутреннего авантюриста и ищу что‑то редкое и очень интересное.И в данной статье хочу поделиться стеком, который имеет право на жизнь.

Да и надеюсь, что информация для кого‑то будет интересна, как и для меня.

Если бы я раньше нашел такой туториал — быстрее бы разобрался со всеми нюансами.

Читать далее

Оценка производительности полнотекстового поиска в PostgreSQL на примерах приближенных к реальным

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.5K

Добрый день! Меня зовут Александр и я С# разработчик в компании Bimeister!

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

А если поподробнее

Отличия MySQL от PostgreSQL. Выбираем что лучше, PostgreSQL или MySQL

Время на прочтение5 мин
Охват и читатели20K

PostgreSQL и MySQL являются самыми популярными Open Source реляционными базами данных. И часто возникает вопрос - чем отличается PostgreSQL от MySQL? Ответ на этот вопрос позволит понять, какая из баз данных лучше подойдет вашему проекту.

В данной статье мы сравним PostgreSQL и MySQL по различным параметрам и запишем их в сравнительную таблицу.

Читать далее

Ближайшие события

Сгенерировать web интерфейс из БД или объектной модели не стало проще даже 10 лет спустя

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K

Помню, как более 10 лет назад, я бился с тем, как быстро создать интерфейс для ввода данных в базу данных и отбражения их через браузер. На то время, еще был популярен Google Web Toolkit и было несколько открытых библиотек виджетов к нему, по функционалу догоняющие и иногда превосходящие десктопные.

Однако, реальность оказалась несколько иной. На бэкэнде, базах данных и в big data ситуация гораздо лучше с возможностями бесплатных и открытых проектов, когда не надо покупать лицензии или платить за дополнительные компоненты, можно без СМС и платных подписок запустить хоть Ingenuity на Марс.

Читать далее

Наполняем до краев: влияние порядка столбцов в таблицах на размеры баз данных PostgresQL

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели29K

При оценке требований базы данных к оборудованию требуется учет многих факторов. И здесь у Postgres есть одна интересная особенность, которая почти всегда ускользает от внимания разработчиков, потому что она искусно спрятана между столбцами таблиц.

И что же там прячется?

Repeatable Read или как согласовать чтение в Postgresql

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.4K

В этой статье я на простом примере покажу, как пронаблюдать аномалию несогласованное чтение (read skew) в postgresql, и как уровень изоляции транзакции Repeatable Read позволяет устранить эту аномалию.

Читать далее

TimescaleDB против всех: как база данных справляется с рядом сложных задач

Время на прочтение11 мин
Охват и читатели32K

В фильме «Отряд самоубийц: Миссия навылет», когда персонажи Идриса Эльбы (Бладспот) и Джона Сины (Миротворец) знакомятся при участии Аманды Уоллер, звучит следующая фраза:

– Ты сказала, что у всех в отряде уникальные навыки, а он — это тот же я.


Источник

Казалось бы, при чем здесь базы данных? На самом деле, отношения между PostgreSQL и TimescaleDB напоминают эту пару героев. PostgreSQL — одна из самых популярных СУБД в мире. Вокруг решения давно существует комьюнити, а за годы в коммерческой разработке набралось достаточно документации. TimescaleDB, будучи расширением PostgreSQL, умеет многое из ее арсенала, но применяется более точечно. В основном в проектах, где нужно работать с временными рядами или собирать данные с IoT-устройств.

В этом материале мы рассмотрим особенности работы TimescaleDB, а также покажем, как ее использует клиент Selectel — сервис DwarfByte.
Читать дальше →

Django Rest Framework. Туториал или как легко писать backend. Часть 1

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели17K

Сегодня очень многие backend разработчики стали писать именно rest api.

Почему же так? Чем не устраивает обычный django?

Читать далее

CFS — сжатие на уровне страниц СУБД в Postgres Pro

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели12K

Сжатие данных на уровне блоков: механизм компрессии CFS и его особенности

Привет, Хабр! Меня зовут Антон Дорошкевич, я сертифицированный эксперт по PostgreSQL и архитектор многокластерных систем 1С. Это мой первый гостевой пост в блоге компании Postgres Professional. Многие мои выступления на PGConf.Russia были тепло приняты аудиторией  в частности, в этом году доклад о тонкостях эксплуатации 1С и PostgreSQL вошёл в тройку лучших презентаций конференции. Сегодня мне хотелось бы рассказать о том, как сжатие данных на уровне блоков (страниц) влияет на работу баз 1С.

Механизмы сжатия на уровне блоков разработаны и успешно используются в таких СУБД, как MS SQL Server, Oracle, MySQL. В PostgreSQL сжатие на уровне страниц почему-то не было реализовано; лишь сравнительно недавно оно появилось в Postgres Pro Enterprise. Этот механизм называется CFS (Compressed File System, но файловой системой он не является, поэтому далее будет использоваться сокращение CFS).

Читать далее

Почему я пожалел о миграции на Neo4j

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели8K

Почему я пожалел о миграции на Neo4j.

Я расскажу об опыте миграции Spring Boot приложения с Postgres на Neo4j.

Читать далее

Вклад авторов