© Excellent backgrounds/Shutterstock.com
Java Magazin
Mit Caching wird das Framework Big-Data-fähig

Die Macht der Daten

In Teil 1 und Teil 2 wurde gezeigt, welche Komponenten benötigt werden, um aus einer Idee ein Framework zu entwickeln. Dabei wurden die Module Analyse, Sicherung, Auswertung und Visualisierung unter die Lupe genommen. Auch Paradigmen, Konzepte und Pattern, die dabei helfen können, ein agiles Framework aufzubauen, wurden beleuchtet. Im letzten Teil geht es nun um das „fünfte Element“: das Caching. Das darf beim Umgang mit großen Datenmengen nicht fehlen.

János Vona


ArtikelserieTeil 1: Hauptaufgaben des Frameworks: Business- und Zugriffsdaten analysieren und sichernTeil 2: Datenauswertung (dynamische Abfrage) und -visualisierungTeil 3: Modernes Caching, Zusammenfassung

Wir arbeiten in diesem Kontext je nach Applikation mit sehr großen Datenmengen. Heutzutage nennt man das bekanntlich Big Data. Wenn wir sicherstellen möchten, dass das Framework mit Big Data geschickt umgehen kann, darf Caching nicht fehlen. Setzen wir bei der Auswertung auf ARIS MashZone [1] oder verwenden wir im Framework JPA, dann sind wir auf der sicheren Seite. Beide haben ein internes Caching, das dafür sorgt, dass mehrfache Datenabfragen zuerst aus dem Cache geladen werden. Wenn das nicht der Fall ist, braucht das Framework einen eigenen Cache. Im Framework habe ich Ehcache [2] verwendet, weil dieser

Java-basiert und Open Source istApache-Lizenzen besitztsehr weit verbreitet ist

im Fall eines Big-Data-Ansatzes erweiterbar wäre (kommerzielle Verwendung mit Scale-up- und Scale-out-Möglichkeiten)

Außerdem unterstützt Ehcache nativ alles, was ich im Framework verwendet habe. Man kann anhand eines Caching-Webfilters die Abfragen (z. B. zu unserem Servlet, der für die Abfragen zuständig ist) cachen oder Ehcache als Second-Level-Cache für openJPA konfigurieren. Obwohl ich in der Dokumentation nicht auf alle Fragen eine Antwort fand, konnte ich dank der aktiven Community, der Inline-Dokumentation und des einfachen API recht schnell alles umsetzen, was ich wollte.

Das Erste, was man gut gebrauchen kann, ist das Web-Caching, um Abfragen (Request) und die dazugehörigen Ergebnisse (Response) serverseitig zu cachen. Dazu erstellt man zuerst die Cachekonfiguration. Die Konfigurationsdatei heißt Ehcache.xml, und in Listing 1 sieht man ein einfaches Beispiel dafür.

Listing 1Ehcache.xml 

Wenn man eine Beispiel-Ehcache.xml-Datei von der Webseite des Herstellers herunterlädt, bekom...

Java Magazin
Mit Caching wird das Framework Big-Data-fähig

Die Macht der Daten

In Teil 1 und Teil 2 wurde gezeigt, welche Komponenten benötigt werden, um aus einer Idee ein Framework zu entwickeln. Dabei wurden die Module Analyse, Sicherung, Auswertung und Visualisierung unter die Lupe genommen. Auch Paradigmen, Konzepte und Pattern, die dabei helfen können, ein agiles Framework aufzubauen, wurden beleuchtet. Im letzten Teil geht es nun um das „fünfte Element“: das Caching. Das darf beim Umgang mit großen Datenmengen nicht fehlen.

János Vona


ArtikelserieTeil 1: Hauptaufgaben des Frameworks: Business- und Zugriffsdaten analysieren und sichernTeil 2: Datenauswertung (dynamische Abfrage) und -visualisierungTeil 3: Modernes Caching, Zusammenfassung

Wir arbeiten in diesem Kontext je nach Applikation mit sehr großen Datenmengen. Heutzutage nennt man das bekanntlich Big Data. Wenn wir sicherstellen möchten, dass das Framework mit Big Data geschickt umgehen kann, darf Caching nicht fehlen. Setzen wir bei der Auswertung auf ARIS MashZone [1] oder verwenden wir im Framework JPA, dann sind wir auf der sicheren Seite. Beide haben ein internes Caching, das dafür sorgt, dass mehrfache Datenabfragen zuerst aus dem Cache geladen werden. Wenn das nicht der Fall ist, braucht das Framework einen eigenen Cache. Im Framework habe ich Ehcache [2] verwendet, weil dieser

Java-basiert und Open Source istApache-Lizenzen besitztsehr weit verbreitet ist

im Fall eines Big-Data-Ansatzes erweiterbar wäre (kommerzielle Verwendung mit Scale-up- und Scale-out-Möglichkeiten)

Außerdem unterstützt Ehcache nativ alles, was ich im Framework verwendet habe. Man kann anhand eines Caching-Webfilters die Abfragen (z. B. zu unserem Servlet, der für die Abfragen zuständig ist) cachen oder Ehcache als Second-Level-Cache für openJPA konfigurieren. Obwohl ich in der Dokumentation nicht auf alle Fragen eine Antwort fand, konnte ich dank der aktiven Community, der Inline-Dokumentation und des einfachen API recht schnell alles umsetzen, was ich wollte.

Das Erste, was man gut gebrauchen kann, ist das Web-Caching, um Abfragen (Request) und die dazugehörigen Ergebnisse (Response) serverseitig zu cachen. Dazu erstellt man zuerst die Cachekonfiguration. Die Konfigurationsdatei heißt Ehcache.xml, und in Listing 1 sieht man ein einfaches Beispiel dafür.

Listing 1Ehcache.xml 

Wenn man eine Beispiel-Ehcache.xml-Datei von der Webseite des Herstellers herunterlädt, bekom...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang