Vorheriges Laden von Daten und Vorbereitung

In vielen Szenarien, die die Verwendung eines Loaders (Ladeprogramms) beinhalten, können Sie Ihr Datengrid durch vorheriges Laden von Daten (Preload) vorbereiten.

Wenn das Grid als vollständiger Cache verwendet wird, muss das Datengrid alle Daten aufnehmen und geladen werden, bevor Clients eine Verbindung zum Grid herstellen können. Wenn Sie einen Teilcache verwenden, müssen Sie den Cache mit Daten vorbereiten (Aufwärmphase), so dass Clients sofortigen Zugriff auf die Daten haben, wenn sie eine Verbindung zum Grid herstellen.

Es gibt zwei Methoden für das vorherige Laden von Daten in das Datengrid: Verwendung eines Loader-Plug-ins (Ladeprogramm) oder Verwendung eines Client-Loaders. Diese beiden Methoden werden in den folgenden Abschnitten beschrieben.

Loader-Plug-in

Das Loader-Plug-in wird jeder Map zugeordnet und ist für die Synchronisation eines einzelnen primären Partitions-Shards mit der Datenbank zuständig. Die Methode "preloadMap" des Loader-Plug-ins wird automatisch aufgerufen, wenn ein Shard aktiviert wird. Wenn Sie beispielsweise 100 Partitionen haben, sind 100 Loader-Instanzen vorhanden, die jeweils die Daten für ihre Partition laden. Wenn die Loader-Instanzen synchron ausgeführt werden, werden alle Clients blockiert, bis das vorherige Laden der Daten (der so genannte Preload-Prozess) abgeschlossen ist.

Abbildung 1. Loader-Plug-in
Loader-Plug-in: Das primäre Shard hat eine Loader-Instanz

Weitere Informationen finden Sie unter Plug-ins für die Kommunikation mit Datenbanken.

Client-Loader

Ein Client-Loader ist ein Muster für die Verwendung eines oder mehrerer Clients, um Daten in das Grid zu laden. Die Verwendung mehrerer Clients zum Laden von Griddaten kann effektiv sein, wenn das Partitionsschema nicht in der Datenbank gespeichert ist. Sie können Client-Loader manuell oder automatisch aufrufen, wenn das Datengrid gestartet wird. Client-Loader können optional die Schnittstelle "StateManager" verwenden, um den Status des Datengrids auf den Preload-Modus zu setzen, so dass Clients nicht auf das Grid zugreifen können, wenn das vorherige Laden der Daten in das Grid durchgeführt wird. WebSphere eXtreme Scale enthält einen JPA-basierten (Java Persistence API) Loader, den Sie verwenden können, um das Datengrid automatisch über die OpenJPA- oder Hibernate-JPA-Provider zu laden. Weitere Informationen zu Cache-Providern finden Sie unter JPA-L2-Cache-Plug-in.

Abbildung 2. Client-Loader
Client-Loader, der einen JPA-Provider verwendet