EHCache und Terracotta. Jochen Wiedmann, Software AG



Ähnliche Dokumente
Kurzanweisung für Google Analytics

WebService in Java SE und EE

Überblick und Vergleich von NoSQL. Datenbanksystemen

Anlegen eines SendAs/RecieveAs Benutzer unter Exchange 2003, 2007 und 2010

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Konsistenzproblematik bei der Cloud-Datenspeicherung

Auswahl und Download ebooks

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Anleitung zur Webservice Entwicklung unter Eclipse

Version 4.0. service.monitor. Systemanforderungen

Vertiefte Grundlagen Graphentheorie

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Dokumentation zur Versendung der Statistik Daten

KEIL software. Inhaltsverzeichnis UPDATE. 1. Wichtige Informationen 1.1. Welche Änderungen gibt es?

Themen. Web Service - Clients. Kommunikation zw. Web Services

Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API).

e-books aus der EBL-Datenbank

macs Support Ticket System

Datenbank-Service. RZ-Angebot zur Sicherstellung von Datenpersistenz. Thomas Eifert. Rechen- und Kommunikationszentrum (RZ)

Einrichten des Elektronischen Postfachs

Win-Digipet V 9.2 Premium Edition Wie bastele ich mir steuerbare Kontakte. Wie bastele ich mir steuerbare Kontakte? -Quick-And-Dirty-Lösung-

Preise und Leistungen Dynamic Computing Services

[DvBROWSER] Offline-Viewer für [DvARCHIV] und [DvARCHIVpersonal] Version 2.2

1 Belastung. 1.1 Standortbestimmung 1.2 Belastungsvorhersage 1.3 Favoriten

BEDIENUNGSANLEITUNG: EINREICH-TOOL

2 Datei- und Druckdienste

Nutzung von GiS BasePac 8 im Netzwerk

Flowy Apps erzählt eine kurze Geschichte über REDS. Remotely Encrypted Distributed Storage

ISA Einrichtung einer DFUE VErbindung - von Marc Grote

Tragen Sie bitte im Anmeldefeld die Daten ein, die Sie von uns erhalten haben.

Daten DeDuplizierung Technik und Nutzen. Kurzübersicht, 12/2008

Die Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte:

Verfügbarkeit von Applikationen und Failover Szenarien. Winfried Wojtenek.

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Anleitung zur Nutzung des SharePort Utility

Oracle APEX Installer

Javakurs zu Informatik I. Henning Heitkötter

OSL Storage Cluster und RSIO unter Linux Storage-Attachment und Hochverfügbarkeit in 5 Minuten

Objektorientierte Programmierung

Apache-Tomcat Workshop

EINBLICKE FÜR KMU-KUNDEN

Suchbäume. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ihr CMS für die eigene Facebook Page - 1

Kooperationsprojekte RRZ - Universitätskolleg

Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen?

Open Source. Hendrik Ebbers 2015

Step by Step Webserver unter Windows Server von Christian Bartl

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

Der lokale und verteilte Fall

iphone 4 - Einrichtung des VPN Clients (Cisco VPN Client) / Verbinden des iphones mit einem Exchange

Einrichtung eines -konto mit Outlook Express

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Reservierungs-Assistent

Einrichtung von Mozilla Thunderbird

Wir bringen Ihre USB Geräte ins Netz Ohne Wenn und Aber!

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Statuten in leichter Sprache

Die App onesto2go Ihr mobiler Zugriff auf OBT

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Registrierung für eine Senioren IPIN Ab 17. Mai 2011 können sich Spieler für eine Senioren IPIN (Lizenz) registrieren.

Intranet Moodle

Cisco Security Monitoring, Analysis & Response System (MARS)

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Entwicklungen bei der Linux Clustersoftware

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Lokale Installation von DotNetNuke 4 ohne IIS

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Benutzerkonto unter Windows 2000

Kapsch Carrier Solutions GmbH Service & Support Helpdesk

Sie können diesen Service verwenden, um fast beliebig große Dateien auch über 2 GB zu versenden.

Henning Mersch. Tomcat. im Rahmen des RBG-Seminar SS04. Apache-Jakarta-Tomcat-Server RBG-Seminar 1/17

Die technischen Aspekte von Mapping-Lösungen

Installation von horizont 4 bei Verwendung mehrerer Datenbanken

DER BESSER INFORMIERTE GEWINNT!

OSEK-OS. Oliver Botschkowski. PG AutoLab Seminarwochenende Oktober AutoLab

Automatisches Beantworten von - Nachrichten mit einem Exchange Server-Konto

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel

Online bezahlen mit e-rechnung

Die PayPal Testumgebung (Sandbox) Inhalt. Version Dezember 2013

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Internet Explorer Version 6

Hilfe zur ekim. Inhalt:

Dreamweaver 8 Einführung

Schritt 2: Konto erstellen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Reporting Services und SharePoint 2010 Teil 1

Datenaustausch mit Ihren Versicherten einfach und sicher über die Cloud

Installationsanleitung für CashPro im Mehrbenutzerzugriff/Netzwerkbetrieb

Anleitung Postfachsystem Inhalt

Prof. Dr. Uwe Schmidt. 21. August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Android-Geräte Programmieren 4. Hinweise zur Android-Programmierung. Stefan Rothe

