Как стать автором
Поиск
Написать публикацию
Обновить
27
0

Пользователь

Отправить сообщение

Трассировка запросов в Postgres с расширением pg_trace

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров3.3K

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

Читать далее

Как провести нагрузочное тестирование БД PostgreSQL и ничего не забыть

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров4.3K

При нагрузочном тестировании баз данных Tantor Postgres или других на базе PostgreSQL с использованием стандартного инструмента pgbench отсутствие фиксации деталей окружения (таких как конфигурация СУБД, характеристики сервера, версии ПО) часто приводит к нерепрезентативным результатам и необходимости повторных тестов. В статье рассматривается разработанный автором инструмент pg_perfbench, который призван решить эту проблему.

Читать далее

Умный дом на вырост

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

🧱 Умный дом как часть готового ремонта для перепродажи? Почему бы и нет. Рассказываю, как мы подошли к проекту: провели электрику с запасом, поставили базовые контроллеры и реле, заложили кабели под климат, протечки, мультимедиа. Получилась универсальная, но расширяемая система. Хорошо продаётся — и не мешает развиваться.

Читать далее

Все, что нужно PostgreSQL: быстрые диски, дорогой процессор и терабайты RAM

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров18K

В облачном мире PostgreSQL возникает много вопросов. Какую конфигурацию выбрать для старта кластера? Сколько оперативной памяти и ядер CPU нужно под мою базу данных? Нужны ли под такой профиль нагрузки высокочастотные процессоры? Какое должно быть соотношение RAM к Storage в кластере? Хватает ли ресурсов и на системные службы, и на кэширование запросов? Не переплачиваю ли я?

Всем привет! Меня зовут Гришин Александр, я руководитель по развитию продуктов хранения данных в Selectel, отвечаю за объектное S3-хранилище и облачные базы данных. В этой статье я поделюсь своими практическими рекомендациями и ориентирами по планированию использования ресурсов кластера в PostgreSQL — в зависимости от типа и профиля нагрузки, размера данных и характера доступа к ним. Погнали!
Читать дальше →

Форма на сайте = штраф от 100 тысяч. Многие даже не подозревают

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров78K

Я часто общаюсь с предпринимателями и вижу: даже те, кто давно в бизнесе, не знают, что если на сайте есть форма с запросом имени или телефона — они уже считаются оператором ПД и обязаны соблюдать требования закона.

Многие думают, что формальная политика конфиденциальности, скачанная из интернета, спасёт. Это глубокое заблуждение. Кстати, эти правила касаются не только сайтов — Telegram-ботов тоже , если они собирают данные пользователей.

Читать далее

Что нового в Hibernate 7.0

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

Команда Spring АйО перевела статью про новые функции и возможности, добавленные в Hibernate ORM версии 7.0 : новая лицензия Apache 2.0, переход на Jakarta Persistence 3.2 и Java 17, замена HCANN на Hibernate Models, а также множество улучшений для работы с JSON, XML, enum, soft-delete и запросами.

Добавлено экспериментальное API для batch-операций, Set-returning functions и удобный доступ к кэшу первого уровня.

Читать далее

KStorage — единый подход к key-value хранилищам на Kotlin Multiplatform

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

Типобезопасное Key-Value хранилище для Kotlin Multiplatform. Единый API без боли, бойлерплейта и потери рассудка

Прочитать и убрать бойлерплейт из проекта

Как писать промпты для генерации изображений: часть 1

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

Сегодня генерация изображений с помощью искусственного интеллекта становится невероятно доступной и всё более востребованной. Теперь для создания уникальных иллюстраций не нужно обладать художественными навыками или годами изучать программы для дизайна. Достаточно лишь вообразить идею, а современные технологии, такие как Midjourney, DALL-E, Stable Diffusion, или Flux сделают её реальностью. С их помощью каждый может воплотить свои мысли в жизнь — будь то реалистичный портрет, красивый пейзаж или же захватывающий мир фантастической вселенной.

Читать далее

Зачем нужен fillfactor в PostgreSQL

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

Привет, Хабр!

Один параметр PostgreSQL может похоронить вашу производительность, если вы о нём забудете — это fillfactor. Почему однократная настройка числа приводит к неожиданным page split, bloat и мучительному откату запросов? Давайте разбираться.

Читать далее

Как мы под Новый Год загрузили в PostgreSQL петабайт данных и что из этого вышло

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

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

А началось всё просто: пока все вокруг спорят как настраивать железо и тюнить операционные системы дабы выжать лишних TPS, мы решили проверить как отреагирует движок PostgreSQL если загрузить в него действительно большой объём данных. Например, давайте сделаем базу размером один петабайт и посмотрим как он это переживёт.

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

Читать далее

За полчаса установил DeepSeek 1.5B, пока вы искали GPT подешевле

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров84K

DeepSeek 1.5B — маленький, но шустрый собрат больших языковых моделей. Работает локально, не требует железа на киловатт.

Внутри — инструкция по установке, настройке и запуску DeepSeek 1.5B на Ubuntu 24.04 с Ollama и Open WebUI.

Читать далее

Шардированный не значит распределённый: что важно знать, когда PostgreSQL становится мало

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров13K

Шардирование, двухфазный коммит и распределенные транзакции окружены определенными мифами и заблуждениями. Например, может быть достаточно неочевидно, что двухфазный коммит обеспечивает только атомарность транзакций, но не их изоляцию. Поэтому мы решили написать пост, который бы помог разобраться в этих сложных вещах и сделать правильный выбор, когда Postgres'а Вам станет мало и Вы столкнётесь с шардированием.

Читать далее

Обзор Greenmask — утилиты для логического дампа PgSQL с трансформацией данных на лету

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

Greenmask — это кроссплатформенный инструмент, разработанный на Go специально для безопасной работы с данными PostgreSQL: он помогает делать логические бэкапы, восстанавливать таблицы и при необходимости — анонимизировать чувствительную информацию. Главное преимущество Greenmask — полная совместимость с pg_dump и pg_restore. То есть, если вы уже работаете с этими инструментами, интеграция Greenmask не потребует пересмотра всей инфраструктуры.

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

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

Официальный сайт: https://greenmask.io

Документация: https://docs.greenmask.io/latest/

GitHub-репозиторий: https://github.com/GreenmaskIO/greenmask (уже 1308 звезд)

Telegram-канал: https://t.me/greenmask_ru

Читать далее

Для архитекторов и аналитиков: шаблон описания архитектуры приложения (34 страницы пользы)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров30K

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

Читать далее

Софт для VDS-сервера, на который стоит обратить внимание новичкам

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

Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.
Читать дальше →

ACID, BASE, CAP: Фундамент архитектуры распределенных систем

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

Современная разработка ПО – это почти всегда про распределенные системы. Микросервисы, облака, глобальный охват – все это стало нормой. Но за красивыми диаграммами и модными словами скрывается фундаментальная сложность. Как заставить кучу разрозненных компонентов работать вместе надежно? Как гарантировать, что данные, размазанные по сети, останутся корректными и доступными? Эта головная боль знакома любому, кто проектировал системы сложнее калькулятора, будь то в требовательном финтехе, динамичном e-commerce или где-либо еще.

И вот тут на помощь (или, скорее, для обозначения поля боя) приходят три понятия: ACID, BASE и теорема CAP. Может показаться, что это сухая теория, но игнорировать их – все равно что выходить в море без компаса и карты. Эти концепции описывают фундаментальные компромиссы, с которыми приходится иметь дело каждому архитектору. Понимание их – не гарантия успеха, но его необходимое условие. Давайте погрузимся в их суть и посмотрим, как они влияют на реальные архитектурные решения.

Читать далее

Сделано с любовью и TensorFlow: моя первая нейронка с нуля (без GPU и с бюджетом $0)

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров15K

Когда я впервые села за компьютер с мыслью: «А не обучить ли мне нейросеть?» у меня не было понимания как это сделать и с чего начать. Зато была любовь к собакам, интерес к машинному обучению и желание разобраться, как всё работает. Так родился проект HappyPuppy - моя первая нейронка, которая распознаёт сибирского хаски и французского бульдога на фотографии. Просто загрузите фото (jpg, jpeg, png до 1MB) с вашим питомцем и модель предскажет породу.

Далее я расскажу, как на домашнем Маке появилась и выросла моя первая сверточная нейронная сеть (CNN): от идеи до работающей модели — её создание, обучение и тестирование.

Эта история будет особенно полезна новичкам в мире ИИ без опыта в программировании.

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

А сейчас — история создания по шагам.

Читать далее

Пять свежих проектов на Raspberry Pi: мини-ПК, кибердек, медиаплеер и кое-что еще

Время на прочтение5 мин
Количество просмотров10K

Привет, Хабрчане! Если вы увлекаетесь электроникой и у вас под рукой есть «малинка», в этой подборке можно найти вдохновение для экспериментов — вот и еще одна идея, чем развлекать себя на майских. Я собрал пять интересных, на мой взгляд, DIY-проектов. Забегая наперед, скажу, что здесь старый магнитофон становится музыкальным центром, карманный мини-ПК работает на паре Pico, а кибердек в стиле 80-х соседствует с лабораторией для обучения и радиостанцией в корпусе размером с ладонь. Каждый гаджет — не просто игрушка, а реальный инструмент для учебы, экспериментов и работы. Погнали!

Читать далее

Как Postgres хранит строки

Время на прочтение6 мин
Количество просмотров21K

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

Мы будем рассматривать только файлы кучи (heap). Heap-файл — это просто файл записей. Не путайте heap-файл с heap-памятью. Хотя их использование очень похоже: хранение динамических данных.

Читать далее

Пайплайн распознавания номеров транспортных средств: как это устроено

Время на прочтение7 мин
Количество просмотров3.1K

Привет, Хабр! Это Анастасия Белозерова, я возглавляю команду, которая занимается исследованиями в области транспорта в VisionLabs. В прошлый раз я писала о пайплайне распознавания ТС, а сегодня поговорим про распознавание номеров. Для нас это одно из ключевых направлений, ведь номер для машины — это уникальный идентификатор, фактически то же самое, что и лицо для человека. Распознавать его можно совершенно разными способами, это всегда интересная задача. Что ж, погнали!

Читать далее

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность