Relaatiokaavion DBMS EdgeDB 2.0 julkaisu

EdgeDB 2.0 on nyt saatavilla. Se toteuttaa relaatiograafitietomallin ja EdgeQL-kyselykielen, jotka on optimoitu monimutkaisen hierarkkisen datan käsittelyyn. Koodi on kirjoitettu Pythonilla ja Rustilla (jäsennin ja suorituskyvyn kannalta kriittiset osat) ja se jaetaan Apache 2.0 -lisenssillä. Projektia kehitetään PostgreSQL-lisäosana. Asiakaskirjastoja on saatavilla Pythonille, Go:lle, Rustille ja TypeScript/Javascriptille. Tarjolla on komentorivityökalut tietokannan hallinnan ja interaktiivisen kyselyn suorittamisen (REPL) suorittamiseen.

Taulukkopohjaisen tietomallin sijaan EdgeDB käyttää objektityyppiin perustuvaa deklaratiivista järjestelmää. Vieraiden avainten sijaan linkittämistä käytetään viittauksella määrittämään tyyppien välinen suhde (yksi objektia voidaan käyttää toisen objektin ominaisuutena).

type Person { pakollinen ominaisuus nimi -> str; } type Movie { pakollinen ominaisuus otsikko -> str; monilinkkiset toimijat -> Person; }

Indeksejä voidaan käyttää kyselyiden käsittelyn nopeuttamiseen. Myös ominaisuuksia, kuten vahva ominaisuustyypitys, ominaisuusarvorajoitukset, lasketut ominaisuudet ja tallennetut proseduurit, tuetaan. EdgeDB:n objektitallennusskeema, joka muistuttaa hieman ORM:ää, sisältää mahdollisuuden yhdistää skeemoja, linkittää ominaisuuksia eri objekteista ja integroidun JSON-tuen.

Sisäänrakennetut työkalut toimitetaan skeeman siirron tallentamiseen - kun olet muuttanut erillisessä esdl-tiedostossa määritettyä skeemaa, suorita "edgedb migration create" -komento ja DBMS analysoi skeeman erot ja luo interaktiivisesti komentosarjan siirtymistä varten uusi kaava. Kaavan muutoshistoriaa seurataan automaattisesti.

Kyselyiden luontia tuetaan sekä GraphQL-kyselykielellä että EdgeDB:n omalla kielellä, joka on SQL:n mukautus hierarkkiselle datalle. Listojen sijaan kyselytulokset esitetään jäsennellyssä muodossa, ja alikyselyiden ja JOIN-operaatioiden sijaan on mahdollista määrittää yksi EdgeQL-kysely lausekkeena toisen kyselyn sisällä. Transaktiot ja silmukat ovat tuettuja.

select Movie { title, actors: { name } } filter .title = "Matrix" insert Movie { title := "Matrix: Ylösnousemukset", actors := ( select Person filter .name in { 'Keanu Reeves', 'Carrie-Anne Moss', 'Laurence Fishburne' } ) } for number in {0, 1, 2, 3} union ( select { number, number + 0.5 } );

Uudessa versiossa:

  • Tietokannan hallintaan on lisätty sisäänrakennettu web-käyttöliittymä, jonka avulla voit tarkastella ja muokata tietoja, suorittaa EdgeQL-kyselyitä ja analysoida nykyistä tallennusjärjestelmää. Käyttöliittymä käynnistetään komennolla "edgedb ui", mikä tekee siitä käytettävissä localhostia käytettäessä.
    Relaatiokaavion DBMS EdgeDB 2.0 julkaisu
  • "GROUP"-lauseke on otettu käyttöön, minkä ansiosta voit osioida ja koota tietoja sekä ryhmitellä niitä mielivaltaisilla EdgeQL-lausekkeilla, samalla tavalla kuin ryhmittely SELECT-operaatiossa.
  • Objektitason käyttöoikeuksien hallinta. Käyttöoikeussäännöt määritellään tallennusrakenteen tasolla, ja niiden avulla voit rajoittaa tietyn objektijoukon käyttöä valinta-, lisäys-, poisto- ja päivitystoiminnoissa. Voit esimerkiksi lisätä säännön, joka sallii vain tekijän päivittää julkaisua.
  • Mahdollisuus käyttää globaaleja muuttujia tallennuskaavassa on lisätty. Käyttäjäkohtaista sidontaa varten on ehdotettu uutta globaalia muuttujaa, current_user.
  • Lisätty tuki tyypeille, jotka määrittelevät arvoalueita.
  • Rust-kielen virallinen asiakaskirjasto on valmisteltu.
  • EdgeDB-binääriprotokollaa on vakautettu, mikä mahdollistaa useiden eri istuntojen samanaikaisen käsittelyn yhden verkkoyhteyden sisällä, HTTP-edelleenlähetyksen sekä globaalien muuttujien ja paikallisten tilojen käytön.
  • Lisätty tuki soketin aktivoinnille, jonka avulla voit olla pitämättä palvelimen käsittelijää muistissa ja käynnistää sen vain, kun yhteyttä yritetään muodostaa (hyödyllinen resurssien säästämiseksi kehittäjäjärjestelmissä).

Lähde: opennet.ru

Osta luotettava isännöinti sivustoille, joissa on DDoS-suojaus, VPS VDS -palvelimet 🔥 Osta luotettavaa verkkosivustojen hostingia DDoS-suojauksella, VPS VDS -palvelimilla | ProHoster