Проект PostgREST развивает RESTful API демон для PostgreSQL
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
PostgREST - открытый веб-сервер, который позволяет превратить любую базу данных, хранимую в СУБД PostgreSQL, в полноценный RESTful API. Мотивацией к написанию PostgREST стало желание уйти от ручного программирования CRUD, так как это может привести к проблемам: написание бизнес-логики часто дублирует, игнорирует или усложняет структуру базы данных; объектно-реляционное отображение (ORM mapping) не надёжная абстракция, которая приводит к медленному императивному коду и может стать причинной проблем с безопасностью. PostgREST написан на языке Haskell и распространяется по лицензии MIT.
Философия PostgREST в декларативном доступе к данным, без лишних прослоек. PostgREST не использует ORM, все представления создаются прямо в базе данных. Чтобы создавать и поддерживать backend API с PostgREST достаточно иметь в штате администратора СУБД. PostgREST упрощает разработку бэкенда и позволяет объединять, экстрагировать и фильтровать данные через запрос. Вместо написания кода в контроллерах (controllers) можно просто назначить разрешения для объектов в базе данных, а вместо того чтобы писать многочисленные проверки можно напрямую установить ограничения в базе данных.
Несколько иллюстраций возможностей PostgREST:
curl http://localhost:3000/todos
[
{
"id": 1,
"done": false,
"task": "finish tutorial 0",
"due": null
},
{
"id": 2,
"done": false,
"task": "pat self on back",
"due": null
}]
curl http://localhost:3000/todos -X POST \\
-H "Content-Type: application/json" \\
-d '{"task": "do bad thing"}'
{
"hint": null,
"details": null,
"code": "42501",
"message": "permission denied for relation todos"
}
GET /films?select=title,directors(id,last_name) HTTP/1.1
[
{ "title": "Workers Leaving The Lumière Factory In Lyon",
"directors": {
"id": 2,
"last_name": "Lumière"
}
},
{ "title": "The Dickson Experimental Sound Film",
"directors": {
"id": 1,
"last_name": "Dickson"
}
},
{ "title": "The Haunted Castle",
"directors": {
"id": 3,
"last_name": "Méliès"
}
}]
Для PostgREST есть клиентские библиотеки и расширения, в том числе для OAth, Websockets, Amazon Kinesis. Также доступен starter-kit, который работает в Docker и включает PostgREST, веб-сервер openresty на Lua, pgTAP, RabbitMQ и панель управления.
Запустить приложения на PostgREST можно на платформе Heroku, так же используя Docker. Ещё есть профильная облачная платформа с расширенными функциями, subzero, разработчики которой развивают форк PostgREST+, в котором реализованы агрегатные и оконные функции, а также репликация на чтение.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://postgrest.org/...)
- OpenNews: Релиз СУБД PostgreSQL 14
- OpenNews: Сторонняя организация пытается зарегистрировать торговую марку PostgreSQL в Европе и США
- OpenNews: Компания Alibaba открыла код распределённой СУБД PolarDB, основанной на PostgreSQL
- OpenNews: Опубликован Kubegres, инструментарий для развёртывания кластера PostgreSQL
- OpenNews: Для PostgreSQL подготовлено дополнение AGE для хранения данных в форме графа
Похожие новости:
- Amazon открыл код Babelfish, расширений для замены MS SQL Server на PostgreSQL
- Релиз СУБД PostgreSQL 14
- В Нижнем Новгороде состоится конференция по PostgreSQL
- Сторонняя организация пытается зарегистрировать торговую марку PostgreSQL в Европе и США
- Обновление PostgreSQL с устранением уязвимости
- [Высокая производительность, PostgreSQL, SQL, Администрирование баз данных] Борем deadlock при пакетном UPDATE
- [Алгоритмы, Обработка изображений, Машинное обучение] Определение позы для нескольких людей с Mediapipe
- [Oracle, PostgreSQL, SQL] Почему мы перешли с Oracle на PostgeSQL, и как это сделать
- [PostgreSQL, Администрирование баз данных, Big Data, DevOps] Mail.ru Cloud Solutions открывает доступ к Arenadata DB Cloud версии Enterprise
- [API] Нулевой даунтайм API на ElasticSearch
Теги для поиска: #_postgrest, #_restful, #_api, #_postgresql
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 13:07
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
PostgREST - открытый веб-сервер, который позволяет превратить любую базу данных, хранимую в СУБД PostgreSQL, в полноценный RESTful API. Мотивацией к написанию PostgREST стало желание уйти от ручного программирования CRUD, так как это может привести к проблемам: написание бизнес-логики часто дублирует, игнорирует или усложняет структуру базы данных; объектно-реляционное отображение (ORM mapping) не надёжная абстракция, которая приводит к медленному императивному коду и может стать причинной проблем с безопасностью. PostgREST написан на языке Haskell и распространяется по лицензии MIT. Философия PostgREST в декларативном доступе к данным, без лишних прослоек. PostgREST не использует ORM, все представления создаются прямо в базе данных. Чтобы создавать и поддерживать backend API с PostgREST достаточно иметь в штате администратора СУБД. PostgREST упрощает разработку бэкенда и позволяет объединять, экстрагировать и фильтровать данные через запрос. Вместо написания кода в контроллерах (controllers) можно просто назначить разрешения для объектов в базе данных, а вместо того чтобы писать многочисленные проверки можно напрямую установить ограничения в базе данных. Несколько иллюстраций возможностей PostgREST: curl http://localhost:3000/todos
[ { "id": 1, "done": false, "task": "finish tutorial 0", "due": null }, { "id": 2, "done": false, "task": "pat self on back", "due": null }] curl http://localhost:3000/todos -X POST \\ -H "Content-Type: application/json" \\ -d '{"task": "do bad thing"}' { "hint": null, "details": null, "code": "42501", "message": "permission denied for relation todos" } GET /films?select=title,directors(id,last_name) HTTP/1.1 [ { "title": "Workers Leaving The Lumière Factory In Lyon", "directors": { "id": 2, "last_name": "Lumière" } }, { "title": "The Dickson Experimental Sound Film", "directors": { "id": 1, "last_name": "Dickson" } }, { "title": "The Haunted Castle", "directors": { "id": 3, "last_name": "Méliès" } }] Запустить приложения на PostgREST можно на платформе Heroku, так же используя Docker. Ещё есть профильная облачная платформа с расширенными функциями, subzero, разработчики которой развивают форк PostgREST+, в котором реализованы агрегатные и оконные функции, а также репликация на чтение. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 13:07
Часовой пояс: UTC + 5