Famoahana ny grafika fifandraisana DBMS EdgeDB 2.0

Ny famoahana ny EdgeDB 2.0 DBMS dia aseho, izay mampihatra ny maodely angon-drakitra momba ny grafika fifandraisana sy ny fiteny fitakiana EdgeQL, natao ho an'ny fiasana miaraka amin'ny angon-drakitra ambaratonga sarotra. Ny kaody dia nosoratana tamin'ny Python sy Rust (parser sy ampahany manan-danja amin'ny fampisehoana) ary zaraina amin'ny alΓ lan'ny lisansa Apache 2.0. Ny tetikasa dia novolavolaina ho add-on ho an'ny PostgreSQL. Ny tranomboky mpanjifa dia voaomana ho an'ny Python, Go, Rust ary TypeScript/Javascript. Manome fitaovana andalana baiko ho an'ny fitantanana DBMS sy ny fanatanterahana ny fangatahana interactive (REPL).

Raha tokony ho modely angon-drakitra mifototra amin'ny latabatra, ny EdgeDB dia mampiasa rafitra fanambarana mifototra amin'ny karazana zavatra. Raha tokony ho fanalahidy vahiny, ny fampifandraisana amin'ny alΓ lan'ny fanondroana dia ampiasaina hamaritana ny fifandraisana misy eo amin'ny karazana (zavatra iray dia azo ampiasaina ho fananan'ny zavatra iray hafa).

karazana Olona { takina anarana fananana -> str; } karazana Sarimihetsika { lohatenin'ny fananana ilaina -> str; mpilalao maro rohy -> Olona; }

Ny fanondroana dia azo ampiasaina hanafaingana ny fanodinana fanontaniana. Tohanana ihany koa ny endri-javatra toy ny fanoratana fananana matanjaka, famerana ny sandan'ny fananana, fananana kajy, ary fomba fiasa voatahiry. Ny endri-javatra amin'ny rafitra fitahirizana zavatra EdgeDB, izay somary mampahatsiahy ny ORM, dia ahitana ny fahafahana mampifangaro skema, mampifandray ny fananana avy amin'ny zavatra samihafa, ary ny fanohanana JSON.

Ny fitaovana naorina dia omena amin'ny fitehirizana ny fifindra-monina schema - rehefa avy nanova ny schema voatondro ao amin'ny rakitra esdl misaraka, dia mandehana fotsiny ny baiko "edgedb migration create" ary ny DBMS dia hamakafaka ny fahasamihafana ao amin'ny schema ary mamorona script ho an'ny fifindrana mankany amin'ny schema vaovao. Araho ho azy ny tantaran'ny fiovan'ny skema.

Mba hamoronana fanontaniana dia samy tohanana ny fiteny fitakiana GraphQL sy ny fiteny EdgeDB manokana, izay fampifanarahana ny SQL ho an'ny angon-drakitra ambaratongam-pahefana. Raha tokony ho lisitra, ny valin'ny fanontaniana dia amboarina amin'ny fomba voarafitra, ary raha tokony ho subqueries sy JOINs, dia azonao atao ny mamaritra ny fangatahana EdgeQL iray ho fanehoana ao anatin'ny fangatahana hafa. Tohanana ny fifampiraharahana sy ny tsingerina.

safidio Movie { lohateny, mpilalao: { anarana } } sivana .title = "The Matrix" ampidiro Movie { title := "The Matrix Resurrections", mpilalao := ( safidio ny Person filter .name in { 'Keanu Reeves', 'Carrie- Anne Moss', 'Laurence Fishburne' } ) } ho an'ny isa ao amin'ny sendika {0, 1, 2, 3} ( fidio { isa, isa + 0.5 } );

Ao amin'ny dikan-teny vaovao:

  • Nampiana interface tsara an-tranonkala namboarina ho an'ny fitantanana angon-drakitra, ahafahanao mijery sy manitsy angon-drakitra, mampandeha ny fangatahana EdgeQL ary mamakafaka ny rafitra fitahirizana ampiasaina. Ny interface dia natomboka tamin'ny baiko "edgedb ui", ary avy eo dia azo alaina rehefa miditra amin'ny localhost.
    Famoahana ny grafika fifandraisana DBMS EdgeDB 2.0
  • Ny fomba fiteny "GROUP" dia nampiharina, ahafahanao mizara sy manambatra angona sy angon-drakitra amin'ny alΓ lan'ny fitenenana EdgeQL tsy misy dikany, mitovy amin'ny fanangonana amin'ny hetsika SELECT.
  • Fahaizana mifehy ny fidirana amin'ny haavon'ny zavatra. Ny fitsipiky ny fidirana dia voafaritra amin'ny haavon'ny skema fitahirizana ary mamela anao hametra ny fahafahana mampiasa andian-javatra sasany amin'ny hetsika maka, mampiditra, mamafa ary manavao. Ohatra, azonao atao ny manampy fitsipika izay mamela ny mpanoratra hanavao ny famoahana.
  • Nampiana ny fahafahana mampiasa fari-pahalalana manerantany amin'ny tetika fitahirizana. Misy variable global current_user natolotra hamatotra ny mpampiasa.
  • Fanohanana fanampiny ho an'ny karazana izay mamaritra ny salan'isa.
  • Efa voaomana ny tranomboky mpanjifa ofisialy ho an'ny fiteny Rust.
  • Ny protocole binary EdgeDB dia naorina, izay ahafahana mandamina fivoriana maromaro miaraka amin'ny fifandraisana amin'ny tambajotra mitovy, alefa amin'ny alΓ lan'ny HTTP, amin'ny fampiasana ny fari-piainana manerantany sy ny fanjakana eo an-toerana.
  • Fanampiana fanampiny ho an'ny fampahavitrihana socket, izay ahafahanao tsy mitazona ny mpizara mpizara ao anaty fitadidiana ary mampandeha izany raha tsy manandrana mametraka fifandraisana (ilaina amin'ny fitahirizana loharano amin'ny rafitra mpamorona).

Source: opennet.ru

Add a comment