De toekomst van de commerciële database is nauw verbonden met de mogelijkheid om hardwareplatformen met meerdere cpu’s te gebruiken. Bij zowel aanbieders als gebruikers bestaat echter veel verwarring over parallelle databasetechnologie. Met het onderzoeksrapport ‘Parallel database technology’ wil Bloor Research een overzicht geven van de mogelijkheden die multiprocessorsystemen en de daarop draaiende databases te bieden hebben.
Het rapport Parallel database technology: An evaluation and comparison of scalable systems bespreekt zowel smp- als mpp-systemen. Smp staat voor symmetric multi-processing ofwel symmetrische multi-verwerking en mpp voor multiple/massively parallel processing ofwel meervoudige/massale parallelle verwerking. ‘Massaal’ verwijst naar de veelal aanwezige mogelijkheid om het systeem uit te breiden, zodat het grote hoeveelheden processoren – zelfs honderd of meer – bevat, waarbij elke processor zijn eigen geheugen heeft. Smp-systemen zijn in veel beperktere mate schaalbaar; de processoren delen geheugen.
Smp- en mpp-systemen zijn bij uitstek de machines voor grote datawarehouse– ofwel gegevenspakhuis-applicaties. Smp-systemen worden met name gebruikt voor commerciële oltp-applicaties (online transaction processing). Volgens de onderzoekers zullen met de verdere ontwikkeling van de parallelle hardwaretechnologie beide vormen steeds dichter naar elkaar toegroeien, om uiteindelijk samen te vallen in een algemene hardware-architectuur.
Een hardnekkige mythe is volgens het rapport de claim van leveranciers dat, als een parallel systeem prestatieproblemen geeft, deze zijn op te lossen door extra of grotere processoren in te pluggen. Of meer of snellere processoren echt kunnen zorgen voor een prestatieverbetering, hangt in werkelijkheid af van het ontwerp van het dbms (database management systeem), van de applicaties en van de interne hardwaretechnologie die de cpu’s verbindt.
Beknopte evaluatie
De onderzoekers waarschuwen organisaties die bezig zijn een systeem te selecteren dat ze niet teveel waarde moeten hechten aan de door leveranciers aangedragen benchmark-resultaten. De hoofdreden om benchmarks sowieso te wantrouwen is dat ze nooit echte situaties weergeven. Het rapport geeft dan ook niet door middel van cijfers aan hoe goed bijvoorbeeld een dbms-produkt is. De prestatie van een databasesysteem zal altijd afhangen van vier factoren: de hardware, het dbms, de database zelf (het volume en de structuur van de gegevens) en het gebruikspatroon (de werklast). Bij de keuze van een parallelle database moeten de databasesoftware en -hardware vooral in harmonie zijn, zowel onderling als met de gekozen applicatie.
Desondanks geeft Bloor Research Group een beknopte evaluatie van de bevindingen. Het 524 pagina’s dikke rapport moet immers hulp bieden bij het maken van keuzes.
Bij de dbms-leveranciers zou Informix als beste uit de bus komen, mits niet gekeken wordt naar de eigenschap continuïteit. Is de continuïteit van het systeem wel van doorslaggevend belang, dan biedt Tandem met zijn Nonstop SQL/MP het beste produkt in de mpp-categorie, hoewel Informix, DB2 en White Cross beter zijn in het afhandelen van complexe queries onder mpp. In smp-implementaties zijn Informix en Oracle sterk als het gaat om de prestatie. Eveneens goed is Adabas. Gaat het om portabiliteit, dat scoort Oracle het best.
Keuzes bij poorten
Wat de hardware betreft zijn in totaal vijftien platformen bekeken, twaalf mpp- en drie smp-systemen. Bij de mpp-machines kwamen op het punt van schaalbaarheid de RM1000 van Pyramid en de Exemplar van Convex als beste naar voren. Ook de RS/6000 SP2 van IBM en Meiko CS2 deden het goed. De configureerbaarheid was het best bij de Alphaserver 8400 van Digital, op de voet gevolgd door de systemen van AT&T, Convex, Cray, SGI en Sequent. De beschikbaarheid was het grootst bij Tandem en Digital, maar AT&T, Cray, IBM, Meiko en Pyramid scoorden hier ook goed. Over het geheel genomen, aldus de onderzoekers, lijken de SP2 van IBM en de 8400 van Digital uitstekende all round-aanbiedingen. De 5100 van AT&T lijkt ook een juiste keuze, maar is minder goed schaalbaar. Bij de smp-machines komen Cray en SGI goed uit de evaluatie.
Het rapport beoordeelt de parallelle database-produkten van twintig aanbieders. Van die twintig leveren slechts vijf zowel de software – het parallelle dbms – als de hardware. Negen leveranciers bieden parallelle computers, maar geen dbms-software, terwijl zes wel parallelle dbms-produkten verkopen, maar geen hardware. Zij moeten samenwerken met hardwareleveranciers om het dbms naar het parallelle systeem te ‘poorten’. Het rapport noemt het niet verbazingwekkend dat alleen Oracle te poorten is naar alle open parallelle platformen die bij dit onderzoek betrokken werden. De keuzes die de kleinere dbms-leveranciers bij de selectie van een of meerdere parallelle systemen waar hun software naar te poorten valt, zijn zowel ingegeven door marketingfactoren als door technische mogelijkheden. Eén van die marketingfactoren kan zijn dat een dbms-leverancier een platform zal mijden dat al te sterke banden heeft met een concurrerende dbms-leverancier.
Niet de complete oplossing
Database-bewerkingen worden vaak gekarakteriseerd als ofwel online transactieverwerking (oltp), ofwel datawarehousing. Bij oltp gaat het om een groot aantal kleine transacties, waarbij iedere transactie voor een paar veranderingen zorgt in de database. Bij gegevenspakhuizen gaat het om een klein aantal relatief complexe zoekacties, waarbij het vaker het ophalen van gegevens betreft dan het veranderen ervan. Het zal niet dikwijls mogelijk zijn om op dezelfde database goede prestaties te realiseren voor zowel oltp als gegevenspakhuizen.
In de wereld van parallelle relationele dbms’en is het bijna ondenkbaar dat een leverancier geen SQL-interface bij zijn systeem zou bieden. Deze dient niet zozeer het gemak van de gebruiker, als wel dat van de ontwikkelaars van softwaretools voor het benutten van de database. Daarbij kan het gaan om 4GL’s (vierde-generatie talen), eis’en (executive informatiesysteem), pakketten voor statistische analyse of op gui’s (grafische gebruikersinterface) gebaseerde gebruiksvriendelijke zoekfaciliteiten.
Gebruikers zien parallelle computertechnologie niet als de complete oplossing voor hun informatiesystemen. Bij een groot aantal organisaties vervult een parallelle database maar een kleine rol. Daarom is het voor veel (toekomstige) gebruikers van belang dat het parallelle platform kan samenwerken met andere computersystemen.
Weinig echte ervaring
De onderzoekers adviseren organisaties om zich er goed van bewust te zijn dat een parallelle database niet complexer is dan een gewone. Het belangrijkste probleem is dat slechts weinig mensen er echt ervaring mee hebben. Dat geeft database- en hardware-marketeers de kans de markt in verwarring te brengen met technische feiten. In de praktijk betekent dit dat produkten vaak verkocht worden op grond van hun technische eigenschappen en niet vanwege de voordelen die deze kenmerken zouden kunnen bieden.
Parallellisme op zich bijvoorbeeld is slechts een eigenschap en nooit een voordeel. Het kan soms voordelen bieden, maar als alles verder hetzelfde zou blijven, zouden organisaties het inzetten van een parallel systeem moeten vermijden. Het rapport raadt aan om bij het zoeken naar een oplossing voor problemen met de prestaties altijd ook de mogelijkheden te bekijken die ‘naar beneden schalen’ (scaling down) in plaats van ‘opschalen’ (scaling up) biedt. Technologische ontwikkelingen bijvoorbeeld, zoals processoren met grotere kloksnelheden, zullen de prestaties van bestaande parallelle systemen verbeteren.
Het is een aantrekkelijk idee om te veronderstellen dat, als het gaat om parallelle computers, ‘meer’ altijd ‘beter’ is. Dit is het gezichtspunt dat de leveranciers van ‘shared nothing’-databasesystemen uitdragen als ze zeggen dat hun specifieke benadering van parallellisatie geen overhead veroorzaakt (zie figuur 1). Er is echter een limiet aan het aantal processoren dat te gebruiken valt in een gegeven situatie. Daarnaast zorgt het verdelen van werk over verschillende processoren altijd voor overhead.
Positie van de leverancier
Een andere mythe als het gaat om parallelle databasesystemen luidt dat je zo’n systeem nodig hebt als sprake is van veel gegevens. Er bestaan echter zeer grote databases op eenvoudige uniprocessor-systemen. Daarbij gaat het dikwijls om wetenschappelijke databases en is de responstijd geen kritische factor. Ook zijn er massaal parallelle systemen die alleen werken met relatief kleine databases. De enige motivatie voor de aanschaf van een parallelle database-engine zou moeten zijn dat een dergelijk systeem een belangrijke toegevoegde waarde heeft voor de transacties en zoekvragen waarbij snelheid van belang is.
Slechts weinig potentiële kopers van dbms-systemen en parallelle platformen zullen zo naïef zijn dat ze denken dat alleen de technische verdiensten van een systeem een belangrijke rol spelen, aldus het rapport. Evenzeer is het van belang om te kijken hoe sterk de positie van de leverancier is. In het verleden zijn verschillende, en niet altijd de kleinste, ondernemingen van het toneel verdwenen. Daarbij zijn het vaker de hardwareleveranciers die over de kop gaan dan de leveranciers van dbms’en. Behalve dat een bedrijf ermee kan ophouden, kan het ook overgenomen worden – en dit blijkt ook al geen voordeel voor de eindgebruiker te zijn. Evenzo dreigt er gevaar als een organisatie zijn bedrijfsstrategie wijzigt, bijvoorbeeld door te besluiten om complete ‘oplossingen’ te bieden in plaats van ‘hulpmiddelen’ te ontwikkelen.
Een andere factor die mee moet spelen bij het selecteren van een systeem, is de speciale band die er mogelijk bestaat tussen dbms- en platform-leverancier. Soms zijn parallelle dbms-servers ontwikkeld met een bepaalde parallelle platformarchitectuur in gedachten, waardoor prestatie en schaalbaarheid voor die speciale combinatie het beste zijn.
De juiste mensen
Een aantal dbms-leveranciers maakt momenteel een hoop drukte over iets dat volgens hen in de toekomst van groot belang zal zijn: de ‘mediaserver’. Mediaserver-applicaties moeten audio en video naar de huizen van individuele gebruikers zenden, via de netwerken van de kabeltelevisie of via de infrastructuur voor telecommunicatie.
Over de manier waarop deze toekomstige informatiesnelweg zich zal ontwikkelen, bestaan verschillende ideeën. Sommigen denken dat dit via Internet zal gebeuren. Deze methode heeft momenteel de voorkeur van de eindgebruikers. Op dit moment, aldus het rapport, wordt nog niet serieus geïnvesteerd in Internet, omdat nog niet duidelijk is hoe daar geld mee te verdienen valt.
Het alternatief is een gesloten systeem, met ‘zwarte dozen’ bij de eindgebruiker, en leveranciersspecifieke protocollen. In dat geval verzorgen de telecommunicatiebedrijven zowel de telecommunicatie- als de informatiediensten.
Veel dbms-leveranciers lijken de voorkeur te geven aan deze tweede mogelijkheid. Het probleem daarbij is de facturering voor de geleverde diensten – duidelijk een oltp-probleem (zie figuur 2). De dbms-leveranciers zullen echter eerst de wereld ervan moeten overtuigen dat hun visie op de elektronische snelweg de juiste is. Daar komt nog bij dat een mediaserver ook heel goed zonder dbms kan functioneren (zie figuur 3).
Een parallelle computer en een parallelle dbms doen niets voordat ze geïnstalleerd zijn en de gebruiker kan beschikken over erop draaiende toepassingen. Hiervoor zijn mensen nodig. Wordt een relationele database-applicatie rechtstreeks gepoort van een mainframe naar een middelgrote parallelle databasemachine, dan zal dat al een verbetering van de prestaties opleveren. Daarbij zijn de kosten van het parallelle systeem beduidend lager dan die van het mainframe. De echte kosten van het systeem gaan echter, over meerdere jaren gemeten, zitten in personeelskosten en softwarelicenties.
De juiste mensen zijn de belangrijkste factor in het verkrijgen van de beste prestaties en de optimale prijs/prestatie-verhouding voor elke machine, dus ook voor de parallelle database – en goede parallelle computerspecialisten zijn op dit moment schaars.
Responstijd en doorvoer
De onderzoekers wijden een apart hoofdstuk aan het beschrijven van de parallelle computer. Gelukkig, aldus het rapport, hebben de platformen voldoende gemeenschappelijk om zo’n beschrijving te kunnen geven. De typische smp- en mpp-architectuur komen aan bod.
In het hoofdstuk over prestatie en schaalbaarheid benadrukken de onderzoekers nogmaals dat het onverstandig is om te vertrouwen op de resultaten van standaard benchmarks. De voornaamste reden om een parallel systeem aan te schaffen blijft echter wel een betere prestatie, of in ieder geval een betere prijs/prestatie-verhouding. Er zijn twee manieren om de prestaties van de database uit te drukken: de responstijd per transactie en de doorvoer (het aantal transacties per seconde). Daarbij kan het bij parallelle systemen voorkomen dat het verbeteren van de responstijd de doorvoer nadelig beïnvloedt en omgekeerd.
Een prestatie-analyse voor een parallel databasesysteem is zo moeilijk omdat het gaat om veel cpu’s, veel geheugens en veel schijven. Zijn er prestatieproblemen bij een database, dan zijn waarschijnlijk een of meer hardwarecomponenten ‘verzadigd’. Alle systemen bereiken uiteindelijk een punt waarop problemen ontstaan als meer en meer gebruikers worden toegevoegd en de doorvoer blijft toenemen (zie figuur 4).
Geen duidelijke winnaar
De belangrijkste componenten van de parallelle dbms-architectuur zijn eveneens in een apart hoofdstuk beschreven. Het probleem daarbij is dat de exacte details van dbms-implementaties commercieel gevoelig liggen. Als een leverancier niet teveel wil loslaten over een bepaalde eigenschap, aldus de onderzoekers, kan dat betekenen dat ze iets slims bedacht hebben, maar ook dat ze een slechte oplossing hebben verzonnen. De meeste leveranciers zijn echter gewoon trots op wat ze hebben bereikt en zijn graag bereid technische details te geven.
Het rapport omvat verder gedetailleerde evaluaties en beschrijvingen van dbms- en hardware-leveranciers en hun produkten. Verder hebben de onderzoekers produktvergelijkingen opgesteld. Daaruit blijkt dat er geen duidelijke winnaar op de voorgrond treedt. Bij de selectie van een systeem gaat het erom het juiste produkt te zoeken voor iedere specifieke situatie.
Marianne Bauman, freelance medewerker Computable