Durch die digitale Kom­mu­ni­ka­ti­on entstehen immer größere Da­ten­men­gen (Stichwort Big Data). Das ist eine große Chance für Firmen, die mit solchen Daten arbeiten. Doch je mehr Daten einem Un­ter­neh­men zur Verfügung stehen, desto größer ist die Her­aus­for­de­rung, Zu­sam­men­hän­ge, Muster und Aussagen her­aus­zu­fil­tern. IT-Lösungen und Systeme sind gefragt, um Un­ter­neh­men bei der Aus­wer­tung der In­for­ma­ti­ons­flut zu un­ter­stüt­zen. Die Da­ten­ana­ly­se mithilfe von her­kömm­li­chen Da­ten­ban­ken reicht nicht mehr aus, um äußerst große Da­ten­samm­lun­gen zu speichern, ab­zu­fra­gen und schließ­lich zu ver­ar­bei­ten. Kommen klas­si­sche Da­ten­ban­ken an ihre Grenzen, ist der Einsatz von In-Memory-Da­ten­ban­ken gefragt.

Managed Database Services
Da­ten­ban­ken – Auf´s We­sent­li­che kon­zen­trie­ren
  • IONOS Cloud-Partner: Die Experten für Ihren Datenbank-Betrieb
  • Flexibel: Maß­ge­schnei­der­te Datenbank-Lösungen ganz auf Ihre Be­dürf­nis­se
  • Re­chen­zen­tren in Deutsch­land: Ihre Daten sind sicher

Was sind In-Memory-Da­ten­ban­ken?

Eine In-Memory-Datenbank (IMDB) beruht auf einem Datenbank-Ma­nage­ment-System, das seine Da­ten­samm­lun­gen direkt im Ar­beits­spei­cher eines oder mehrerer Computer ablegt. Die Ver­wen­dung des Ar­beits­spei­chers bringt einen ent­schei­den­den Vorteil mit sich: In-Memory-DBs verfügen über deutlich schnel­le­re Zu­griffs­ge­schwin­dig­kei­ten. Dem­entspre­chend zügig stehen ge­spei­cher­te Daten zur Verfügung.

Fakt

Der Ar­beits­spei­cher wird auch RAM (Random Access Memory) genannt und enthält alle Programme, Pro­gramm­tei­le und die dafür be­nö­tig­ten Daten, die aktuell aus­ge­führt werden. Nach Ab­schal­ten des Computers gehen alle kurz­zei­tig ab­ge­leg­ten Daten verloren.

Wie funk­tio­nie­ren In-Memory-Da­ten­ban­ken?

In-Memory-Da­ten­ban­ken speichern riesige Da­ten­men­gen und stellen Ihnen eine Reihe von Ana­ly­se­er­geb­nis­sen zur Verfügung. Aber wie genau funk­tio­niert das Ablegen von Big Data und was für Tech­no­lo­gien machen die Da­ten­spei­che­rung möglich?

So werden Ihre Daten ge­spei­chert

Bei der Da­ten­spei­che­rung mit einer In-Memory-Datenbank un­ter­schei­det man zwischen der spalten- und der zei­len­ba­sier­ten Da­ten­hal­tung, wobei einige Da­ten­bank­sys­te­me beide Varianten der Da­ten­spei­che­rung nutzen. Zei­len­ori­en­tier­te Da­ten­ban­ken ordnen die erhobenen Da­ten­sät­ze gemeinsam in einer Zeile. Werden bei­spiels­wei­se die Werte Name, Ort und Land ge­spei­chert, würde die Anordnung der Daten fol­gen­der­ma­ßen erfolgen: Name 1, Ort 1, Land 1, Name 2, Ort 2, Land 2. Bei einer spal­ten­ba­sier­ten Ablage werden die je­wei­li­gen Daten ihren ent­spre­chen­den Ka­te­go­rien zu­ge­ord­net: Name 1, Name 2, Ort 1, Ort 2, Land 1, Land 2.

