PostgreSQL-д өгөгдлийг график хэлбэрээр хадгалах AGE нэмэлтийг бэлтгэсэн

PostgreSQL-ийн хувьд санал болгосон Асуулгын хэлний хэрэгжилттэй AGE (AgensGraph-Extension) нэмэлт openCypher график үүсгэдэг харилцан уялдаатай шаталсан өгөгдлийн багцыг удирдахад зориулагдсан. Графикт чиглэсэн мэдээллийн сан нь багана, мөрийн оронд сүлжээтэй төстэй бүтцийг ашигладаг - зангилаа, тэдгээрийн шинж чанар, зангилаа хоорондын харилцааг зааж өгдөг. НАС тараасан Apache 2.0 лицензийн дагуу лицензтэй, Bitnine Apache сангийн ивээл дор авчирсан бөгөөд одоогоор Апачи инкубаторт байрладаг.

Төсөл нь DBMS-ийн хөгжлийг үргэлжлүүлж байна Агент графикаль нь харуулав график боловсруулахад зориулагдсан өөрчилсөн PostgreSQL өөрчлөлт юм. Гол ялгаа нь AGE-ийг PostgreSQL-ийн стандарт хувилбарууд дээр нэмэлт болгон ажилладаг бүх нийтийн нэмэлт хэлбэрээр хэрэгжүүлэх явдал юм. Саяхан хэвлэгдсэн дугаар Apache AGE 0.2.0 PostgreSQL 11-ийг дэмждэг.

Одоогийн байдлаар AGE дэмждэг Cypher асуулгын хэлний онцлог нь "CREATE" илэрхийлэлийг зангилаа, холбоосыг тодорхойлох, "MATCH" илэрхийллийг графикаас заасан нөхцөлийн дагуу (ХААА), тодорхой дарааллаар (ORDER BY) хайхад ашигладаг. хязгаарлалт тавих (АЛСАХ, ХЯЗГААР). Асуулгад буцаасан үр дүнгийн багцыг "RETURN" илэрхийлэл ашиглан тодорхойлно. "WITH" илэрхийлэл нь олон хүсэлтийг хооронд нь холбох боломжтой.

График хэлбэрээр өмчийн шаталсан хадгалалтын загвар, харилцааны загвар, JSON формат дахь баримт бичгийг хадгалах загварыг хослуулсан олон загварын мэдээллийн санг үүсгэх боломжтой. Энэ нь SQL болон Cypher хэлний элементүүдийг агуулсан нэгдсэн асуулгын гүйцэтгэлийг дэмждэг.
Графикийн орой ба ирмэгийн шинж чанарын индексийг үүсгэх боломжтой.
График дахь ирмэг, орой, замуудын төрлийг багтаасан Agtype төрлийн өргөтгөсөн багцыг ашиглахыг санал болгож байна. Агрегат илэрхийллүүд хараахан хэрэгжээгүй байна. Боломжтой тусгай функцуудад id, start_id, end_id, төрөл, шинж чанар, толгой, сүүлчийн, урт, хэмжээ, startNode, endNode, timetamp, toBoolean, toFloat, toInteger, coalesce орно.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх