Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 3948|Odgovoriti: 0

[Komunikacija] OData – OData proti GraphQL

[Kopiraj povezavo]
Objavljeno na 20. 05. 2023 20:28:50 | | | |
GraphQL je zelo priljubljen, zelo zmogljiv, vendar je temeljno drugačen od OData. Torej ni tako, da bi bil eden popolnoma boljši od drugega.



Obstaja nekaj točk, ki jih lahko razumem.

OData = SQL v URL


OData je bil način serializacije SQL stavka v URL

Težko je omejiti možnost poizvedb na strani odjemalca.

OData standardizirana


Specifikacija OData je njena prednost, tako kot RPC uporablja RESTful. RESTful ima specifikacije in je enostaven za razumevanje, vendar ni enostavno izraziti vsega. RPC lahko izrazi vse, vendar je preveč nestandardiziran.

Pomanjkljivosti OData


OData je običajno bolj stroga kot stanje sheme baze podatkov (torej je podobna SQL Queryju), in ko se shema spremeni, je težje vzdrževati staro različico.

OData daje prednost enotnemu upravljanju in je težko optimizirati za posebne primere.

Najbolje opisano


OData je kot SQL Query, GraphQL je kot shranjena procedura. Počasi okušaš.

Zato morata ta dva sobivati in se medsebojno dopolnjevati.


Povzetek

OData je kot SQL Query, GraphQL je kot shranjena procedura.

OData je kot RESTful, GraphQL pa kot RPC

Ko želite preprosto poenotenje, boste našli RESTFul odličen, SQL Query je dovolj, OData je dobra.

A ko imate posebne situacije in ne morete uporabiti preproste metode, RPC, shranjene procedure, GraphQL poudari svoj čar.

Poglejmo si scenarije uporabe obeh strani. OData je nagnjena k API-ju za poslovne aplikacije, kot je SAP. Običajno je to preprostejši, relacijski vzorec baze podatkov.

GraphQL je internetna aplikacija, izpostavljen API in katerakoli vrsta podatkov (kot je NoSQL)

Torej, povzemimo, GraphQL lahko izrazi več (svobodneje) kot OData, OData ima pravila (več omejitev) kot GraphQL

Kateri je to, ali GraphQL za zunanji svet ali OData za notranji svet, res je odvisno od projekta, ali ga uporabljaš.

【OData】(1) Osnovno znanje OData
https://www.itsvse.com/thread-10508-1-1.html





Prejšnji:C# EPPlus Bulk Style celice
Naslednji:ASP.NET Core (devetnajst) uporablja BackgroundService za izvajanje ozadja
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com