Das Ab­la­ge­for­mat der spal­ten­ba­sier­ten Da­ten­hal­tung heißt Column-Store-Format. Indem das System Daten mit iden­ti­schen Werten zusammen speichert, minimiert sich die Anzahl aller vor­han­de­nen Daten. Dem­entspre­chend ver­rin­gern sich Spei­cher­platz und Über­tra­gungs­zei­ten. Die Per­for­manz der Analyse ent­wi­ckelt sich ebenfalls positiv, da nur die be­nö­tig­ten und nicht alle Spalten ana­ly­siert werden müssen. Diese Form der Da­ten­aus­wer­tung wird Columnar Pro­jec­tion genannt.

Folgende Tech­no­lo­gien er­mög­li­chen das Ablegen von Big Data

Das Konzept der In-Memory-Da­ten­ban­ken ist nicht neu. Die Grund­la­gen der Da­ten­bank­tech­no­lo­gien wurden bereits Mitte der 1980er Jahre ent­wi­ckelt. Jedoch schlossen un­zu­rei­chen­de IT-In­fra­struk­tu­ren eine er­folg­rei­che Umsetzung aus. Moderne Com­pu­ter­ar­chi­tek­tu­ren wie Data-Warehouse, 64-Bit-Tech­no­lo­gie und Multicore-Pro­zes­so­ren er­mög­lich­ten schließ­lich eine sinnvolle Umsetzung des Konzepts. Zunehmend günstiger Ar­beits­spei­cher trieb die Ver­brei­tung zu­sätz­lich voran.

  • In-Memory-Da­ten­ban­ken gehören in den meisten Fällen einem Data-Warehouse an. Diese Da­ten­bank­sys­te­me sammeln und ver­dich­ten Daten aus un­ter­schied­li­chen Quellen, sichern sie lang­fris­tig und bereiten sie für Analysen auf.

  • Mit der 64-Bit-Tech­no­lo­gie gelingt es, die Kapazität des Ar­beits­spei­chers bis in den Terabyte-Bereich zu erhöhen. Dadurch sind In-Memory-DBs großen Da­ten­men­gen gewachsen.

  • Bei Multicore-Pro­zes­so­ren arbeiten mehrere Pro­zes­sor­ker­ne in einem Chip, wodurch es zu einer besseren Ver­ar­bei­tungs­leis­tung sowie einem höheren Da­ten­durch­satz kommt. Der Da­ten­durch­satz gibt die über­tra­ge­ne Netto-Da­ten­men­ge pro Zeit an.

Zu welchen Prozessen kommt es bei der Anwendung von In-Memory-Da­ten­ban­ken?

Bei der prak­ti­schen Aus­füh­rung von In-Memory-Da­ten­ban­ken kommt es zu wie­der­keh­ren­den, iden­ti­schen Prozessen. Folgende Schritte durch­läuft eine In-Memory-Datenbank, um Daten zu sichern:

  1. Starten der Datenbank: Mit dem Starten der Datenbank lädt das System den gesamten Da­ten­be­stand von der Fest­plat­te in den Ar­beits­spei­cher. Somit müssen bei laufendem Betrieb der Datenbank keine Daten nach­ge­la­den werden.

  2. Abgleich von ge­än­der­ten Daten: Sollten sich Daten verändern, gleicht die Datenbank diese in re­gel­mä­ßi­gen Abständen ab.

  3. Trans­ak­ti­ons­pro­to­koll­si­che­run­gen: Laufende Än­de­run­gen werden in so­ge­nann­ten Tran­sac­tion Logs vermerkt. Kommt es zu einem Fehler, kann die Datenbank zum Zeitpunkt vor Auftreten des Fehlers wie­der­her­ge­stellt werden. Diesen Prozess be­zeich­net man als „Roll­for­ward“.

  4. Ver­ar­bei­tung der Daten: Die Ver­ar­bei­tung der Daten erfolgt wie bei tra­di­tio­nel­len Da­ten­ban­ken nach dem AKID-Prinzip (Atomarität, Konsistenz, Isolation und Dau­er­haf­tig­keit). Dieses be­schreibt ge­wünsch­te Ei­gen­schaf­ten von Vorgängen in Datenbank-Ma­nage­ment-Systemen.

  5. Da­ten­bank­re­pli­ka­ti­on: Zur Sicherung kopiert der Prozess kon­ti­nu­ier­lich Daten aus der Datenbank auf einen Computer oder Server.
Tech­no­lo­gien für souveräne Da­ten­nut­zung
Da­ten­ma­nage­ment mit der IONOS Cloud Big Data Plattform

Offene Standards für un­ter­schied­li­che Szenarien und Ar­chi­tek­tu­ren: Die flexiblen Big Data Lösungen von IONOS Cloud basieren auf Open Source Software, sind 100-prozentig da­ten­schutz­kon­form und schützen vor Vendor Lock-in.

Vor- und Nachteile von In-Memory-Da­ten­ban­ken

Wie bereits aus­ge­führt, gelingt es In-Memory-Da­ten­ban­ken, mittels der Ablage von Daten im Ar­beits­spei­cher deutlich schnel­le­re Zu­griffs­ge­schwin­dig­keit zu erreichen. Der Vorteil der In-Memory-Da­ten­ban­ken ist gleich­zei­tig die Ursache ihres größten Nachteils, denn eine dau­er­haf­te Ablage von Daten auf dem Ar­beits­spei­cher ist nicht möglich. Welche Vor- und Nachteile gibt es sonst noch?

In-Memory-Da­ten­ban­ken: Vorteile

Der größte Vorteil, den die Nutzung von In-Memory-Da­ten­ban­ken mit sich bringt, sind die deutlich höheren Zu­griffs­ge­schwin­dig­kei­ten, die auf die Ver­wen­dung des Ar­beits­spei­chers zu­rück­zu­füh­ren sind. Dies führt auch zu einer be­schleu­nig­ten Da­ten­ana­ly­se und einer präzise zu be­rech­nen­den Ab­fra­ge­zeit der Daten. Doch nicht nur die Be­schleu­ni­gung optimiert die Da­ten­ana­ly­se. In-Memory-DBs er­mög­li­chen eine Aus­wer­tung von struk­tu­rier­ten und un­struk­tu­rier­ten Daten aus be­lie­bi­gen Systemen. Un­ter­neh­men und Software-Lösungen standen bislang vor der Her­aus­for­de­rung, große un­struk­tu­rier­te Da­ten­men­gen, bei­spiels­wei­se Texte, Bilder oder Audio- und Vi­deo­da­tei­en, abzulegen und wei­ter­zu­ver­ar­bei­ten.

Durch den Einsatz von ver­teil­ten In­fra­struk­tu­ren können in einer In-Memory-DB un­struk­tu­rier­te Daten abgelegt werden, indem mehrere Re­chen­ein­hei­ten (Computer, Pro­zes­so­ren etc.) parallel an einer ge­mein­sa­men Aufgabe arbeiten (Par­al­le­li­sie­rung) und diese auf ver­schie­de­ne Ser­ver­clus­ter verteilen. Daraus re­sul­tiert sowohl eine höhere Spei­cher­ka­pa­zi­tät als auch eine schnel­le­re Ver­ar­bei­tungs- und Über­tra­gungs­ge­schwin­dig­keit der un­struk­tu­rier­ten Daten.

In-Memory-Da­ten­ban­ken: Nachteile

Die Nutzung des Ar­beits­spei­chers sorgt ei­ner­seits für eine erhöhte Zu­griffs­ge­schwin­dig­keit, bringt jedoch auch einen ent­schei­den­den Nachteil mit sich: die lediglich kurz­fris­ti­ge Spei­che­rung der Daten. Im Falle eines Sys­tem­ab­stur­zes würden somit alle flüchtig ge­spei­cher­ten Daten verloren gehen. Um dem Verlust der Daten ent­ge­gen­zu­wir­ken, haben sich folgende Methoden etabliert:

  • Schnapp­schuss-Dateien: Zu be­stimm­ten Zeit­punk­ten, bei­spiels­wei­se in rou­ti­ne­mä­ßi­gen Abständen oder vor dem Ab­schal­ten, wird die vor­lie­gen­de Version der Datenbank ge­spei­chert. Ein wichtiger Kri­tik­punkt dieser Maßnahme ist jedoch, dass alle Dateien, die nach dem zuletzt ge­tä­tig­ten Schnapp­schuss hin­zu­ge­fügt wurden, verloren gehen.

  • Trans­ak­ti­ons­pro­to­koll­si­che­rung: Der Vermerk von Än­de­run­gen in Tran­sac­tion Logs ist als Si­che­rungs­me­tho­de im laufenden Prozess in­te­griert. In Kom­bi­na­ti­on mit re­gel­mä­ßi­gen Schnapp­schüs­sen kann so nach einem Absturz der letzte Zustand nach­ver­folgt werden.

  • Re­pli­ka­ti­on: In-Memory-Da­ten­ban­ken verfügen bereits größ­ten­teils über die Funktion, eine exakte Kopie der Datenbank auf einer her­kömm­li­chen Fest­plat­te abzulegen. Bei einem Ausfall kann so auf die hin­ter­leg­te Datenbank zu­rück­ge­grif­fen werden.

  • Nicht­flüch­ti­ger RAM-Speicher: Ein RAM-Speicher ist dann in der Lage, auch nach Neustart des Systems die Dateien zum Abruf zur Verfügung zu stellen, wenn er mit einem En­er­gie­spei­cher kom­bi­niert wird.

Ein weiterer Nachteil, der durch die Nutzung eines Ar­beits­spei­chers bedingt ist: Dem Computer selbst steht nicht mehr so viel RAM zur Verfügung. Um dieser Grenze ent­ge­gen­zu­wir­ken, kann ver­netz­tes Grid-Computing eine Lösung sein. Beim Grid-Computing verbinden sich viele ver­schie­de­ne Computer mit­ein­an­der. Um an dieser Ver­knüp­fung teil­zu­neh­men, ist die In­stal­la­ti­on einer spe­zi­el­len Software auf dem Computer er­for­der­lich. Durch die Zu­sam­men­füh­rung der un­ge­nutz­ten Ka­pa­zi­tä­ten entsteht ein vir­tu­el­ler Hoch­leis­tungs­rech­ner.

In-Memory-Datenbank vs. tra­di­tio­nel­le Da­ten­ban­ken

Unter einer Datenbank versteht man allgemein eine Sammlung von In­for­ma­tio­nen, die meist elek­tro­nisch verfügbar ist. Tra­di­tio­nel­le Da­ten­ban­ken legen aus­schließ­lich struk­tu­rier­te Daten ab. Um struk­tu­rier­te Daten handelt es sich, wenn man eindeutig de­fi­nier­te Da­ten­fel­der in konkreten Da­ten­sät­zen or­ga­ni­siert. Die Da­ten­sät­ze werden in Tabellen an­ge­ord­net, wobei jedes Datenfeld für ein un­ter­schied­li­ches Attribut steht und dem­entspre­chend benannt ist. Die Big-Data-Bewegung brachte das Modell an seine Grenzen, da es Schwächen hin­sicht­lich der Spei­che­rung und Ver­ar­bei­tung von großen Da­ten­men­gen aufzeigt. Eine weitere Her­aus­for­de­rung stellt die fehlende An­pass­bar­keit der Datenbank dar. Un­struk­tu­rier­te Daten wie Bilder und Dokumente in na­tür­li­cher Sprache lassen sich nicht ablegen und auswerten.

In-Memory-Datenbank Tra­di­tio­nel­le Datenbank
Daten struk­tu­riert & un­struk­tu­riert struk­tu­riert
Zu­griffs­ge­schwin­dig­keit Echtzeit langsam
Da­ten­si­cher­heit unsicher sicher

Wann ist eine In-Memory-Datenbank sinnvoll für Ihr Un­ter­neh­men?

Nach Aus­füh­rung der Vor- und Nachteile von In-Memory-Da­ten­ban­ken sowie der direkten Ge­gen­über­stel­lung mit tra­di­tio­nel­len Da­ten­ban­ken sollten Sie für Ihr Un­ter­neh­men abwägen, welches Datenbank-Ma­nage­ment-System (DBMS) für Sie geeignet ist. Wenn Sie mit Big Data arbeiten, ist Ihnen die Ent­schei­dung bereits ab­ge­nom­men: Hier kommt nur eine In-Memory-DB in Frage. Doch auch in anderen Fällen könnte die Datenbank im Ar­beits­spei­cher die richtige Wahl sein.

Eine In-Memory-Datenbank ist das richtige DBMS für Ihre Daten, wenn:

  • Sie über eine große Da­ten­samm­lung verfügen
  • Sie schnellen und häufigen Zugriff auf Ihre Daten benötigen
  • Ihre be­stehen­den Datenbank-Ma­nage­ment-Systeme oder -server über­las­tet sind
  • die Per­sis­tenz Ihrer Daten nicht oberste Priorität hat
  • Sie einen möglichen Verlust Ihrer Daten in Kauf nehmen können

Beispiele für In-Memory-Da­ten­ban­ken

Zu den be­kann­tes­ten In-Memory-Da­ten­ban­ken zählen SAP HANA und Oracle TimesTen. Suchen Sie als Un­ter­neh­men nach einer En­ter­pri­se-Software mit viel­fäl­ti­ger Funk­tio­na­li­tät, sind die Lösungen von SAP und Oracle am gän­gigs­ten. Beide Datenbank-Ma­nage­ment-Systeme erreichen die höchst­mög­li­che Per­for­manz. Was zeichnet sie aus und wie sieht ihre prak­ti­sche Anwendung in einem Un­ter­neh­men aus?

SAP HANA (High Per­for­mance Analytic Appliance)

Die In-Memory-Datenbank SAP HANA (High Per­for­mance Analytic Appliance) ist eine Kom­bi­na­ti­on aus Hard- und Software. Die Software wurde eigens von SAP ent­wi­ckelt, die Hardware (Server) hingegen stammt von 10 ver­schie­de­nen Her­stel­lern. Im Gegensatz zu anderen In-Memory-Da­ten­ban­ken legt SAP HANA die Daten nicht zwi­schen­zeit­lich, sondern dauerhaft auf dem Ar­beits­spei­cher ab und sichert die Daten mithilfe von Tran­sac­tion Logs.

Die Ver­ar­bei­tung von Trans­ak­tio­nen und Analysen in einer ge­mein­sa­men Datenbank er­mög­licht es, In­for­ma­tio­nen in Echtzeit zu be­ar­bei­ten. SAP HANA kann sowohl auf dem Un­ter­neh­mens­ser­ver als auch in einer Cloud ein­ge­setzt werden und ver­rin­gert somit die Her­aus­for­de­run­gen an die IT-Struk­tu­ren im Un­ter­neh­men. Zudem werden Kosten für bisherige Methoden zur Da­ten­ver­wal­tung minimiert und Ent­schei­der erhalten neue und genaue Prognosen.

Oracle TimesTen

Die Datenbank von Oracle hat viele Ge­mein­sam­kei­ten mit der von SAP. Die Da­ten­ver­ar­bei­tung geschieht ebenfalls in Echtzeit und die Anwendung kann sowohl mittels eines Servers als auch als Cloud-Service erfolgen. Im Gegensatz zu der Datenbank von SAP stammen Soft- und Hardware der Oracle TimesTen von Oracle selbst.

Dem­entspre­chend handelt es sich um eine reine Oracle Appliance. Der daraus re­sul­tie­ren­de Vorteil für den Nutzer ist, dass man im Fall eines Fehlers intern handeln kann und das Un­ter­neh­men nicht auf diverse Hardware- und Software-Firmen an­ge­wie­sen ist. Oracle legt die ge­sam­mel­ten Daten nicht aus­schließ­lich im Ar­beits­spei­cher ab: Daten, die weniger auf eine hohe Per­for­mance an­ge­wie­sen sind, können auf der Fest­plat­te oder einer Flash Disk ge­spei­chert werden

In-Memory-Da­ten­ban­ken im Vergleich: SAP HANA und Oracle TimesTen

Die Funk­ti­ons­wei­sen von SAP HANA und Oracle TimesTen sind größ­ten­teils identisch. Daraus re­sul­tiert ein ebenfalls iden­ti­scher Haupt­nut­zen der beiden Da­ten­ban­ken für Ihr Un­ter­neh­men:

  • Be­schleu­nig­te Da­ten­ver­ar­bei­tung
  • Neu­aus­rich­tung des Un­ter­neh­mens mittels in­no­va­ti­ver An­wen­dun­gen
  • Ge­stei­ger­te Agilität in Form von Fle­xi­bi­li­tät, Aktivität und An­pas­sungs­fä­hig­keit

Die folgende Tabelle fasst die Un­ter­schie­de und Ge­mein­sam­kei­ten der beiden In-Memory-Da­ten­ban­ken zusammen:

Oracle TimesTen SAP HANA
Da­ten­spei­che­rung Ablage der Daten auf Ar­beits­spei­cher, Fest­plat­te und Flash Disk Dau­er­haf­te Spei­che­rung der Daten im Ar­beits­spei­cher
Soft- und Hardware Soft- und Hardware von Oracle Software von SAP, Hardware von ver­schie­de­nen Her­stel­lern
In­stal­la­ti­on Hardware & Cloud-Service Hardware & Cloud-Service
Datenbank Spal­ten­ori­en­tier­te Datenbank Spal­ten­ori­en­tier­te Datenbank
En­ter­pri­se In­for­ma­ti­on Ma­nage­ment (EIM) Op­ti­mie­rung der Ge­schäfts­pro­zes­se durch diverse Funk­tio­nen zur Da­ten­ver­wal­tung Op­ti­mie­rung der Ge­schäfts­pro­zes­se durch diverse Funk­tio­nen zur Da­ten­ver­wal­tung
Big Data Ent­wi­ckelt für Big Data Ent­wi­ckelt für Big Data
Da­ten­ver­ar­bei­tung Echtzeit Echtzeit
Da­ten­ana­ly­se Direkt in der Datenbank Direkt in der Datenbank

Her­aus­for­de­run­gen bei In-Memory-Da­ten­ban­ken

Im Zuge der fort­schrei­ten­den Di­gi­ta­li­sie­rung werden die ohnehin schon riesigen Da­ten­ber­ge weiter wachsen. Für die Ent­wick­ler von In-Memory-Da­ten­ban­ken steht somit die stetige Wei­ter­ent­wick­lung bis­he­ri­ger Systeme an. Folgende Aufgaben gilt es anzugehen:

  • Daten aus einer wach­sen­den Anzahl von Quellen erfassen
  • IT-Struk­tu­ren weiterhin ver­ein­fa­chen und glei­cher­ma­ßen Ant­wort­zei­ten und Ana­ly­se­ge­schwin­dig­kei­ten re­du­zie­ren
  • Weitere Er­kennt­nis­se aus der Da­ten­ana­ly­se gewinnen und Un­ter­neh­men bei ihrer Ent­schei­dungs­fin­dung un­ter­stüt­zen
  • Ent­wick­lung von An­wen­dun­gen, die noch stärker auf die Her­aus­for­de­run­gen des digitalen Wandels aus­ge­rich­tet sind
Fazit

In-Memory-Da­ten­ban­ken haben sich als er­folg­rei­che Tech­no­lo­gie für das Speichern und Ver­ar­bei­ten von Daten im Ar­beits­spei­cher etabliert. Sie er­mög­li­chen es Un­ter­neh­men, die mit großen Da­ten­men­gen hantieren müssen, nun erstmals, Big Data schnellst­mög­lich zu ana­ly­sie­ren und jederzeit darauf zu­zu­grei­fen. Ein ef­fek­ti­ver Einsatz von In-Memory-Da­ten­ban­ken ist al­ler­dings nur dann gegeben, wenn der Spei­cher­ort der Daten nicht aus­schließ­lich eine In-Memory-Datenbank ist und stan­dar­di­sier­te Systeme zur Da­ten­si­che­rung in die Abläufe in­te­griert werden.

Zum Hauptmenü