Первый стабильный релиз реляционно-графовой СУБД EdgeDB
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Доступен первый стабильный релиз СУБД EdgeDB, представляющую собой надстройку над PostgreSQL с реализацией реляционно-графовой модели данных и языка запросов EdgeQL, оптимизированных для работы со сложными иерархическими данными. Код написан на языках Python и Rust и распространяется под лицензией Apache 2.0. Клиентские библиотеки подготовлены для языков Python, Go, Rust и TypeScript/Javascript. Предоставляется инструментарий командной стоки для управления СУБД и интерактивного выполнения запросов (REPL).
Вместо модели данных на основе таблиц в EdgeDB применяется декларативная система на основе объектных типов. Вместо внешних ключей (foreign key) для определения связи между типами применяется связывание ссылками (один объект может использоваться как свойство другого объекта).
type Person {
required property name -> str;
}
type Movie {
required property title -> str;
multi link actors -> Person;
}
Для ускорения обработки запросов могут применяться индексы. Поддерживаются также такие возможности как строгая типизация свойств, ограничения значений свойств, вычисляемые свойства и хранимые процедуры. Из особенностей объектной схемы хранения EdgeDB, которая чем-то напоминает ORM, отмечается возможность смешивания схем, связывания свойств из разных объектов и интегрированная поддержка JSON.
Предоставляются встроенные инструменты для миграции схемы хранения - после изменения схемы, задаваемой в отдельном esdl-файле, достаточно выполнить команду "edgedb migration create" и СУБД проанализирует различия в схеме и в интерактивном режиме сгенерирует скрипт для перехода на новую схему. Автоматически отслеживается история изменения схемы.
Для формирования запросов поддерживается как язык запросов GraphQL, так и собственный язык EdgeDB, представляющий собой адаптацию SQL для иерархических данных. Вместо списков результаты запроса оформляются в структурированном виде, а вместо подзапросов и операций JOIN предоставляется возможность указания одного запроса EdgeQL в качестве выражения внутри другого запроса. Поддерживаются транзакции и циклы.
select Movie {
title,
actors: {
name
}
}
filter .title = "The Matrix"
insert Movie {
title := "The Matrix Resurrections",
actors := (
select Person
filter .name in {
'Keanu Reeves',
'Carrie-Anne Moss',
'Laurence Fishburne'
}
)
}
for number in {0, 1, 2, 3}
union (
select { number, number + 0.5 }
);
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://www.edgedb.com/blog/ed...)
- OpenNews: Первый стабильный выпуск графо-ориентированной СУБД Nebula Graph
- OpenNews: Доступна распределённая графо-ориентированная СУБД Dgraph 0.4
- OpenNews: Релиз СУБД Neo4j 1.3, ориентированной на хранение графов
- OpenNews: Компания Alibaba открыла код распределённой СУБД PolarDB, основанной на PostgreSQL
- OpenNews: Опубликована СУБД immudb 1.0, обеспечивающая защиту от искажения данных
Похожие новости:
- Обновление PostgreSQL. Выпуск reshape, утилиты для миграции на новую схему без остановки работы
- Стабильный выпуск СУБД MariaDB 10.7
- Выпуск СУБД SQLite 3.37
- Обновление PostgreSQL с устранением уязвимостей. Выпуск балансировщика соединений Odyssey 1.2
- Проект MangoDB развивает реализацию протокола СУБД MongoDB поверх PostgreSQL
- Проект PostgREST развивает RESTful API демон для PostgreSQL
- Amazon открыл код Babelfish, расширений для замены MS SQL Server на PostgreSQL
- Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10.4 и libfpta 0.3.9
- Релиз СУБД PostgreSQL 14
- В Нижнем Новгороде состоится конференция по PostgreSQL
Теги для поиска: #_edgedb, #_database, #_postgresql
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 02:29
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Доступен первый стабильный релиз СУБД EdgeDB, представляющую собой надстройку над PostgreSQL с реализацией реляционно-графовой модели данных и языка запросов EdgeQL, оптимизированных для работы со сложными иерархическими данными. Код написан на языках Python и Rust и распространяется под лицензией Apache 2.0. Клиентские библиотеки подготовлены для языков Python, Go, Rust и TypeScript/Javascript. Предоставляется инструментарий командной стоки для управления СУБД и интерактивного выполнения запросов (REPL). Вместо модели данных на основе таблиц в EdgeDB применяется декларативная система на основе объектных типов. Вместо внешних ключей (foreign key) для определения связи между типами применяется связывание ссылками (один объект может использоваться как свойство другого объекта). type Person {
required property name -> str; } type Movie { required property title -> str; multi link actors -> Person; } Предоставляются встроенные инструменты для миграции схемы хранения - после изменения схемы, задаваемой в отдельном esdl-файле, достаточно выполнить команду "edgedb migration create" и СУБД проанализирует различия в схеме и в интерактивном режиме сгенерирует скрипт для перехода на новую схему. Автоматически отслеживается история изменения схемы. Для формирования запросов поддерживается как язык запросов GraphQL, так и собственный язык EdgeDB, представляющий собой адаптацию SQL для иерархических данных. Вместо списков результаты запроса оформляются в структурированном виде, а вместо подзапросов и операций JOIN предоставляется возможность указания одного запроса EdgeQL в качестве выражения внутри другого запроса. Поддерживаются транзакции и циклы. select Movie {
title, actors: { name } } filter .title = "The Matrix" insert Movie { title := "The Matrix Resurrections", actors := ( select Person filter .name in { 'Keanu Reeves', 'Carrie-Anne Moss', 'Laurence Fishburne' } ) } for number in {0, 1, 2, 3} union ( select { number, number + 0.5 } ); =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 02:29
Часовой пояс: UTC + 5