Computable.nl
  • Thema’s
    • Carrière
    • Innovatie & Transformatie
    • Cloud & Infrastructuur
    • Data & AI
    • Governance & Privacy
    • Security & Awareness
    • Software & Development
    • Werkplek & Beheer
  • Sectoren
    • Channel
    • Financiële dienstverlening
    • Logistiek
    • Onderwijs
    • Overheid
    • Zorg
  • Computable Awards
    • Overzicht
    • Nieuws
    • Winnaars
    • Partner worden
  • Vacatures
    • Vacatures bekijken
    • Vacatures plaatsen
  • Bedrijven
    • Profielen
    • Producten & Diensten
  • Kennisbank
  • Nieuwsbrief

Licht op SQL-‘light’

15 augustus 2002 - 22:006 minuten leestijdOpinieData & AI
Rob (e.a.) Verschoor
Rob (e.a.) Verschoor

"Ik vraag mij af wat precies een SQL-‘light’ versie is, en op welke wijze die een verbetering vormt ten opzichte van de bestaande SQL-implementaties."Rob Verschoor reageert op Rick van der Lans’ pleidooi voor een dergelijke ‘light’ versie.

“Met interesse heb ik uw column ‘SQL met de S van slank’ (Computable, 14 juni) gelezen. Hierin suggereert u dat het uitbrengen van een ‘light’ versie van SQL nuttig zou zijn, omdat de bestaande SQL-dialecten te complex zouden zijn. Het ontgaat mij echter geheel hoe een ‘light’ versie van SQL dit probleem zou kunnen oplossen. Als onder ‘light’ wordt verstaan ‘een beperkte gestandaardiseerde subset van de SQL-taal’, dan bestaat die allang: de ‘entry-level’ van SQL-92 wordt inderdaad door de meeste leveranciers ondersteund. Het is mij niet duidelijk waarom die niet zou voldoen.
Los daarvan is er uiteraard een reden waarom die verschillende dialecten zich hebben ontwikkeld: dergelijke extra functionaliteit blijkt in de praktijk domweg gewenst te zijn, hoe spijtig het bestaan van niet-overdraagbare dialecten ook mag zijn. Ik vraag mij derhalve af wat u precies bedoelt met een SQL-‘light’ versie, en op welke wijze die een verbetering vormt ten opzichte van de bestaande SQL-implementaties. Nadere detaillering zie ik dan ook met belangstelling tegemoet. Overigens constateer ik dat ook in uw column de dynamiek c.q. chaos van het huidige XML-landschap zichtbaar is: u noemt uitsluitend Xquery als XML-taal-in-wording, maar gaat hier voorbij aan het feit dat Xquery slechts een van de diverse standaarden in potentie is. Ook XQL (volgens velen op dit moment de ‘de facto’ standaard) en XML-QL zijn officieel als standaarden voorgesteld bij het W3C; welke er uiteindelijk door het W3C zullen worden aanbevolen is geheel onduidelijk. Los daarvan wemelt het nog van andere varianten als Xpath, Quilt, DQL enzovoorts, waarmee ik maar wil zeggen dat Xquery slechts een van de vele is."
 
Rob Verschoor, Certified Sybase Professional

Rationeel antwoord op overcapaciteit SQL

SQL blijft ook mijn aandacht trekken. Ik heb enkele boeken over SQL geschreven en dan blijft zo’n onderwerp altijd boeien. Daarom wil ik ook graag reageren op de ingezonden brief van Rob Verschoor.
In feite heeft hij drie vragen. De eerste vraag is wat ik met een ‘SQL-light’ versie bedoel en op welke wijze dit een verbetering vormt ten opzichte van de bestaande SQL-implementaties. In zijn brief vraagt hij zich tevens af of het door mij gesignaleerde overdraagbaarheidsprobleem opgelost wordt als een ontwikkelaar zich beperkt tot het ‘entry-level’ van SQL-92. Tenslotte heeft hij een vraag over de verschillende XML-gebaseerde databasetalen.
Met een ‘light’-versie bedoel ik een SQL-product dat alleen klassieke databasefunctionaliteit ondersteunt en geen faciliteiten voor, bijvoorbeeld, XML en/of object-relationele concepten. Voor de meeste administratieve applicaties zal dit voldoende zijn. De bekende databaseservers kunnen we zeker niet als ‘light’ aanduiden, die hebben eerder een overvloed aan functionaliteit. Maar ook al gebruiken we die functionaliteit niet, ze is echter wel aanwezig en kan ons zelfs tegenwerken.
Een voorbeeld aan de hand van een vergelijking. Veronderstel dat ik een forse auto koop met drie rijen banken en gewichtsstabilisatoren – een minibus dus. Als ik altijd de enige passagier van die auto ben en deze nooit zwaar belaad, dan heb ik irrationele overcapaciteit aangeschaft, want de meeste functionaliteit gebruik ik nooit. Deze functionaliteit maakt de auto wel duurder en ongunstig in gebruik, want de auto moet vele kilo’s extra gewicht over het asfalt heen slepen. Een kleine tweezitter is dan waarschijnlijk efficiënter.
Hetzelfde geldt voor de databaseservers waaraan door de jaren heen veel technologie toegevoegd is. De meeste applicaties hebben echter slechts een deel van al die functionaliteit nodig. En net als in de hierboven besproken auto is die functionaliteit er wel, waardoor de databaseservers zware processen geworden zijn. Je kunt je beperken tot een subset van de SQL-taal, maar die ongebruikte functionaliteit draait wel mee. Vandaar mijn wens voor SQL-‘light’ versies waar niet veel extra functionaliteit in zit. Deze behoren dan goedkoper te zijn, de handleidingen zullen dunner zijn, databasebeheerders zullen minder parameters hoeven in te stellen, de optimaliseerders hoeven met minder aspecten rekening te houden, en zo kan ik nog wel even doorgaan.

Toepassing subset

Er is altijd wat te zeggen voor beperking tot een overdraagbare subset van SQL, zoals Verschoor schrijft. Wel moeten we ons dan bewust zijn van twee aspecten. Ten eerste sluiten we ons hiermee af van veel functies die het gebruik van een SQL-producten kunnen versnellen. En ook al kiezen we een kleine subset, dan zal het toch nog lastig zijn echt overdraagbare SQL-applicaties te creëren. Bijvoorbeeld, de beruchte ‘null’-waarde is niet door elke leverancier identiek geïmplementeerd. Probeer maar eens de volgende subquery "select * from tabel1 where kolom1 not in (subquery)". Als in een bepaalde rij de waarde van kolom1 gelijk is aan de ‘null’-waarde, en tegelijkertijd het resultaat van de subquery leeg is, dan zullen bijvoorbeeld DB2 en Oracle verschillende resultaten geven. Ook het rekenen met datums is niet door iedereen gelijkwaardig geïmplementeerd.
Het toepassen van een subset van SQL kan kortom nuttig zijn, maar er kleven wel degelijk nadelen aan en het bepalen van de perfect overdraagbare SQL-subset is een grotere uitdaging dan vaak gedacht wordt. Niet alleen moet bepaald worden of de syntax gelijk is, maar de verwerking van de syntax (ofwel de semantiek van de taal) moet ook bestudeerd worden. En dat laatste halen we niet eventjes uit de handleidingen.
De derde vraag van de heer Verschoor betreft XML en SQL. In mijn column gaf ik aan dat XQuery nog geen bedreiging vormt voor SQL. Verschoor meldt dat er ook nog andere XML-gerelateerde talen zijn, zoals Quilt, XPath en XQL. Ik heb me in mijn column alleen gericht op XQuery, omdat die nog minder de hegemonie van SQL kunnen bedreigen als XQuery.
Toch enkele opmerkingen over enkele van deze talen. Quilt was het voorstel van Donald Chamberlin van IBM, maar die werkt nu aan XQuery. Voor hem is het Quilt-project afgelopen. XPath kan geen databasetaal genoemd worden. Zelfs de betiteling ‘query’-taal zou nog te sterk zijn. Het is een taaltje om bepaalde delen van een XML-document te identificeren. Dat is niet voldoende voor een ‘query’-taal. XPath zal weliswaar binnen andere talen gebruikt worden, zoals SQL en XQuery, maar dat maakt haar nog geen databasetaal. Varianten van XQL zijn wel reeds door enkele leveranciers geïmplementeerd, maar het is zo goed als zeker dat veel leveranciers die taal op de lange termijn door XQuery zullen vervangen.
SQL kan alleen in haar hegemonie bedreigd worden, als enkele grote, bekende databaseleveranciers een nieuwe databasetaal implementeren.
Zoals het er nu uitziet, is Xquery de enige mogelijke kandidaat.
 
Rick van der Lans

Meer over

ECMSQL

Deel

    Inschrijven nieuwsbrief Computable

    Door te klikken op inschrijven geef je toestemming aan Jaarbeurs B.V. om je naam en e-mailadres te verwerken voor het verzenden van een of meer mailings namens Computable. Je kunt je toestemming te allen tijde intrekken via de af­meld­func­tie in de nieuwsbrief.
    Wil je weten hoe Jaarbeurs B.V. omgaat met jouw per­soons­ge­ge­vens? Klik dan hier voor ons privacy statement.

    Whitepapers

    Computable.nl

    Bouw de AI-organisatie niet op los zand

    Wat is de afweging tussen zelf bouwen of het benutten van cloud?

    Computable.nl

    De weg van dataverzameling naar impact

    Iedere organisatie heeft data, maar niet iedereen weet hoe je het goed gebruikt. Hoe zet je waardevolle informatie om in actie?

    Computable.nl

    In detail: succesvolle AI-implementaties

    Het implementeren van kunstmatige intelligentie (AI) biedt enorme kansen, maar roept ook vragen op. Deze paper beschrijft hoe je als (middel)grote organisatie klein kunt starten met AI en gaandeweg kunnen opschalen.

    Meer lezen

    Jacob Spoelstra argwanend
    OpinieData & AI

    Spoelstra Spreekt: Veel te laat

    Europese Unie
    AchtergrondData & AI

    Wake-up call voor inkopers ai

    ActueelCarrière

    Kort: Brunel viert 50ste verjaardag, Wortell wint gunning veiligheidsregio (en meer)

    ActueelCarrière

    Kort: reorganisatie bij TomTom, investeringen in ai betaalt zich snel uit (en meer)

    ActueelData & AI

    EU breidt ai-platform uit met marktplaats en tools voor gen-ai

    ActueelData & AI

    Fundament onder Groningse ai-fabriek

    Geef een reactie Reactie annuleren

    Je moet ingelogd zijn op om een reactie te plaatsen.

    Populaire berichten

    Meer artikelen

    Uitgelicht

    Partnerartikel
    AdvertorialInnovatie & Transformatie

    Ontdek de toekomst van IT-support en m...

    Op 16 september 2025 vindt in de Jaarbeurs in Utrecht een gloednieuw event plaats dat volledig is gericht op IT-professionals:...

    Meer persberichten

    Footer

    Direct naar

    • Carrièretests
    • Kennisbank
    • Planning
    • Computable Awards
    • Magazine
    • Abonneren Magazine
    • Cybersec e-Magazine

    Producten

    • Adverteren en meer…
    • Jouw Producten en Bedrijfsprofiel
    • Whitepapers & Leads
    • Vacatures & Employer Branding
    • Persberichten

    Contact

    • Colofon
    • Computable en de AVG
    • Service & contact
    • Inschrijven nieuwsbrief
    • Inlog

    Social

    • Facebook
    • X
    • LinkedIn
    • YouTube
    • Instagram
    © 2025 Jaarbeurs
    • Disclaimer
    • Gebruikersvoorwaarden
    • Privacy statement
    Computable.nl is een product van Jaarbeurs