Zeit bedeutet eine Abwägung von Skalierbarkeit und Konsistenz

Verbindung von Onlineshop und stationärem Handel in der Warenwirtschaft (WaWi)

QTrade GmbH Landshuter Allee München Seite 1

VIP-Programm. Herzlich Willkommen!

Thema: Microsoft Project online Welche Version benötigen Sie?

Transkript:

EH und Terracotta Jochen Wiedmann, Software AG

Autor Perl-Contributor DBD::mySQL 2, DBI::Proxy, DBI::Shell, DBD::CSV, Net::Daemon, RPC::Pl(Client Server) (Autor) DBI (Developer) ASF-Member (Apache Software Foundation) JaxMe, Commons FileUpload 2, XmlRpc 3 (Autor) Commons, Creadur, Webservices (PMC-Mitglied) James, Maven, Ant, Axis,... (Developer bzw. Contributor) Senior Consultant Software AG Professional Services

Firma Software AG Tochter SAG Deutschland GmbH Tochter Terracotta, Inc., USA Tochter SAG Consulting Services GmbH

EH API und minimale Implementation JSR 107 (Co-Spec-Lead ist EH-Maintainer) wird unterstützt Open Source (ASL 2.0) Entwickelt und betreut von Terracotta, Inc. (Kein Apache- Projekt, aber auf SourceForge) Defacto-Standard (Hibernate, Spring, MediaWiki (Wikipedia)) Unterstützt ColdFusion, Jruby/Rails, Google App Engine, Tomcat, Grails, Glassfish

EH-EE Proprietäre und kommerziell lizensierte Implementation des EH-API

Warum ein? Performance: Zugriff erfolgt auf schnellstes Medium (Heap, RAM, Disk) Auslastung: Schont den Flaschenhals, d.h. die Datenbank. Skalierbarkeit: Wachstum bis 1 TB (BigMemory)

EH (2) EH ist ein Key-Value-Store public class Element { public Object getkey(); // Normal ein String public Object getvalue(); /* Normal ein Serializable */ } public class { public void put(element pelement) throws Exception; public Element get(object pkey) throws Exception; } /* evtl. null */

Installation Client: Jar-Files ins Projekt einbinden. Server:Skriptfähiger jar-installer In jedem Fall: Konfigurationsdatei erstellen. Keine RPM's oder dergleichen.

EH (3) Wie Map, nur etwas cleverer: Attribute: MaxElementsInMemory Eternal TimeToIdleSeconds TimeToLiveSeconds OverflowToDisk (EE) DiskPersistent (EE) DiskExpiryThreadIntervalSeconds (EE) MaxElementsOnDisk (EE) Consistency (eventual, strong) EvictionStrategy (fifo, lru)

Anwendungsszenario 1a WebApp DB

Anwendungsszenario 1b WebApp 1st-Level (Heap) 2nd-Level (RAM) DB

Daten im Beispiel Kunde 1:n Konto 1:n Bewegung Kunde mit anhängenden Daten wird einmalig bei Anmeldung geladen und im gespeichert.

Anwendungsszenario 2a WebApp 1 WebApp 2 Copy on Write Copy on Read DB

Konsistenz Einbindung in XA-Transaktionen Vermeidung von alternativen Zugriffswegen (Read-through=Copy on Read bzw. Writethrough) Kostet Performance

Anwendungsszenario 2b WebApp 1 WebApp 2 (Level 1) TSA-Server (Level 2) (Level 1) DB

Anwendungsszenario 3 WebApp 1 WebApp 2 (Level 1) TSA-Server (Level 2) Notifications (Level 1) CRM-System DB

TSA-Skalierung Google-Modell: Commodity-Hardware, keine VM's, ganz schlecht mit NAS. Beliebige Skalierbarkeit durch Clustering: Jedes Stripe kann als HA-Cluster ausgelegt werden. Automatische Adressierung der Nodes S t r i TSA Stripe (HA) A* Stripe (HA) B* Stripe (HA) C* Stripe (HA) D* Stripe (HA) E* Stripe (HA) F*

Konkurrenz belebt das Geschäft -Lösungen Oracle Coherence Memd NoSQL-Datenbanken CouchDB MongoDB Distributed Storage Apache Hadoop Apache Cassandra Google BigTable Real Time Event Processing Software AG CEP Server

Über den Gartenzaun TSA und EH benötigen JVM. Direkt verfügbar nur unter Java, Groovy, Jruby, Scala, etc. TSA bietet SOAP- oder REST-API Dadurch ansatzweise auch in anderen Sprachen.

CAP- oder Brewer-Theorem Ein verteiltes System kann nur zwei der folgenden Eigenschaften haben: Konsistenz (C): Alle Knoten sehen zur selben Zeit dieselben Daten. Diese Konsistenz sollte nicht verwechselt werden mit der Konsistenz aus der ACID-Transaktionen, die nur die innere Konsistenz eines Datenbestandes betrifft. Verfügbarkeit (A): Alle Anfragen an das System werden stets beantwortet. Partitionstoleranz (P): Das System arbeitet auch bei Verlust von Nachrichten, einzelner Netzknoten oder Partition des Netzes weiter.