Разбирая взаимоблокировки у клиента, я вспомнил, насколько опасным может быть использование SELECT FOR UPDATE при конкурентном доступе. В этом нет ничего нового, но я заметил, что многие не знают о режимах блокировки строк в PostgreSQL, и решил подробно описать, когда следует избегать SELECT FOR UPDATE.
Рубрика «postgres» - 2
Почему SELECT FOR UPDATE считается вредным в PostgreSQL
2025-08-23 в 15:12, admin, рубрики: locking, locks, postgres, postgresql, postgresql performance, select for updateЯвное и неявное определение типов и полей в Go
2025-08-05 в 10:04, admin, рубрики: Go, nil, optional-go-type, pointer, postgres, sql, опциональный типПроблема
В golang нет undefined/none, из-за чего структуры, функции обычные и переменные нельзя использовать гибко - нет синтаксического сахара, как в python. Есть значение nil, но оно тоже не дает понимания, было ли значение передано или нет, так как golang по умолчанию задает значения переменным или полям структуры, например:
дана структура
type Person struct { Name string Position string }
person := Pesron{Name: "Robert"}
при получении поля выдается значение по умолчанию (поле Position)
fmt.Println(person.Name) // Robertfmt.Println(person.Position) // пустая строка
Об индексах на столбцах с низкой кардинальностью
2025-08-02 в 20:45, admin, рубрики: db, dwh, index, performance, postgresОб индексах на столбцах с низкой кардинальностью
Ранее среди коллег по СУБД бытовало мнение, что не стоит использовать B-tree индексы на столбцах с малым количеством уникальных значений. Считалось, что планировщик почти никогда не будет использовать такие индексы, поскольку дешевле последовательно прочитать всю таблицу, чем использовать случайное чтение (Disk I/O) на индексе, а затем переходить по указанному TID (Tuple ID) в таблицу. В случае, если необходимо прочитать сначала большую долю индекса, а потом большую долю таблицы, то дешевле сразу прочитать таблицу, чем выполнять двойную работу.
Читать полностью »
Как мы успешно прошли тест на 30 000 одновременных пользователей в 1C:ERP (и что мы подкрутили в PostgreSQL)
2025-07-24 в 8:36, admin, рубрики: 1С, postgres, postgresql, базы данныхУже давно стали обыденными внедрения решений на платформе 1С:Предприятие на тысячу одновременных пользователей. Есть внедрения и более масштабные. И масштаб внедрений растёт. Поэтому мы решили убедиться, что платформа выдержит нагрузку нашего самого востребованного на крупных внедрениях решения 1C:ERP на 30 000 одновременно работающих пользователях.
Почему именно 30 000 пользователей, как мы измеряли производительность и как добились желаемой производительности – под катом.
Spring AI: retrieval augmented generation
2025-06-23 в 13:00, admin, рубрики: java, kotlin, OpenAI, pgvector, postgres, rag, spring, spring ai
Spring AIЧитать полностью »
Как мы внедрили векторный поиск в Postgres Pro
2025-06-18 в 13:36, admin, рубрики: postgres, Postgres Pro, Администрирование баз данных, вектор, векторизация, векторные базы данных, векторный поиск, разработка баз данныхПредставьте, что вы зашли в интернет-магазин купить пару кроссовок. Вы открываете описание модели, которая вам нравится, и сайт тут же предлагает похожие товары — и они действительно похожи. Как это работает?
Ответ прост и сложен одновременно: это векторный поиск — одна из самых перспективных технологий, меняющих подходы к работе с информацией.
Шардированный не значит распределённый: что важно знать, когда PostgreSQL становится мало
2025-05-13 в 8:42, admin, рубрики: acid, citus, consistency, dbms, distributed, postgres, postgresql, ydb, СУБД
Год назад мы опубликовали пост «Когда одного Postgres'a мало: сравнение производительности PostgreSQL и распределённых СУБДЧитать полностью »
Русский след в истории логотипа PostgreSQL
2025-04-29 в 15:21, admin, рубрики: postgres, postgresql, slonik, slonik.gif, история postgesql, история логотипа, логотип postgresqlОб истории логотипа PostgreSQL рассказал генеральный директор Postgres Professional Олег Бартунов, который непосредственно был участником событий и сохранил архив переписки и разработки визуального стиля СУБД.

Миграция базы данных Grafana: от внутреннего хранилища к PostgreSQL
2025-04-04 в 7:16, admin, рубрики: Grafana, postgres, postgresql, sqlite, sqlite3, бд, миграция, миграция бд, миграция данныхВсем доброго дня! Пишу здесь впервые. На написание меня этой статьи побудило желание рассказать людям об эффективном способе миграции от внутренней базы данных sqlite3 к внешней БД PostgreSQL. Подобной статьи на Хабре я не нашел, поэтому надеюсь будет полезно.
Я перечитал много статей на эту тему и попробовал различные варианты, но получилось у меня только с одним. Спасибо этому человеку: Oodcode. Так же расскажу про остальные способы и что из них вышло.
Предпосылки
Изначально причиной миграции стали ошибки алертов, приходящие из Grafana (~130 штук). А именно: Читать полностью »
Sandbox DB: универсальная песочница для погружения в Big Data, аналитику и визуализацию
2025-03-31 в 10:52, admin, рубрики: clickhouse, postgres, python, spark, superset, анализ данных, базы данных
Приветствую всех читателей! Сегодня я хочу рассказать вам о своем мини‑проекте под названием «Песочница Sandbox DB».
Если вам лень читать статью, вот ссылка на проект: Sandbox DB на GitFlic.
Я работаю DWH‑разработчиком уже 6 лет, и все эти годы мне приходится постоянно учиться и осваивать новые инструменты.
