Ny prosessor fra Oracle

Ny prosessor fra Oracle

Oracle Openworld / San Fransisco: Ny prosessor ble lansert. Sparc M7 kjører sikkerhet, SQL og datakompresjon direkte i maskinvaren.

På Openworld-konferansens siste hele dag kom maskinvaresjefen i Oracle, John Fowler, konserndirektør for systemer, på podiet. Han hadde med seg en ny Sparc-prosessor i lommen, som han beskrev som «programvare i silisium».

De gamle Sun-ingeniørene har lagd en prosessor som løser tradisjonelle programvareoppgaver direkte i brikken. Det betyr enormt høy ytelse på funksjonene som er implementert der. Sparc M7 har fått programvare i maskinvaren.

Tre hovedfunksjoner innebygd

Det er særlig i kombinasjon med In-memory-databaser at denne brikken kommer til sin rett. Oracle har valgt å legge inn grunnleggende funksjonalitet i prosessoren, som understøtter og dramatisk øker ytelsen til slike databaser. Det er særlig tre funksjoner Fowler pekte på under dagens presentasjon: Maskinvarebasert minnebeskyttelse, akselerering av avanserte spørringer og maskinvarebasert støtte for komprimerte data.

Til sammen vil disse funksjonene gi databasen «overveldende ytelsesforbedringer», kunngjorde Fowler.

Minnebeskyttelse

Oracle kaller funksjonaliteten de har bygd, for «Application Data Integrity». Dette er en metode for å sikre at det kun er eieren til et minneområde som får tilgang til det.

Dette er naturligvis viktig når hele databaser befinner seg i minnet. Dersom det er mulig å angripe systemet ved hjelp av teknikker som gir tilgang til minnet, vil det være mulig å tømme hele databaser – noe som er en uholdbar sikkerhetsrisiko, og som er høyere med minnebaserte databaser, sammenlignet med tradisjonelle databaser som ligger på disker.

- Med denne funksjonen er Heartbleed-svakheten eliminert, fordi den uansett ikke hadde fått tilgang til minnet til andre prosesser på systemet, fortalte Fowler.

Denne funksjonen kan alltid være aktivert på systemet, fordi det ifølge Fowler gir neglisjerbare ytelsesforringelser.

SQL i brikken

Den neste funksjonen i brikken er maskinvarebaserte spørringer. Dette er mer enn de aller mest primitive spørringene, og er typisk for spørringer som inngår i BI-applikasjoner.

Det Oracle har implementert i brikken, er sammenligninger mellom intervaller av data, som «Hvor mange mellom start-dato og slutt-dato» vil nå kjøres direkte i maskinvaren i stedet for oppe i programvaren. Den følgende SQL-koden ville i sin helhet blitt kjørt direkte i prosessoren:

SELECT count (*)

...WHERE lo_orderdate = d_datekey

...AND lo_orderkey = 1059538

AND d_year_monthnum BETWEEN 201311 AND 201312

Resultatene fra en slik spørring plasseres rett i prosessorens hurtigminne (cache).

Ifølge Oracle vil dette alene gi en ti gangers ytelsesforbedring i forhold til tradisjonelle programvarebaserte løsninger. I tillegg vil dette frigjøre prosessorkjerner fra å måtte utføre slike spørringer.

Maskinvareassistert dekompresjon

I Oracles in-memory-databaser er dataene komprimerte. Oracle har funnet ut at i normal bruk blir disse dataene dekomprimert (lest) ti ganger oftere enn de blir komprimert (skrevet). Derfor har Oracle implementert maskinvarebasert dekompresjon i den nye prosessoren.

Ifølge Fowler foregår denne dekomprimeringen i «sann tid», altså i samme hastighet som minneaksessen, opp til 120 GB/s. Samtidig gjør bruken av datakompresjonen at utnyttelsen av det fysiske minnet tredobles.

Summen av disse tiltakene gjør at ytelsen til systemet går rett i taket.

- Summen av denne in-memory-prosesseringen gir systemet en overveldende ytelse. Med disse teknikkene klarer vi å skanne 170 milliarder databaserekker per sekund per prosessor. Sagt på en annen måte, så klarer vi å skanne data opptil 120 gigabytes per sekund per prosessor. For de av dere som er prosessor-nerder, så skjønner dere at dette er fenomenale tall, avsluttet Fowler.

Sparc M7 skal være på markedet i 2015.