Отворени са разработки на проекта Postgres WASM, развиващ околната среда с СУБД PostgreSQL, работеща в браузера. Свързаният с проекта код е отворен под лиценция MIT. Предлага се инструментариум за изграждане на работеща в браузера виртуална машина с ограничено Linux-окружение, сървър PostgreSQL 14.5 и съпътстващи утилити (psql, pg_dump). Размерът на финалната сборка е около 30 MB.
Съдържанието на виртуалната машина се създава с помощта на скриптове buildroot и се стартира в браузера, използвайки емулатора v86. За взаимодействие с утилитите на PostgreSQL от браузера се предоставя уеб интерфейс. За достъп до стартирания в браузера сървър PostgreSQL по мрежата и изпълнение на мрежови заявки от виртуалната машина се използва прокси, което пренасочва трафика чрез API Websocket.
Основни възможности на Postgres WASM:
- Запазване и възстановяване на състоянието на СУБД от файл или браузерно хранилище, базирано на IndexedDB.
- Бързо стартиране от файл със запазено състояние на виртуалната машина или пълно стартиране с рестартиране на емулатора.
- Възможност за отделяне на виртуална машина от 128 до 1024 MB памет.
- Настройване на размера на шрифта в уеб терминала.
- Поддръжка на качване на файлове в виртуалната среда, включително възможност за качване на дампове на БД.
- Поддръжка на сваляне на файлове от виртуалната среда.
- Настройка на входящи и изходящи мрежови връзки, създаване на тунел за пренасочване на запитванията към мрежовия порт 5432.
Сред възможните области на приложение на Postgres WASM се споменава създаването на демонстрационни и обучителни системи, организиране на работа с данни в офлайн режим, анализ на данни при наличие в офлайн режим, тестване на функционалността и конфигурации на PostgresSQL, създаване на локална среда за разработчици, подготовка на изрезки на определено състояние на СУБД за изпращане на други разработчици или в служба за поддръжка, тестване на логична репликация с външни СУБД.

Източник: opennet.ru
