Подготовено е разширение AGE за PostgreSQL за съхранение на данни под формата на граф.

За PostgreSQL беше предложено разширението AGE (AgensGraph-Extension), реализиращо езика за запитвания openCypher за манипулиране на свързани помежду си набори от йерархични данни, образуващи граф. Вместо колони и редове, графово ориентираните бази данни използват структура, подобна на мрежа — задават се възли, техните свойства и отношения между възлите. AGE разпространява е с лиценз Apache 2.0, предоставено от компанията Bitnine под покровителството на Фонда Apache и в момента е в инкубатора Apache.

Проектът продължава развитието на СУБД AgensGraph, която представлява е преработена версия на PostgreSQL за обработка на графи. Ключовото отличие е реализирането на AGE като универсално разширение, работещо като надстройка над стандартните версии на PostgreSQL. Публикуваната наскоро версия Apache AGE 0.2.0 поддържа работа с PostgreSQL 11.

В сегашното си състояние, AGE поддържа предлага възможности на езика за запитвания Cypher, като например използването на израза „CREATE“ за определяне на възли и връзки, израза „MATCH“ за търсене на данни в графа според зададени условия (WHERE), в указан ред (ORDER BY) и с наложени ограничения (SKIP, LIMIT). Резултатният набор от данни, връщан от запитването, се определя чрез израза „RETURN“. За свързване на няколко запитвания в верига е наличен изразът „WITH“.

Възможно е създаването на многомоделни бази данни, съчетаващи модели на йерархично съхранение на свойства в граф, релационен модел и модел на съхранение на документи във формат JSON. Поддържа се изпълнението на интегрирани запитвания, включващи елементи от езиците SQL и Cypher.
Достъпно е създаването на индекси за свойствата на върховете и ръбовете на графа.
За използване е предложен разширен комплект от типове Agtype, включващ типове за ръбове, върхове и пътища в графа. Агрегатни изрази все още не са реализирани. Сред наличните специализирани функции: id, start_id, end_id, type, properties, head, last, length, size, startNode, endNode, timestamp, toBoolean, toFloat, toInteger и coalesce.

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

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster