EdgeDB, diagrammas relāciju datu DBVS

Nesen tika paziņots par DBVS «EdgeDB 2.0» izlaišanu, kas ievieš relāciju grafiku relāciju datu modeli un EdgeQL vaicājumu valodu, kas optimizēta darbam ar sarežģītiem hierarhiskiem datiem.

EdgeDB ir atvērtā koda datu bāze, kas izveidota kā SQL un relāciju paradigmas garīgais pēctecis. Tās mērķis ir atrisināt dažas sarežģītas dizaina problēmas, kas padara esošās datu bāzes nevajadzīgi apgrūtinošu lietošanu.

EdgeDB, ko darbina Postgres vaicājumu dzinējs, kas atrodas zem pārsega, domā par shēmu tāpat kā jūs: kā objektus ar īpašībām, kas savienotas ar saitēm. Tā ir kā relāciju datu bāze ar objektorientētu datu modeli vai grafiku datu bāze ar stingru shēmu. Mēs to saucam par grafiku relāciju datu bāzi.

Par EdgeDB

Projekts tiek izstrādāts kā PostgreSQL spraudnis. Klientu bibliotēkas ir sagatavotas Python, Go, Rust un TypeScript/Javascript valodām.

Tabulas datu modeļa vietā EdgeDB izmanto deklaratīvu sistēmu, kuras pamatā ir objektu tipi. Ārējo atslēgu vietā (svešā atslēga), lai noteiktu attiecību starp veidiem, tiek izmantota atsauces saistīšana (objektu var izmantot kā cita objekta īpašumu).

Indeksus var izmantot, lai paātrinātu vaicājumu apstrādi. Arī tiek atbalstītas tādas funkcijas kā spēcīga rekvizītu ievadīšana, īpašuma vērtību ierobežojumi, aprēķinātie rekvizīti un saglabātās procedūras. Dažas EdgeDB objektu krātuves shēmas funkcijas, kas nedaudz atgādina ORM, ietver iespēju jaukt shēmas, saistīt dažādu objektu rekvizītus un atbalstu iegultajam JSON.

Migrēšanai tiek nodrošināti iebūvēti rīki krātuves shēma: pēc atsevišķā esdl failā norādītās shēmas maiņas vienkārši palaidiet komandu “edgedb migration create”, un DBVS analizēs shēmas atšķirības un interaktīvi ģenerēs skriptu. lai migrētu uz jauno shēmu. Shēmas modifikāciju vēsture tiek izsekota automātiski.

Vaicājumu veikšanai izmantojiet gan GraphQL vaicājumu valodu, gan kā sava valoda EdgeDB, kas ir SQL adaptācija hierarhiskiem datiem. Sarakstu vietā vaicājuma rezultātiem ir strukturēts formāts, un apakšvaicājumu un JOIN vietā EdgeQL vaicājumu var norādīt kā izteiksmi citā vaicājumā. Tiek atbalstīti darījumi un cikli.

Galvenās EdgeDB 2.0 jaunās funkcijas

Jaunajā versijā, kas tika prezentēta, ir pievienots integrēts tīmekļa interfeiss datu bāzes administrēšanai ļauj skatīt un rediģēt datus, palaist EdgeQL vaicājumus un analizēt izmantoto uzglabāšanas shēmu. Saskarne tiek startēta ar komandu "edgedb ui", pēc kuras tā ir pieejama, piekļūstot localhost.

Izteiciens "GROUP" tika ieviesta, lai atļautu datu sadalīšanu un apkopošanu un datu grupēšana, izmantojot patvaļīgas EdgeQL izteiksmes, līdzīgi kā grupēšana operācijā SELECT.

Spēja kontrolēt piekļuvi objekta līmenī, piekļuves noteikumi ir definēti krātuves shēmas līmenī un ļauj ierobežot noteiktas objektu kopas izmantošanu atlases, ievietošanas, dzēšanas un atjaunināšanas darbībās. Piemēram, varat pievienot noteikumu, kas ļauj tikai autoram atjaunināt ziņu.

Tas ir arī izcelts pievienota iespēja izmantot globālos mainīgos uzglabāšanas shēmā. Lai izveidotu saiti ar lietotāju, ir ierosināts jauns globālais mainīgais.

Starp pārējām izmaiņām, kas izceļas:

  • Ir sagatavota rustu valodas oficiālā klientu bibliotēka.
  • Stabilizēts EdgeDB binārais protokols, kurā ir kļuvis iespējams apstrādāt vairākas dažādas sesijas vienlaicīgi viena tīkla savienojuma ietvaros, pārsūtot pa HTTP, izmantojot globālos mainīgos un lokālos stāvokļus.
  • Pievienots atbalsts veidiem, kas nosaka vērtību diapazonus (diapazons).
  • Pievienots atbalsts ligzdas aktivizēšanai, kas ļauj neglabāt servera draiveri atmiņā un palaist to tikai mēģinot izveidot savienojumu (noder resursu taupīšanai izstrādes sistēmās).

Beidzot tiem, kurus interesē uzzināt vairāk par to, viņiem jāzina, ka kods ir rakstīts Python un Rust valodās un ir izlaists saskaņā ar Apache 2.0 licenci.

Vairāk par to varat uzzināt vietnē šī saite.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.