Я Python dev, и мне снова нужно привыкать к PostgreSQL
Я Python backend-разработчик, и мне снова нужно привыкать к PostgreSQL.
Звучит странно, потому что Postgres -- это вроде бы база, с которой backend-разработчик часто работает по умолчанию.
Но последний год я много работала с DynamoDB от AWS и single-table design. И, честно говоря, мне понравился этот подход.
Сначала он кажется непривычным: одна таблица, access patterns, partition key, sort key, денормализация, заранее продуманные запросы.
В DynamoDB приходится заранее думать: как данные будут читаться, какие запросы реально нужны, какие связи важны для продукта и где стоит пожертвовать привычной нормализацией ради скорости и простоты доступа.
А теперь я возвращаюсь к PostgreSQL и ловлю себя на забавном ощущении: мне нужно снова переключить мышление. Вспомнить joins, constraints, migrations, transactions, нормализацию, индексы и всю эту прекрасную реляционную вселенную.
И это хороший пример того, что “знать базу данных” - это не просто помнить синтаксис. Это уметь думать в её модели.
PostgreSQL и DynamoDB не лучше и не хуже друг друга в вакууме. Они просто заставляют проектировать данные по-разному.
И, кажется, именно это мне больше всего нравится в backend-разработке: иногда ты учишь не новый инструмент, а новый способ думать.
· вчера
А как же ORM?) для PostgreSQL
1
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· вчера
ORM, конечно, помогает. Но я давно с ним плотно не работала: Django ORM был очень давно. Потом были ClickHouse с чистыми запросами и DynamoDB/single-table design.
Сейчас вот: сейчас SQLAlchemy + Alembic для миграций. Тяжело к этому возвращаться
1
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· вчера
Писали чистые запросы вида: "SELECT * FROM таблица" ?)
1
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· вчера
Ахахахахахаха, к счастью, всё было немного сложнее, чем SELECT * )))
Я работала в adtech: нужно было связывать рекламные поверхности, H3-гексы, мобильные сигналы, соцдем-профили, временные рекламные окна и агрегировать это в понятные рекламные метрики.
Когда я пришла один из запросов длился 6 часов (из-за подобных ситуаций меня и позвали), и мне удалось его оптимизировать до пары секунд. Кликхаус - крутой инструмент. Хочу пройти курс по кликхаусу для дата инженеров
1
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён
· вчера
но шутка мне понравилась, спасибо )
1
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён