Dla PostgreSQL dodatek AGE (AgensGraph-Extension) z implementacją języka zapytań do manipulacji zestawami powiązanych ze sobą hierarchicznych danych, tworzących graf. Zamiast kolumn i wierszy, bazy danych ukierunkowane na grafy wykorzystują strukturę przypominającą sieć — definiowane są węzły, ich właściwości oraz relacje między węzłami. AGE na licencji Apache 2.0, przekazany przez firmę Bitnine pod opiekę Fundacji Apache i obecnie znajduje się w inkubatorze Apache.
Projekt kontynuuje rozwój systemu DBMS , który jest zmodyfikowaną wersją PostgreSQL dostosowaną do przetwarzania grafów. Kluczową różnicą jest implementacja AGE w formie uniwersalnego dodatku, działającego jako nakładka na standardowe wersje PostgreSQL. Opublikowana niedawno wersja obsługuje pracę z PostgreSQL 11.
W obecnym stanie AGE posiada takie możliwości języka zapytań Cypher, jak zastosowanie wyrażenia „CREATE” do definiowania węzłów i połączeń, wyrażenie „MATCH” do wyszukiwania danych w grafie według zadanych warunków (WHERE), w określonej kolejności (ORDER BY) i z nałożonymi ograniczeniami (SKIP, LIMIT). Zestaw danych zwracany przez zapytanie określa się za pomocą wyrażenia „RETURN”. Dostępne jest wyrażenie „WITH” do łączenia wielu zapytań w łańcuch.
Możliwe jest tworzenie multimodelowych baz danych, które łączą modele hierarchicznego przechowywania właściwości w formie grafu, relacyjnym modelem oraz modelem przechowywania dokumentów w formacie JSON. Obsługiwane jest wykonywanie zintegrowanych zapytań, które zawierają elementy języków SQL i Cypher.
Dostępne jest tworzenie indeksów dla właściwości wierzchołków i krawędzi grafu.
Do użytku zaproponowano rozszerzony zestaw typów Agtype, w tym typy dla krawędzi, wierzchołków i ścieżek w grafie. Wyrażenia agregacyjne na razie nie zostały zaimplementowane. Wśród dostępnych specjalizowanych funkcji znajdują się: id, start_id, end_id, type, properties, head, last, length, size, startNode, endNode, timestamp, toBoolean, toFloat, toInteger i coalesce.
Źródło: opennet.ru
