Query by Example (QBE) — definicija, zgodovina in uporaba

Query by Example (QBE): jasna definicija, zgodovina in praktična uporaba pri relacijskih podatkovnih zbirkah in iskanju podobnih dokumentov — vizualno poizvedovanje brez SQL.

Avtor: Leandro Alegsa

Query by Example (pogosto skrajšano na QBE) je poizvedovalnijezik za relacijske podatkovne zbirke. Razvil ga je na IBM-u Moshé Zloof v sedemdesetih letih prejšnjega stoletja, medtem ko je razvoj SQL je potekal vzporedno. QBE je bil zasnovan za uporabnike, ki podatkovne zbirke uporabljajo občasno in se ne želijo učiti zapletenih sintaks, kot je SQL; namesto pisanja kode jim QBE ponudi grafični ali tabelarični vmesnik, kjer "prikažejo primer" želenih rezultatov.

Kaj je in kako deluje

S programom Query by Example uporabniku prikažejo vizualno shemo zbirke podatkov ali QBE-mrežo, ki jo ureja poseben urejevalnik. Uporabnik izbere tabele in stolpce (običajno z izbiro ali klikom) ter v zagotovljene polja vnese primerne vrednosti, pogoje ali agregacije. Ko konča, analizator njegova dejanja prevede v poizvedbo v običajnem poizvedovalnem jeziku (npr. SQL) in jo izvrši v ozadju. Tako si uporabniku ni treba zapomniti sintakse poizvedovalnega jezika — uporabnik hitreje izbere tabele in stolpce in vpiše pogoje, kar izboljša produktivnost.

Tipični elementi QBE-vmesnika:

  • mreža ali obrazec s stolpci, ki predstavljajo polja tabele;
  • vrstica za kriterije, kamor vnesemo primerne vrednosti ali operatorje (npr. <, >, BETWEEN, LIKE);
  • možnost označitve istega imena polja v več tabelah za izvajanje join-ov;
  • podpora za agregacije (SUM, COUNT, AVG), razvrščanje in omejevanje rezultatov v razširjenih implementacijah.

Zgodovina in vpliv

QBE je pripravil Moshé Zloof v IBM-ovem raziskovalnem oddelku kot eksperimentalno orodje za poenostavitev dostopa do relacijskih podatkov. Hkrati so se v IBM-u razvijali tudi koncepti, ki so pripeljali do jezika SQL (Donald D. Chamberlin in Raymond F. Boyce). Čeprav ima SQL večjo moč in fleksibilnost, je QBE pomemben zaradi svoje osredotočenosti na uporabnika in intuitiven vmesnik. Ideja "prikaži primer" je vplivala na številne poznejše GUI-sprednje dele podatkovnih baz in na koncept vizualnega oblikovanja poizvedb.

Prednosti in omejitve

Prednosti:

  • nizka stopnja učenja za priložnostne uporabnike;
  • hitrejše sestavljanje osnovnih poizvedb (izbira stolpcev, filtriranje, enostavni join-i);
  • manj napak povezanih s sintakso, ker uporabnik ne piše ročno SQL stavkov;
  • dobro za hitro izdelavo pregledov in poročil s preprostimi pogoji.
Omejitve:
  • v osnovni obliki manj primeren za zelo kompleksne poizvedbe (globoke podpoizvedbe, zapleteni agregati, napredne analize);
  • različne implementacije QBE razlikujejo nabor podprtih funkcij — nekateri vmesniki omogočajo le osnovne kriterije, drugi pa polno pretvorbo v napreden SQL;
  • za napredne optimizacije in prilagoditve poizvedb je včasih vseeno potrebno poznavanje SQL-a.

QBE v kontekstu iskanja informacij

V kontekstu iskanja informacij ima QBE nekoliko drugačen pomen: uporabnik lahko predloži dokument in zahteva, da se iz podatkovne zbirke dokumentov prikažejo "podobni" dokumenti. Takšno iskanje podobnosti temelji na primerjavi vektorjev dokumentov (glej model vektorskega prostora) — sistem primerja lastnosti dokumenta (npr. pomembne besede ali značilnosti) z vektorji drugih dokumentov in vrne najbližje rezultate.

Sodobne uporabe in primeri

Danes ima veliko sistemov podatkovnih zbirk sprednje vmesnike, ki so podobni QBE. Najbolj znan praktičen primer je mreža poizvedovanja v Microsoft Accessu (QBE-grid), kjer uporabnik v vrstico kriterijev vpiše pogoje in nato Access sestavi ustrezen SQL SELECT. Tudi mnogi orodji za poslovno inteligenco (BI), spletne aplikacije za filtriranje in grafični admini podatkovnih baz uporabljajo principe QBE za prijaznejše sestavljanje poizvedb.

Čeprav so moderni uporabniki pogosto pripravljeni delati z SQL-om ali orodji za vizualno ustvarjanje poizvedb, QBE ostaja pomemben pristop tam, kjer je potrebna hitra, intuitivna interakcija z relacijskimi podatki — še posebej pri uporabnikih, ki niso razvijalci ali podatkovni analitiki.

Vprašanja in odgovori

V: Kaj je poizvedba po zgledu?


O: QBE (Query by Example) je poizvedovalni jezik za relacijske podatkovne zbirke.

V: Kdaj je bil razvit QBE?


O: QBE je bil razvit pri IBM-u v sedemdesetih letih prejšnjega stoletja.

V: Zakaj je bil razvit QBE?


O: QBE je bil razvit za uporabnike, ki podatkovne zbirke uporabljajo le občasno in se ne želijo naučiti zapletenega jezika, kot je SQL.

V: Kako deluje QBE?


O: QBE uporabnikom predstavi vizualno shemo podatkovne zbirke, ki jo urejajo s posebnim urejevalnikom. Razčlenjevalnik nato njihova dejanja prevede v poizvedbo v običajnem poizvedovalnem jeziku, kot je SQL, ki se izvede v ozadju.

V: Kako QBE izboljša produktivnost?


O: S QBE lahko uporabniki hitreje izberejo tabele in stolpce, na primer tako, da kliknejo nanje, namesto da bi vnesli njihova imena.

V: Kakšen je kontekst QBE pri iskanju informacij?


O: V okviru iskanja informacij QBE uporabnikom omogoča, da predložijo dokument in zahtevajo, da se podobni dokumenti prikličejo iz podatkovne zbirke dokumentov z uporabo iskanja podobnosti na podlagi primerjave vektorjev dokumentov.

V: Kateri sistemi zbirk podatkov imajo danes prednje strani, ki so podobne QBE?


O: Danes imajo številni sistemi podatkovnih zbirk prednje konce, ki so podobni QBE.


Iskati
AlegsaOnline.com - 2020 / 2025 - License CC3