Dla PostgreSQL przygotowano rozszerzenie AGE do przechowywania danych w formie grafu

Dla PostgreSQL zaproponowano dodatek AGE (AgensGraph-Extension) z implementacją języka zapytań openCypher 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 rozpowszechniany 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 AgensGraph, który jest 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 Apache AGE 0.2.0 obsługuje pracę z PostgreSQL 11.

W obecnym stanie AGE wspiera 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

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster