Computable - Oracle’s database heeft nu vector search

Video's, audio, pdf's, Excels, Powerpoints...

Zelfs röntgenfoto’s nu in Oracle's nieuwe vector-database

Oracle heeft vector search toegevoegd aan de nieuwste database. Elke vorm van data zou er nu in moet passen en doorzoekbaar moeten zijn. ‘We bouwen zelfs ai-agents in de database om zinvolle zoekopdrachten te laten uitvoeren,’ vertelt Jenny Tsai-Smith die al jaren de scepter zwaait over de databaseontwikkeling bij het bedrijf.

Tekst: teus molenaar Beeld: envato / oracle

Computable spreekt Tsai-Smith tijdens Oracle AI World in oktober in Las Vegas. Even daarvoor had cto Larry Ellison in zijn toespraak een voorbeeld aangehaald van wat ai-agents kunnen doen in een database: ‘Wij weten heel veel over onze klanten. We hebben ai-agents ingezet om na te gaan waar klanten op dit moment behoefte aan hebben. Dat levert voor onze verkoopafdeling de onderwerpen op waar zij het komende half jaar aan gaat werken. Je kunt de ai-agent zelfs inzetten om een voorbeeldbrief te laten schrijven die gestuurd kan worden aan de mogelijk geïnteresseerde klanten.’

‘Mensen vragen ons naar de ideeën om ai-agents in te zetten om complexe workloads te creëren,’ vertelt Tsai-Smith, vice president overall database product management. ‘Ik zie ze als programma’s die je kunt benutten om ai en taalmodellen te gebruiken om meer dan alleen content te genereren. Je geeft ze een taak en vraagt wat de beste manier is om die taak te uit te voeren. En dan genereren ze niet alleen informatie, maar geven ook aan welke stappen je zou moeten ondernemen.’

Multimodale database

Tsai-Smith zegt dat het werk twee jaar geleden begon met het multimodaal maken van Oracle AI Database 26ai. Elke vorm van data zou erin moet passen en doorzoekbaar moeten zijn. ‘Er is hard gewerkt om een virtualisatielaag te maken in de kern van de database; nodig om nieuwe datatypes te kunnen opnemen. En vervolgens – in dit ai-tijdperk – hebben we vectorgebaseerde bestandstypes ontwikkeld. Dat is nodig om ongestructureerde data op te slaan en te kunnen manipuleren. Denk aan video’s, beelden, geluid, pdf-files, Excel-spreadsheets, Powerpoint, zelfs röntgenfoto’s. Dus alles dat bedrijven creëren, maar niet gestructureerd is in kolommen.’

Ze onderzochten speciale vectordatabases zoals Pinecone, ChromaDB, Weeviate en Milvus. ‘Sommige ervan zijn open source. Wij hebben in een jaar tijd flink gesleuteld aan vectoren in onze database. Ervoor gezorgd dat de gebruikelijke functionaliteiten, performance en beveiliging van onze enterprise database gewaarborgd zijn. En we hebben verfijningen aangebracht. We hebben tekst en vector search gecombineerd in een hybride index. En onze technologie is op elk platform hetzelfde: on premise, in de cloud. Dat is een groot voordeel voor beheerders.’

De Oracle AI Database 26ai heeft een Inverted File Index (IVF), een datastructuur die gebruikt wordt om grote hoeveelheden vectoren of records snel doorzoekbaar te maken, en heeft ook indexen die in het geheugen staan. ‘Dat laatste levert heel snel zoekresultaten op, maar kost natuurlijk wel geheugen. Daarom kan een IVF-index veel meer bevatten.’

Flexibiliteit

Na veel gesleutel is het mogelijk geworden om databasefuncties in de kern op te nemen. ‘Maar we laten ook klanten hun eigen functies ontwikkelen, want de effectiviteit van de functie hangt van de vector die je aan het bewerken bent. En de vectoren zijn op hun beurt afhankelijk van het soort ongestructureerde inhoud. Werken met video’s, of iets dat video’s betreft, kan heel anders zijn dan werken met bijvoorbeeld pdf-bestanden. De functies kunnen heel specifiek zijn voor wat je wil vergelijken. Het idee is dat we flexibiliteit willen bouwen. De verschillende datatypes hebben elk hun eigen extra geoptimaliseerde indexen met de aanvullende sql-syntax en functies om de query uit te voeren. Het kost heel veel werk om nieuwe datatypes toe te voegen aan een database die al zo lang bestaat. Want ze moeten functioneel gelijk zijn aan wat al bestaat in de database. Ook op het vlak van beveiliging, toegangsrechten en prestaties. Het is belangrijk dat elk nieuw datatype goed werkt in alle omgevingen. Dat kost veel engineering.’

Samenwerking met Fusion

Oracle heeft natuurlijk zijn Fusion-applicaties, een complete suite van cloudgebaseerde bedrijfsapplicaties. Tsai-Smith geeft een voorbeeld hoe deze applicaties samenwerken met de nieuwe database. ‘Je gaat gewoon naar ChatGPT en typt dat je een vakantie wilt houden in Nederland, naar musea wilt en natuurlijk ergens moet eten. Er moet dus een reisschema komen, ook voor de vlucht en het hotel. Dat kun je nu allemaal doen in één interface: ChatGPT in plaats van alle Fusion-applicaties die hierbij komen kijken. Het zal interessant zijn om te zien hoe deze ontwikkeling onze applicaties zal veranderen.’

Geen upgrade

En moet je dan veel werk verrichten als beheerder om die mogelijkheden van de nieuwe database te gebruiken? Tsai-Smith beweert dat er geen upgrade nodig is. ‘Een upgrade-proces doorlopen kan lang duren. Maanden, soms een jaar, want je moet alles ook nog eens testen. Een upgrade betekent immers een architectonische verandering. Maar dit keer krijgen gebruikers alle voordelen door een vernieuwingsupdate toe te passen. Dat is een veel minder tijdrovend proces om de voordelen van de applicaties te benutten. Het is geen upgrade, maar gewoon een vervanging. Je kunt je applicaties nog gebruiken. Dat is het belangrijkste waar klanten zich zorgen over maken. Dat is niet nodig.’

Tsai-Smith vertelt dat bestaande klanten alles krijgen dat in ‘26AI’ zit zonder er extra voor te hoeven betalen. ‘Alle ai-capaciteiten zijn een deel van de Enterprise Edition. We hebben zelfs een gratis versie: Oracle AI Database Free. Die is vooral beschikbaar voor ontwikkelaars. Gewoonlijk beperkt het aantal aanwezige cpu’s de functiemogelijkheden. We hebben de data daarom beschikbaar in deze gratis in-memory database, zodat ontwikkelaars genoeg hebben om mee te spelen. Ze kunnen leren, ze kunnen wat code aanpassen. Ontwikkelaars zijn voor ons erg belangrijk, omdat zij de technologie bepalen die we gebruiken voor de volgende generatie van de applicaties.’