B6 - Java Forum Stuttgart

Werbung
Vom UML Modell
ohne Umwege zur Datenbank
Wie lassen sich Produktivität
und Performance weiter steigern ?
[email protected]
[email protected]
© 2001 Poet Software GmbH. All rights reserved.
Neil A. Armstrong
der erst Mensch auf dem Mond
“Buzz” Aldrin ?
Todd A. Giblette
Sr. V.P. of First Horizon
• "Poet FastObjects™ is bringing our most technologicallyadvanced reports and utilities to market two months faster
than scheduled on the first stage of the MBO project," said
Giblette. "The time we’re saving with Poet FastObjects™ is
extremely important to us."
• "In addition to the development savings, we also save over
$75,000 per year on reduced database administration,
thanks to Poet FastObjects™“
5/16/2016 2:59:21 PM
© 2001 FastObjects™. All rights reserved.
Übersicht
•
•
•
•
•
Wie kommen Sie direkt vom UML-Modell zur Datenbank ?
Beispiel: Wie entwerfen Sie einen WebShop ?
Wer ist POET Software ?
Was machen FastObjects anders ?
Welchen Nutzen bieten FastObjects ?
• Performance
• Zuverlässigkeit
• Partnerschaft
• Versionierung
• Java API
• XML Import / Export
• Wie geht es weiter ?
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
FastObjects
Rational Rose UML Binding
Applikationsdefinition in UML
© 2001 Poet Software GmbH. All rights reserved.
Rational Rose Template für FastObjects
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
Beispiele für
Internetanwendungen
Shops, Portale und 3D Anwendungen
© 2001 Poet Software GmbH. All rights reserved.
1. Schritt: Der HTML Prototype
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
2. Schritt: Definition der DB-Klassen
Class XY
{
String Name;
...
}
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
3. Schritt: Implementierung der JSPs/EJBs
Klassen
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
http://community.fastobjects.com/webshop
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:22 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
http://community.fastobjects.com
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
Praxisbeispiel:
Die Poet eSupplierSolutions
• Anwenderoberfläche vollständig
über Browser realisiert
• HTML Ausgaben
• HTML Forms
• wenige Applets
• Programmlogik in Servlets realisiert
• Übernahme von Daten aus vielen Formaten
• Verwalten von Kunden / Produkten / Katalogen
• Ausgabe der Daten in vielfältigen Varianten
• Plattformunabhängig durch 100% Java & HTML
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
Wer ist Poet Software ?
Technologieführer im OODBMS Markt
© 2001 Poet Software GmbH. All rights reserved.
POET Software
•
•
•
•
Seit 1989 Datenbankentwicklung in Hamburg
Börsennotiert seit 1999
ca. 180 Mitarbeiter
Kernkompetenz:
• Persistenzmechanismen für hohe Anforderungen
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
POET Kunden und Märkte (Auswahl)
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
Produkte
• FastOjects™ e7
• Object-Persistenz
Objekt-Persistenz für eingebettete Anwendungen
• C++ und Java
• FastOjects™ t7
• Object-Server
Objekt-Server für Multi-User Anwendungen
• C++ und Java
• FastOjects™ j2
• Objekt-Persistenz für Echtzeit-Anwendungen und Kleingeräte
• 100% Java
5/16/2016 2:59:23 PM
© 2001 FastObjects™. All rights reserved.
FastObjects ™ Architektur
Java
C++
ODBC
XML
FastObjects Object Manager
e7
j2
TCP/IP
SQL
Factory
t7
DB2
t7
Replication
SQL-S.
ORACLE
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
Grundlagen FastObjects™
Der kleine Unterschied
© 2001 Poet Software GmbH. All rights reserved.
Was macht FastObjects™ anders als ein
RDBMS ?
Realität
Datenmodell
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
Relationale
Datenbank
FastObjects™ kann mit Tabellen arbeiten
...
ODBC Interface
Indizierung
Primärschlüssel
Datenmodell
FastObjects™
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
... deren Zeilen unabhängig sind ...
Datenmodell
FastObjects™
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
... die sich deshalb anpasen können ...
Versionierung
im laufenden Betrieb
Abgeleitete Klassen
Eingebettete Listen
Datenmodell
FastObjects™
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
... und direkt referenziert werden.
Direkte Referenzen
(Über DB-Grenzen
hinweg)
Beliebige Strukturen
ohne Umformungen
Datenmodell
FastObjects™
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
Hohe Performance durch
FastObjects™
Ohne Umwege schneller im Ziel
© 2001 Poet Software GmbH. All rights reserved.
Ist Ihre Anwendung zu schnell ?
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
Query-Funktionen
• Suchen und Index-Pflege auf dem Server
• Automatische Query-Optimierung
• Überlegene Index-Funktionen
• Zusammengesetzte Indizes
• Mehrfach-Indizes
• Kaskadierende Indizies
Person
Address
City
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
Relationen verbinden
durch Suchoperationen
Mapping
Datenstruktur
5/16/2016 2:59:24 PM
Mapping/Joins
© 2001 FastObjects™. All rights reserved.
Relationale
Datenbank
FastObjects™ verbindet direkt
FastObjects™
Datenstruktur
5/16/2016 2:59:24 PM
© 2001 FastObjects™. All rights reserved.
FastObjects™ vs. ORACLE
20000
msec
15000
10000
5000
1
R
C
A
4
LE
ts
ec
bj
5/16/2016 2:59:25 PM
3
O
st
Fa
Navigation in
Objektnetzwerken
0
O
Distance
2
© 2001 FastObjects™. All rights reserved.
FastObjects
ORACLE
Dr. Kremer
Bankgesellschaft Berlin/Eigenhandel
• Gefordert: Ein hochperformantes Produkt für komplexe
Risiko-Berechnungen
• "Das Team der Bankgesellschaft Berlin konnte hier
insbesondere von Poets guter Performance beim Zugriff auf
komplexe Daten profitieren.“
• " Poet bietet nicht nur eine erstklassige
Technologie, sondern auch
hervorragenden Support durch
qualifizierte, engagierte Mitarbeiter
– von den technischen Beratern über
den Vertrieb bis hin zur Telefon-Hotline."
5/16/2016 2:59:26 PM
© 2001 FastObjects™. All rights reserved.
Absolute Zuverlässigkeit
Unter allen Randbedingungen
© 2001 Poet Software GmbH. All rights reserved.
Lucent Technologies
“The latest version of the INTUITY AUDIX system embeds Poet's
FastObjects database as a data repository for increased system
reliability and less downtime for maintenance. FastObjects was
chosen because its software has a proven track record for
reliability in applications that require 100 percent uptime. In
addition, the feature set will provide future INTUITY AUDIX system
releases with leading edge data management technology.”
Bruce Galler,
Technical Manager
Lucent Technologies
Messaging Solutions Group
5/16/2016 2:59:26 PM
© 2001 FastObjects™. All rights reserved.
Zuverlässigkeit
•
•
•
•
Kein "single Point of Failure“
Ständige Selbstprüfungen
Online und incremental Backup
Server- und Client-Redundanz
5/16/2016 2:59:26 PM
© 2001 FastObjects™. All rights reserved.
Zuverlässigkeit
•
•
•
•
Kein "single Point of Failure“
Ständige Selbstprüfungen
Online und incremental Backup
Server- und Client-Redundanz
Server & Client
Failover
5/16/2016 2:59:26 PM
© 2001 FastObjects™. All rights reserved.
Erfolg durch Partnerschaft
Unterstützung bis zum Projekterfolg
© 2001 Poet Software GmbH. All rights reserved.
Werner Zuegel:
• "Mit der POET SQL Object Factory konnten wir unser
Aussendienstsystem auf POET-Basis ohne Änderung der
Applikation an eine relationale Datenbank anbinden. Unter
einer einheitlichen Programmierschnittstelle unterstützt
unser Produkt jetzt sowohl POET als auch DB2"
• Die neuartige Gateway-Technologie, die im Rahmen einer
engen Kooperation zwischen USU, BSH und der POET
Software GmbH entwickelt wurde, ermöglicht nun die
bruchlose Integration von objektorientierten und
relationalen Systemen unter einem einheitlichen Interface.
5/16/2016 2:59:26 PM
© 2001 FastObjects™. All rights reserved.
Bruce Craven
• „F.A. Davis brauchte einen Datenbankhersteller, der die
spezifischen Probleme des Projekt nachvollziehen und die
Möglichkeit zu Unterstützung und Kooperation in allen
Projektphasen bieten konnte.“
• "Was mir die Entscheidung für POET sehr leicht gemacht
hat, war ihre Bereitschaft, mit uns in diesem Projekt
zusammenzuarbeiten".
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Klassen-Versionierung
Nach der ersten Installation ...
© 2001 Poet Software GmbH. All rights reserved.
Cendant, London
• „We are the homes you buy, the hotels and resorts you visit, the
cars you rent and the services that you rely on...both on-line and
off-line. „
• Callcenter Software
• Große Datenbanken
• Keine Zeit für Konvertierungsläufe nach Versionswechseln
• Wechsel auf FastObjects™ kurz vor der Auslieferung
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Versionierung "on the fly" :
Ein "muß" im Internetzeitalter
• Neue Applikationsversionen können ohne vorhergehende
vollständige Datenbank-Konvertierung auf bestehende
Datenbestände zugreifen
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Versionierung "on the fly" :
Ein "muß" im Internetzeitalter
• Neue Applikationsversionen können ohne vorhergehende
vollständige Datenbank-Konvertierung auf bestehende
Datenbestände zugreifen
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Geringer Speicherbedarf
Die Datenbank ist nicht das Einzige !
© 2001 Poet Software GmbH. All rights reserved.
FastObjects j2
•
•
•
•
•
•
100% Java
450 KB Jar File
Modernste Architektur
Hohe Performance
Maximale Verfügbarkeit
Optimiert für Echtzeit-Systeme
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Ericsson
“We evaluated all of the potential database vendors
and selected Poet´s FastObject Technology because
they have the most experience in small footprint object
storage in embedded environments. Ericsson is very
excited about working with FastObjects”
David Jordan, Director of Database
Technologies-New Concepts, Ericsson
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
POET ODMG Java API
Efficient Application Development
© 2001 Poet Software GmbH. All rights reserved.
Dafür haben wir keine Zeit !
Connection
con=DriverManager.getConnection
(url, "Admin", "duke1");
Connection con =
DriverManager.getConnection (url,
"Admin", "duke1");
Statement stmt = con.createStatement();
stmt = con.createStatement();
stmt.executeUpdate("insert into
SUPPLIERS values(49, 'Superior Coffee',
'1 Party Place', Mendocino', 'CA',
'95460')");
createString = "create table SUPPLIERS
(SUP_ID int, SUP_NAME
varchar(40),
STREET varchar(40),
CITY varchar(20),
STATE char(2), ZIP
char(5))";
stmt.close();
con.close();
stmt.executeUpdate(createString);
stmt.close();
con.close();
5/16/2016 2:59:27 PM
© 2001 FastObjects™. All rights reserved.
Erzeugen einer Datenbank
Person.java
createDatabase.bat
public class Person
{
String FirstName;
String LastName;
public void setLastName(...) {...}
public String getLastName() {...}
...
}
5/16/2016 2:59:28 PM
ptjavac -xc *.java
ptjavac.opt
[classes\Person]
persistent = true
hasExtent = true
© 2001 FastObjects™. All rights reserved.
Speichern neuer Objekte
Demo.java
Transaction myTransaction = new Transaction(myBase);
myTransaction.begin();
myTransaction.commit();
5/16/2016 2:59:28 PM
© 2001 FastObjects™. All rights reserved.
Speichern neuer Objekte
Demo.java
Transaction myTransaction = new Transaction(myBase);
myTransaction.begin();
Person myPerson=new Person("Anton");
myBase.makePersistent(myPerson);
myTransaction.commit();
5/16/2016 2:59:29 PM
© 2001 FastObjects™. All rights reserved.
Speichern neuer Objekte
Demo.java
Transaction myTransaction = new Transaction(myBase);
myTransaction.begin();
Person myPerson=new Person("Anton");
myBase.makePersistent(myPerson);
myPerson.add(new Address("Berlin"));
myPerson.add(new Address("Hagen"));
myTransaction.commit();
5/16/2016 2:59:29 PM
© 2001 FastObjects™. All rights reserved.
Suchen und laden von Objekten
Demo.java
String quest = "SELECT * FROM x IN PersonExtent "+
"WHERE x.Name LIKE \"A*\"";
OQLQuery query = new OQLQuery(quest);
BagOfObject bag = (BagOfObject)query.execute();
Iterator i = bag.iterator();
while (i.hasNext())
{
System.out.println(i.next());
}
5/16/2016 2:59:29 PM
© 2001 FastObjects™. All rights reserved.
XML Import / Export
Einfacher Datenaustausch via ASCII
© 2001 Poet Software GmbH. All rights reserved.
XML: Daten via ASCII austauschen
• Jede FastObjects™ Datenbank kann teilweise oder
vollständig als XML exportiert und importiert werden
• Austausch über „well formed“ XML
• Keine DTD oder Schema Definition notwendig
• Beliebige Datenstrukturen
• Jede FastObjects™ Datenbank kann mit Schemadefinitionen
auf XML-Sub-Standards spezialisiert werden
• Umsetzung von Schema-Definitionen in Java Klassen
• Suchen und Anwendungen auf XML-Daten im Binär-Format
• Ausgabe in beliebige XML Formate
5/16/2016 2:59:30 PM
© 2001 FastObjects™. All rights reserved.
FastObjects XML Wizard
<XMLSchema
Definition>
Internet
<XML-Data>
<XML-Data>
5/16/2016 2:59:30 PM
© 2001 FastObjects™. All rights reserved.
5/16/2016 2:59:30 PM
© 2001 FastObjects™. All rights reserved.
Wie geht es weiter ?
Wie Sie FastObjects
kennenlernen und nutzen
© 2001 Poet Software GmbH. All rights reserved.
Wie starten Sie mit FastObjects ?
• Diskutieren Sie Ihr Projekt mit uns
• Testen Sie die Trial CD
• Fragen Sie nach einem
Discovery Day
• Ordern Sie ein Quickstart Package
• Software Development Kit
• 4 Tage Training & Consulting vor Ort
• 3 Monate Hotline Support und PDN
5/16/2016 2:59:30 PM
© 2001 FastObjects™. All rights reserved.
www.poet.de
www.fastobjects.de
community.fastobjects.com
[email protected]
[email protected]
© 2001 Poet Software GmbH. All rights reserved.
Herunterladen