{"schema_version":"1.0","service":"Publicasta","type":"article","id":210,"slug":"pgsimcity_postgresql_internals_3d_2026_07_27","title":"PGSimCity превращает internals PostgreSQL в город, который стоит исследовать осторожно","excerpt":"Свежий Apache-2.0 WebGL-проект выглядит как редкий учебный инструмент по базам данных, но сам честно просит экспертного review.","language":"ru","default_language":"en","canonical_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru","image":{"url":"https://publicasta.com/storage/projects/10/pages/210/2026/07/02f01a3e-190f-438c-9563-b5870c731b76.webp","alt":"Внутренности PostgreSQL как open-source database city в браузере"},"publisher":{"id":10,"slug":"open_source_radar","name":"Open Source радар","url":"https://publicasta.com/open_source_radar"},"author":{"name":"Anton R"},"published_at":"2026-07-27T06:46:26+00:00","updated_at":"2026-07-27T06:46:26+00:00","content_markdown":"PGSimCity цепляет сразу: внутренности PostgreSQL превращены в 3D-город, который открывается в браузере. Clients, backends, shared buffers, WAL, checkpoints, autovacuum, replication и bloat становятся не блоками на схеме, а движущимися частями.\n\n ![Внутренности PostgreSQL как open-source database city в браузере](https://publicasta.com/storage/projects/10/pages/210/2026/07/02f01a3e-190f-438c-9563-b5870c731b76.webp)\n\n Но это не значит, что модели можно верить вслепую. README честно предупреждает: это prototype, в simulation and explanations могут быть ошибки, это model, not emulator. В браузере не запускается PostgreSQL source code, а числа масштабированы для наблюдения. Именно эта честность делает проект интересным: его стоит пробовать, но не надо принимать как источник истины.\n\n Live demo лежит на GitHub Pages, repo NikolayS/PGSimCity открыт под Apache-2.0. В package metadata сейчас указана версия 0.6.0, хотя README всё ещё говорит о раннем prototype v0.1. Это не проблема, а признак быстрых изменений после HN-запуска.\n\n На момент проверки у repo было 62 stars, 2 forks and 2 open issues. Последние commits от 27 июля включали follow one query across the whole city и visible way out для режимов. Локально проект тоже проверился: `npm install`, `npm run typecheck` and `npm run build` прошли на Node 20.20.2. Стек маленький: three.js r185, TypeScript, Vite и один runtime dependency `three`.\n\n Главная ценность PGSimCity в первом ментальном образе. Многие backend developers умеют писать SQL, но никогда не видели, как их нагрузка давит на WAL, buffers или autovacuum. Визуальная модель может сделать эти связи менее абстрактными. Не заменить docs и DBA, а подготовить голову к чтению docs.\n\n HN-тред набрал 411 points and 41 comments. Комментарии полезные: людям нравится идея, но они просят меньше UI noise, лучше camera controls, более медленный query walkthrough и понятный narrative. Один из сильных запросов: ввести query и увидеть путь от parsing and planning до execution and storage.\n\n Самый важный риск — accuracy. Интерактивная модель выглядит убедительнее обычной картинки. Если она ошибается, пользователь может запомнить ошибку как наблюдение. Поэтому просьба автора к PostgreSQL experts открывать issues and pull requests — не формальность, а условие выживания проекта как учебного инструмента.\n\n AI-assisted angle здесь тоже интересен, но не как повод спорить о “настоящем” авторстве. Автор в HN говорил, что проект начался с prompt и curiosity about Opus 5, с большой помощью моделей. Вопрос не в этом. Вопрос в том, сможет ли open source community превратить быстрый prototype в проверенную educational infrastructure.\n\n Кому попробовать: backend developers, junior/mid engineers, SRE/DBA teams, преподавателям и авторам курсов по Postgres. Кому быть осторожнее: всем, кто хочет использовать модель как authority для production tuning. Для production нужны official docs, metrics, logs and expertise.\n\n Более широкий сигнал важен не меньше самого проекта. Kubernetes, compilers, storage engines, CPUs and runtimes тоже нуждаются в explorable documentation между статичной схемой и исходниками. PGSimCity показывает, как это может выглядеть, но также напоминает: такие модели надо ревьюить как software, а не потреблять как красивую infographic.","available_translations":[{"language":"ar","title":"PGSimCity يحول PostgreSQL internals إلى مدينة تستحق الاستكشاف بحذر","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ar","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=ar","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=ar","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ar"},{"language":"de","title":"PGSimCity macht PostgreSQL-Interna zur Stadt, die man mit Vorsicht erkunden sollte","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=de","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=de","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=de","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=de"},{"language":"en","title":"PGSimCity turns PostgreSQL internals into a city worth exploring, carefully","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=en","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=en","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=en","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=en"},{"language":"es","title":"PGSimCity convierte los internals de PostgreSQL en una ciudad para explorar con cuidado","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=es","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=es","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=es","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=es"},{"language":"fr","title":"PGSimCity transforme les internals de PostgreSQL en ville à explorer avec prudence","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=fr","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=fr","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=fr","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=fr"},{"language":"pl","title":"PGSimCity zmienia internals PostgreSQL w miasto, które warto zwiedzać ostrożnie","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=pl","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=pl","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=pl","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=pl"},{"language":"ru","title":"PGSimCity превращает internals PostgreSQL в город, который стоит исследовать осторожно","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=ru","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=ru","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru"},{"language":"zh","title":"PGSimCity 把 PostgreSQL internals 变成一座值得谨慎探索的城市","html_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=zh","markdown_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=zh","json_url":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=zh","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=zh"}],"_links":{"self":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=ru","api":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru","html":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru","canonical":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27?lang=ru","markdown":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.md?lang=ru","json":"https://publicasta.com/open_source_radar/pgsimcity_postgresql_internals_3d_2026_07_27.json?lang=ru","channel":"https://publicasta.com/api/public/v1/channels/open_source_radar","channel_articles":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles","search":"https://publicasta.com/api/public/v1/search","documentation":"https://publicasta.com/api-docs#reading-publicasta","openapi":"https://publicasta.com/api-docs/openapi.json","llms":"https://publicasta.com/llms.txt"}}