Andmebaas EdgeDB on ĂŒmber nimetatud Gel-iks. VĂ€ljaanne Gel 6.0

EdgeDB andmebaasi arendajad on kuulutanud vĂ€lja projekti nimemuutuse Gel-iks. Samuti on avalikustatud uus mĂ€rkimisvÀÀrne vĂ€ljaanne — Gel 6.0. Nime muutmise pĂ”hjuseks on soov vabaneda eksitavatest seostest, mis tulenevad sĂ”na "edge" kasutamisest, mistĂ”ttu paljud inimesed tajuvad projekti kui edge-arvutuste andmebaasi vĂ”i graafipĂ”hise andmebaasina. Nime muutmine mĂ”jutas ainult kaubamĂ€rgi elemente. Projekti struktuur, eesmĂ€rgid ja meeskond jĂ€id endiseks. Uues vĂ€ljaandes on utiliidid ja raamatukogud nimetatud ĂŒmber, kuid tagasijĂ”udluse sĂ€ilitamiseks on vanade nimede kasutamine vĂ”imalik lĂ€bi sĂŒmboolsed lingid ja mĂ€hised.

Projekt areneb PostgreSQL'i peal, rakendades relatsioonilis-graafilist andmemudelit ja pÀringukeelt EdgeQL, mis on optimeeritud keerukate hierarhiliste andmete töötlemiseks. Kood on kirjutatud keeltes Python ja Rust (parser ja jÔudlust mÔjutavad osad) ning seda levitatakse Apache 2.0 litsentsi alusel. Klientide raamatukogud on ette valmistatud keeltele Python, Go, Rust, .NET, Elixir ja TypeScript/Javascript. Pakutakse kÀsurea tööriistu andmebaasi haldamiseks ja interaktiivseks pÀringute tÀitmiseks (REPL).

Gel kasutab andmemudeli asemel, mis pĂ”hineb tabelitel, deklaratiivset sĂŒsteemi objektitĂŒĂŒpide pĂ”hjal. Seoste mÀÀramiseks tĂŒĂŒpide vahel kasutatakse viiteid (ĂŒks objekt vĂ”ib olla teise objekti omadus) vĂ€liste vĂ”tmete (foreign key) asemel.

type Person { required name: str; } type Movie { required title: str; multi actors: Person; }

Toetatakse selliseid funktsioone nagu atribuutide rangetĂŒĂŒbistamine, atribuutide vÀÀrtuste piirangud, arvutatavad atribuudid ja salvestatud protseduurid. Gel objekti salvestusskeemi eripĂ€ra, mis meenutab ORM-i, hĂ”lmab skeemide segamist, atribuutide sidumist erinevatest objektidest ja integreeritud JSON-i tuge. PĂ€ringute töötlemise kiirendamiseks vĂ”ivad olla kasutusel indeksid.

Pakutakse sisseehitatud tööriistu salvestusskeemi migreerimiseks — pĂ€rast skeemi muutmist, mis on mÀÀratud eraldi esdl-failis, piisab kĂ€su „gel migration create” kĂ€ivitamisest, ning andmebaasihaldussĂŒsteem analĂŒĂŒsib skeemi erinevusi ja genereerib interaktiivses reĆŸiimis skripti uuele skeemile ĂŒlemineku jaoks. Skeemi muutuste ajalugu jĂ€lgitakse automaatselt.

PĂ€ringute koostamiseks toetatakse GraphQL-i pĂ€ringukeelt ja omaniku EdgeQL-i keelt, mis on SQL-i kohandatud versioon hierarhiliste andmete jaoks. Tulemustena esitatakse andmed struktureeritud kujul loendite asemel, ja alampĂ€ringute ning JOIN-operatsioonide asemel on vĂ”imalik kasutada ĂŒhte EdgeQL-i pĂ€ringut teise pĂ€ringu sees vĂ€ljendina. Toetatakse tehinguid ja tsĂŒkleid.

valige Film { pealkiri, nÀitlejad: { nimi } } filtri .pealkiri = «The Matrix» lisage Film { pealkiri := «The Matrix Resurrections», nÀitlejad := ( valige Inimene filtri .nimi kuulub { 'Keanu Reeves', 'Carrie-Anne Moss', 'Laurence Fishburne' } ) }

Peamised muudatused Gel 6.0:

  • Lisatud on vĂ”imalus kasutada traditsioonilisi SQL-pĂ€ringute koostamise meetodeid andmebaasi ĂŒhendamisel Gel-protokolli vĂ”i PostgreSQL-protokolli reĆŸiimis. Eeldatakse, et SQL-i tugi lihtsustab olemasolevate projektide migreerimist Gelile, vĂ”imaldades jĂ€rkjĂ€rguliselt ĂŒle minna SQLilt, samas kasutades vanu SQL-kliente ja SQL ORM-i. Projektid, mis on algselt kasutanud EdgeQL-i, saavad kasutada tĂ€iendavaid funktsioone, mis on saadaval SQL-is, kuid mida pole veel EdgeQL-is realiseeritud, nĂ€iteks akna funktsioonid, rekursiivsed pĂ€ringud ja selged lukustused.
  • Lisatud on tugi kohapealseks uuendamiseks, mis ei nĂ”ua andmebaasi dump'i loomist ja ĂŒmberlaadimist uuele olulisele versioonile ĂŒleminekul. Uuendamisel EdgeDB 5.x-st Gil 6.0-le tuleb kasutada vana meetodit, kuid ĂŒleminekul Gil 6.x-lt 7.0-le ei ole dump'i ĂŒmberlaadimine vajalik.
  • Tagatud on pĂ€ringute toimivuse statistika salvestamine, mis on saadaval sys::QueryStats objektide kaudu.
  • Lisatud on PostgreSQL laiendi PostGIS tugi ruumiliste andmete salvestamiseks, mida kasutatakse geograafilistes infotehnoloogia sĂŒsteemides.
  • Lisatud std::net teek, et saata vĂ”rgu pĂ€ringuid (toetab HTTP) asĂŒnkroonses reĆŸiimis.
  • Lisaks ext::auth-le on lisatud OpenID Connect pakkujate seadistamise tugi.
  • Lisaks ext::ai-le on uuendatud toetatud suuri keelemudeleid OpenAI, Anthropic ja Mistral.
  • Ahnud on vĂ”imalus lisada tĂ€iendavaid kĂ€sitlejaid kĂ€sudega utiliidis gel.
  • EdgeQL-is on lihtsustatud semantikat teede leidmiseks graafi sĂ”lmede vahel.
  • gel.toml-is on lisatud seade "[[watch]]", mis vĂ”imaldab kĂ€ivitada skripte, kui muudetakse mÀÀratud faile.
  • ORM Drizzles on rakendatud Gel-i tugi.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster