Stiekem kan ik niet wachten totdat deze NoSQL storm weer voorbij is. Ik werk met genoeg data (zo'n 10PB kan hier opgeslagen worden) om te weten dat relationeel vaak een beperking is, maar een silver bullet in de vorm van NoSQL?
Er staat letterlijk in het artikel dat er uberhaupt geen 'silver bullet' is als het op database technieken aankomt, dus net zo min als dat NoSQL oplossingen dat zullen worden, zijn relationele databases dat ooit geweest.
Tot niet zo lang geleden werden SQL databases overigens wel als een soort van 'silver bullet' oplossing gebruikt, en werd er zelfs niet eens over alternatieven nagedacht. Database == SQL werd/wordt er vaak gedacht, zelfs als dat betekende dat je uiteindelijk voornamelijk BLOB's aan het opslaan was voor data die niet makkelijk in tabellen en relaties te vangen is. Ik loop er op het werk nog dagelijks tegenaan, waar ik werk 'hebben we Oracle', dus elk nieuw product moet Oracle gebruiken want 'Oracle is een enterprise-grade database', en 'we hebben er toch al voor betaald'

.
Feit blijft dat je voor unstructured/semi-structured of document-oriented data jezelf gewoon allerlei onnodige beperkingen oplegt als je voor een relationele database kiest. Voornamelijk het ontwerpen, onderhouden en in code implementeren van het database schema kost gewoon ram-veel tijd, en zorgt er vaak voor dat het schema simpelweg als 'heilig' wordt beschouwd, omdat er bij elke verandering anders iemand aan de gang moet om het schema te updaten, de data te 'upgraden', nieuwe views aan te maken, code die met de database communiceert aan te passen, etc. In de praktijk komt dit er vaak op neer dat producen rond databases worden gebouwd die als afvalbak gebruikt worden, omdat het gewoon niet de doen is om krampachtig te proberen alles wat je wilt opslaan in een tabel-relatie vorm te gieten. Wat is dan nog je voordeel van een relationele database, als je je data toch plat gaat slaan of je schema niet meer kunt/wilt aanpassen aan nieuwe datavormen of voortschrijdend inzicht? Iets met square pegs en round holes...
Ik snap dus niet helemaal waarom je het punt in feite probeert om te draaien met je opmerkingen dat je geen heil ziet in 'NoSQL als silver bullet', terwijl NoSQL juist een stap is om van 'SQL als silver bullet' af te komen.
[...] maar ik vrees dat het gevaar dat het een buzzwoord wordt, zoals Rob Coops, aanwezig is
Persoonlijk vind ik het een vrij kortzichtige opmerking om te stellen dat NoSQL een buzzword is, en daarom waarschijnlijk iets wat overwaait. Zoals het artikel ook al aangeeft worden NoSQL-achtige oplossingen al op zeer grote schaal professioneel gebruikt voor oplossingen die je met SQL-achtige oplossingen uberhaupt niet voor elkaar zou krijgen.
NoSQL/schema-less databases zijn zeker geen 'buzzword technologieen'. Misschien dat het nu ineens veel aandacht krijgt om wat voor reden dan ook, maar dat neemt niet weg dat dit soort databases een zeer duidelijk toepassingsgebied hebben waar relationele databases gewoon een slechte keus voor zouden zijn.
Wat ik trouwens nog mis aan het artikel is een alinea'tje over object-oriented databases zoals bijvoorbeeld ZODB, welke ook als NoSQL gezien kunnen worden maar totaal anders werken dan key-value stores, document-oriented databases of andere NoSQL database vormen.
[Reactie gewijzigd door johnbetonschaar op 23 juli 2024 10:54]