SlideShare uma empresa Scribd logo
1 de 32
Tuning the Mobile Server
DOAG Konferenz
20. - 22.11.2012
Philipp Loer
ppl@ordix.de
www.ordix.de
 Einleitung
 Grundlagen
 Performance-Optimierung
 Fazit
Agenda
Tuning the Mobile Server, Philipp Loer, DOAG 2012 1
 Datenabgleich zwischen mobile Geräten und einer Oracle-Datenbank:
Einleitung
Oracle Database Mobile Server
Tuning the Mobile Server, Philipp Loer, DOAG 2012 3
 Einleitung
 Grundlagen
 Performance-Optimierung
 Fazit
Agenda
Tuning the Mobile Server, Philipp Loer, DOAG 2012 4
 erste Version 2002 als Oracle Lite 9i
 aktuell: Oracle Database Mobile Server 11g, verfügbar seit März 2011
Grundlagen
Oracle Database Mobile Server
Tuning the Mobile Server, Philipp Loer, DOAG 2012 5
 Eine Publikation enthält
 Publikationselemente
 Sequenzen
 Skripte
 Queues
 Abarbeitung der Transaktionen und Replikationen nach der Datenübertragung
 Verhindern die Verlängerung des Datenabgleichs durch Datenbanksperren
Grundlagen
Oracle Database Mobile Server
Tuning the Mobile Server, Philipp Loer, DOAG 2012 6
Grundlagen
Datenabgleich
Tuning the Mobile Server, Philipp Loer, DOAG 2012 7
Grundlagen
Basistransaktion
Tuning the Mobile Server, Philipp Loer, DOAG 2012 8
Grundlagen
Funktionsanalyse
Tuning the Mobile Server, Philipp Loer, DOAG 2012 9
Logging-Tabellen eines Publikationselementes
Tabelle Inhalt / Aufgabe Prefix
Originaltabelle Masterreplik -
Versionierungstabelle
Logging der serverseitigen
Änderungen
CVR$
Logging-Tabelle
Logging der übernommenen
Änderungen
CLG$
Mapping-Tabelle
Versionsinfo über die Datenstände
der Clients
CMP$
In-Queue
Von den Clients übergebene, noch
nicht verarbeitete Änderungen
CFM$
Error-Queue Konfliktbehaftete Transaktionen CEQ$
Tuning the Mobile Server, Philipp Loer, DOAG 2012 10
ORDERS
Primary
Key
… …
1
2
3
4
CLG$ORDERS
Primary
Key
Version$$ … …
1 3
2 4
3 2
4 7
CMP$ORDERS
Primary
Key
Version$$ CLID$$
TRANID$
$
… …
1 3 ORDIX
2 3 ORDIX
3 2 ORDIX
4 7 ORDIX
1 2 CONIATOS
2 4 CONIATOS
3 1 CONIATOS
4 7 CONIATOS
1 2 DOAG
2 4 DOAG
3 2 DOAG
4 7 DOAG
Trigger
Grundlagen
Funktionsanalyse
 Einleitung
 Grundlagen
 Performance-Optimierung
 Fazit
Agenda
Tuning the Mobile Server, Philipp Loer, DOAG 2012 11
Physikalische Datenorganisation
 Die Mapping-Tabelle enthält die Informationen, welcher Client welche
Version eines Datensatzes hat.
 Bei einem Datenabgleich werden immer alle „Log-Informationen“ eines
Clients benötigt.
Performance-Optimierung
Physikalische Datenorganisation
Tuning the Mobile Server, Philipp Loer, DOAG 2012 12
Die Datensätze der Mapping-Tabelle zu einem bestimmten Client
werden auf möglichst wenige Blöcke verteilt.
Performance-Optimierung
Physikalische Datenorganisation
Tuning the Mobile Server, Philipp Loer, DOAG 2012 13
Die Datensätze der Mapping-Tabelle zu einem bestimmten Client
werden auf möglichst wenige Blöcke verteilt.
Tabelle CMP$ORDERS vorher
Tabelle CMP$ORDERS nachher
Umsetzung:
 Offline:
 Online:
Performance-Optimierung
Physikalische Datenorganisation
Tuning the Mobile Server, Philipp Loer, DOAG 2012 14
CREATE TABLE interim_table_name AS SELECT FROM table_name ORDER BY column_name;
DROP TABLE table_name;
ALTER TABLE interim_table_name RENAME TO table_name;
CREATE TABLE interim_table_name AS SELECT FROM table_name WHERE 1 = 2;
exec dbms_redefinition.start_redef_table ...... orderby_cols (!)
exec dbms_redefinition.copy_table_dependents
exec dbms_redefinition.finish_redef_table
exec dbms_stats.gather_table_stats
DROP TABLE table_name;
Tuning the Mobile Server, Philipp Loer, DOAG 2012 15
Performance-Optimierung
Physikalische Datenorganisation
Tuning the Mobile Server, Philipp Loer, DOAG 2012 16
Performance-Optimierung
Physikalische Datenorganisation
Partitionierung
 horizontale Teilung einer Tabelle
 hier: Hash-Partitionierung nach der Client-ID
Performance-Optimierung
Partitionierung
Tuning the Mobile Server, Philipp Loer, DOAG 2012 17
Die Datensätze der Mapping-Tabelle zu einem bestimmten Client
werden automatisch auf möglichst wenige Blöcke verteilt.
Tabelle
Partition 1 Partition 2 Partition 3 Partition n
Tuning the Mobile Server, Philipp Loer, DOAG 2012 18
Performance-Optimierung
Partitionierung
Shared Maps
 Datenänderung nur auf der Master-Seite erlaubt
 Nachteil: Keine Offline-Transaktionen möglich
 Vorteil: Verminderter „Verwaltungsaufwand“
Mapping-Tabelle speichert nicht mehr, welcher Client welchen Datenstand
hat, sondern nur einen Versionszähler für jeden Datensatz
Performance-Optimierung
Shared Maps
Tuning the Mobile Server, Philipp Loer, DOAG 2012 19
Mapping-Tabelle speichert statt einer 1:n-Beziehung
nur noch 1:1-Beziehungen
Performance-Optimierung
Shared Maps
Tuning the Mobile Server, Philipp Loer, DOAG 2012 20
Testergebnisse Shared Maps
Geänderte Datensätze Shared Maps eingesetzt Abfrage Mapping-Tabelle in ms Gesamtdauer in s
1 0 nein 985 4,6
2 0 ja 72 3,8
3 5000 nein 1108 13,1
4 5000 ja 109 13,9
Vertikale Partitionierung
 Wird ein Datensatz geändert, so wird immer der ganze Datensatz
übertragen.
 Durch eine vertikale Partitionierung kann die zu übertagende Datenmenge
reduziert werden.
Performance-Optimierung
Vertikale Partitionierung
Tuning the Mobile Server, Philipp Loer, DOAG 2012 21
parts_1
•id
•label
•description
parts_2
•id
•manufacturer_id
•man_article
•deliver_time
•available
parts_3
•id
•price
parts
•id
•label
•description
•manufacturer_id
•man_article
•deliver_time
•available
•price
Performance-Optimierung
Vertikale Partitionierung
Tuning the Mobile Server, Philipp Loer, DOAG 2012 22
Testergebnisse vertikale Partitionierung
Geänderte Datensätze Vertikale Partitionierung Abfrage Mapping-Tabelle Gesamtdauer
1 0 Nein 72 ms 3,8 s
2 0 Ja 224 ms 3,9 s
3 5000 Nein 109 ms 13,9 s
4 5000 Ja 343 ms 6,0 s
Begrenzung der Datenmenge
 Nicht immer benötigt jeder Client alle Datensätze eines
Publikationselementes.
 Durch eine Änderung der Base-Query kann diese angepasst werden
 Vorherige Base-Query:
 Nachher:
Performance-Optimierung
Begrenzung der Datenmenge
Tuning the Mobile Server, Philipp Loer, DOAG 2012 23
SELECT * FROM contact_persons ;
SELECT cp.*
FROM employees emp , emp_areas ea, areas a, customers c,
contact_persons cp
WHERE emp.id = ea.emp_id
AND ea.area_id = a.id
AND a.zipcode = c.zipcode
AND c.id = cp.customer_id
AND emp.client_id =:client_id;
Performance-Optimierung
Begrenzung der Datenmenge
Tuning the Mobile Server, Philipp Loer, DOAG 2012 24
Testergebnisse Begrenzung der Datenmenge
Anzahl übertragener
Datensätze
Daten-
begrenzung
Abfrage der Mapping-Tabelle Gesamtdauer
übertragene
Datenmenge
1 5000 Ja 120 ms 10,4 s 1,2 MB
2 25000 Ja 312 ms 34,2 s 5,5 MB
3 50000 Ja 374 ms 66,5 s 10,1 MB
4 50000 Nein 369 ms 65,0 s 10,2 MB
Netzwerkgeschwindigkeit
 Ziel : Ermittlung des Performance-Einflusses der Netzwerkgeschwindigkeit
 Für einen Datenabgleich müssen die geänderten Daten ermittelt,
übermittelt und auf der anderen Seite verarbeitet werden.
 Nur für die Übermittlung der Daten ist die Netzwerkgeschwindigkeit
von Bedeutung.
Performance-Optimierung
Netzwerkgeschwindigkeit
Tuning the Mobile Server, Philipp Loer, DOAG 2012 25
Performance-Optimierung
Netzwerkgeschwindigkeit
Tuning the Mobile Server, Philipp Loer, DOAG 2012 26
Testergebnisse Netzwerkgeschwindigkeit
Netzwerkverbindung Geänderte Datensätze Übertragungsdauer übertragene Datenmenge
1 10 Mbit 0 2,4 s 0,2 MB
2 100 Mbit 0 2,0 s 0,2 MB
3 10 Mbit 1.000 13,3 s 0,8 MB
4 100 Mbit 1.000 11,4 s 0,9 MB
5 10 Mbit 5.000 19,8 s 2,0 MB
6 100 Mbit 5.000 15,9 s 1,9 MB
 100.000 Datensätze in der Tabelle ORDERS
Performance-Optimierung
weitere Optimierungsmöglichkeiten
Tuning the Mobile Server, Philipp Loer, DOAG 2012 27
Weitere Optimierungsmöglichkeiten
 Base-Query Tuning
 Priority Based Replication
 Base-Query Caching
 Index Organized Tables (IOT)
 Partition Mapping
 Mobile.ora Parameter
 Max Threads
 Connection Pooling
 Synchronisation Tablespace Layout
 Einleitung
 Grundlagen
 Performance-Optimierung
 Fazit
Agenda
Tuning the Mobile Server, Philipp Loer, DOAG 2012 28
 Physikalische Datenorganisation
 Horizontale Partitionierung
 Vertikale Partitionierung
 Shared Maps
 Datenmengenbegrenzung
 Weitere Tuningmöglichkeiten
Fazit
Tuning the Mobile Server, Philipp Loer, DOAG 2012 29
Vielen Dank für Ihre Aufmerksamkeit!
Zentrale Paderborn
Westernmauer 12 - 16
33098 Paderborn
Tel.: 05251 1063-0
Seminarzentrum Wiesbaden
Kreuzberger Ring 13
65205 Wiesbaden
Tel.: 0611 77840-00
Zentrales Fax:
0180 1 67349 0
0180 1 ORDIX 0
Weitere Geschäftsstellen
in Köln, Münster und Neu-Ulm
E-Mail: info@ordix.de
Internet: http://www.ordix.de
Die ORDIX AG auf der DOAG 2012
Memory – Ein Drilldown
von der SGA über die PGA
bis zum Database Buffer Advisor
Referent: Klaus Reimers,
ORDIX AG
Space – the final frontier:
Speicher- und Performance-
Aspekte in Oracle Tablespaces
Referent: Martin Hoermann,
ORDIX AG
Tuning the Mobile Server
Referent: Phillip Loer,
ORDIX AG
Active-DataGuard bei
Autoscout24
Referentin: Sabine Langer,
AutoScout24
Co-Referent: Michael Skowasch,
ORDIX AG
DOAG Schulungstag am 23.11.2012
Hands-On
Oracle Application Express
Referent: Matthias Jung
ORDIX AG
Seminarinhalte:
• Erstellung und Verwaltung von Applikationen
• Verwendung der unterschiedlichen Seitenelemente
• Erstellen von Reporting-Tabellen und Diagrammen
• Verwendung von Formularen zur Datenerfassung
• Verwaltung von Usern
• Möglichkeiten zur User-Authentifizierung
Begleitende CD
Die CD erhalten Sie
an unserem Stand:
Ebene 3, Stand 322

Mais conteúdo relacionado

Semelhante a Oracle Database Mobile Server Performance Tuning

Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...
Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...
Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...Lars Platzdasch
 
Datenbank-Hausputz für Einsteiger
Datenbank-Hausputz für EinsteigerDatenbank-Hausputz für Einsteiger
Datenbank-Hausputz für EinsteigerMarkus Flechtner
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktopxKinAnx
 
Analytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rMarcel Franke
 
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?panagenda
 
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!confluent
 
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3We4IT Group
 
IBM Notes- / Domino-Migration
IBM Notes- / Domino-MigrationIBM Notes- / Domino-Migration
IBM Notes- / Domino-MigrationDocHouse GmbH
 
NEW VERSION: Data Quality und SOA
NEW VERSION: Data Quality und SOANEW VERSION: Data Quality und SOA
NEW VERSION: Data Quality und SOAUniserv
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißOPITZ CONSULTING Deutschland
 
Meet Magento - High performance magento
Meet Magento - High performance magentoMeet Magento - High performance magento
Meet Magento - High performance magentoAOE
 
mongoDB im Einsatz - Grundlagen
mongoDB im Einsatz - GrundlagenmongoDB im Einsatz - Grundlagen
mongoDB im Einsatz - Grundlageninovex GmbH
 
Wie kommt der Client zur Datenbank?
Wie kommt der Client zur Datenbank?Wie kommt der Client zur Datenbank?
Wie kommt der Client zur Datenbank?Markus Flechtner
 
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang Rütter
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang RütterOracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang Rütter
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang RütterOPITZ CONSULTING Deutschland
 
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human InferenceDataValueTalk
 
Sql best practices for SharePoint 2010
Sql best practices for SharePoint 2010Sql best practices for SharePoint 2010
Sql best practices for SharePoint 2010Samuel Zürcher
 
SharePoint 2016 - was kommt auf uns zu?
SharePoint 2016 - was kommt auf uns zu?SharePoint 2016 - was kommt auf uns zu?
SharePoint 2016 - was kommt auf uns zu?IOZ AG
 
Database Change Management
Database Change ManagementDatabase Change Management
Database Change ManagementDominik Hirt
 

Semelhante a Oracle Database Mobile Server Performance Tuning (20)

Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...
Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...
Optimizing SQL Server 2012 Deep dive for SharePoint 2013 Lars Platzdasch SQL ...
 
Datenbank-Hausputz für Einsteiger
Datenbank-Hausputz für EinsteigerDatenbank-Hausputz für Einsteiger
Datenbank-Hausputz für Einsteiger
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktop
 
DOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best PracticeDOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best Practice
 
Analytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und r
 
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
AdminCamp 2014: Quo Vadis – Wohin mit IBM Notes/Domino?
 
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
Event-Streaming in Echtzeit: Der MongoDB-Kafka-Connector in Action!
 
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3
IHRE IBM LOTUS NOTES-DATEN AN JEDEM ORT ZU JEDER ZEIT 1/3
 
IBM Notes- / Domino-Migration
IBM Notes- / Domino-MigrationIBM Notes- / Domino-Migration
IBM Notes- / Domino-Migration
 
NEW VERSION: Data Quality und SOA
NEW VERSION: Data Quality und SOANEW VERSION: Data Quality und SOA
NEW VERSION: Data Quality und SOA
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
 
Meet Magento - High performance magento
Meet Magento - High performance magentoMeet Magento - High performance magento
Meet Magento - High performance magento
 
mongoDB im Einsatz - Grundlagen
mongoDB im Einsatz - GrundlagenmongoDB im Einsatz - Grundlagen
mongoDB im Einsatz - Grundlagen
 
Infrastructure Solution Day | Core
Infrastructure Solution Day | CoreInfrastructure Solution Day | Core
Infrastructure Solution Day | Core
 
Wie kommt der Client zur Datenbank?
Wie kommt der Client zur Datenbank?Wie kommt der Client zur Datenbank?
Wie kommt der Client zur Datenbank?
 
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang Rütter
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang RütterOracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang Rütter
Oracle ETL Herausforderungen - OPITZ CONSULTING - Till Sander - Wolfgang Rütter
 
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
 
Sql best practices for SharePoint 2010
Sql best practices for SharePoint 2010Sql best practices for SharePoint 2010
Sql best practices for SharePoint 2010
 
SharePoint 2016 - was kommt auf uns zu?
SharePoint 2016 - was kommt auf uns zu?SharePoint 2016 - was kommt auf uns zu?
SharePoint 2016 - was kommt auf uns zu?
 
Database Change Management
Database Change ManagementDatabase Change Management
Database Change Management
 

Oracle Database Mobile Server Performance Tuning

  • 1. Tuning the Mobile Server DOAG Konferenz 20. - 22.11.2012 Philipp Loer ppl@ordix.de www.ordix.de
  • 2.  Einleitung  Grundlagen  Performance-Optimierung  Fazit Agenda Tuning the Mobile Server, Philipp Loer, DOAG 2012 1
  • 3.  Datenabgleich zwischen mobile Geräten und einer Oracle-Datenbank: Einleitung Oracle Database Mobile Server Tuning the Mobile Server, Philipp Loer, DOAG 2012 3
  • 4.  Einleitung  Grundlagen  Performance-Optimierung  Fazit Agenda Tuning the Mobile Server, Philipp Loer, DOAG 2012 4
  • 5.  erste Version 2002 als Oracle Lite 9i  aktuell: Oracle Database Mobile Server 11g, verfügbar seit März 2011 Grundlagen Oracle Database Mobile Server Tuning the Mobile Server, Philipp Loer, DOAG 2012 5
  • 6.  Eine Publikation enthält  Publikationselemente  Sequenzen  Skripte  Queues  Abarbeitung der Transaktionen und Replikationen nach der Datenübertragung  Verhindern die Verlängerung des Datenabgleichs durch Datenbanksperren Grundlagen Oracle Database Mobile Server Tuning the Mobile Server, Philipp Loer, DOAG 2012 6
  • 7. Grundlagen Datenabgleich Tuning the Mobile Server, Philipp Loer, DOAG 2012 7
  • 8. Grundlagen Basistransaktion Tuning the Mobile Server, Philipp Loer, DOAG 2012 8
  • 9. Grundlagen Funktionsanalyse Tuning the Mobile Server, Philipp Loer, DOAG 2012 9 Logging-Tabellen eines Publikationselementes Tabelle Inhalt / Aufgabe Prefix Originaltabelle Masterreplik - Versionierungstabelle Logging der serverseitigen Änderungen CVR$ Logging-Tabelle Logging der übernommenen Änderungen CLG$ Mapping-Tabelle Versionsinfo über die Datenstände der Clients CMP$ In-Queue Von den Clients übergebene, noch nicht verarbeitete Änderungen CFM$ Error-Queue Konfliktbehaftete Transaktionen CEQ$
  • 10. Tuning the Mobile Server, Philipp Loer, DOAG 2012 10 ORDERS Primary Key … … 1 2 3 4 CLG$ORDERS Primary Key Version$$ … … 1 3 2 4 3 2 4 7 CMP$ORDERS Primary Key Version$$ CLID$$ TRANID$ $ … … 1 3 ORDIX 2 3 ORDIX 3 2 ORDIX 4 7 ORDIX 1 2 CONIATOS 2 4 CONIATOS 3 1 CONIATOS 4 7 CONIATOS 1 2 DOAG 2 4 DOAG 3 2 DOAG 4 7 DOAG Trigger Grundlagen Funktionsanalyse
  • 11.  Einleitung  Grundlagen  Performance-Optimierung  Fazit Agenda Tuning the Mobile Server, Philipp Loer, DOAG 2012 11
  • 12. Physikalische Datenorganisation  Die Mapping-Tabelle enthält die Informationen, welcher Client welche Version eines Datensatzes hat.  Bei einem Datenabgleich werden immer alle „Log-Informationen“ eines Clients benötigt. Performance-Optimierung Physikalische Datenorganisation Tuning the Mobile Server, Philipp Loer, DOAG 2012 12 Die Datensätze der Mapping-Tabelle zu einem bestimmten Client werden auf möglichst wenige Blöcke verteilt.
  • 13. Performance-Optimierung Physikalische Datenorganisation Tuning the Mobile Server, Philipp Loer, DOAG 2012 13 Die Datensätze der Mapping-Tabelle zu einem bestimmten Client werden auf möglichst wenige Blöcke verteilt. Tabelle CMP$ORDERS vorher Tabelle CMP$ORDERS nachher
  • 14. Umsetzung:  Offline:  Online: Performance-Optimierung Physikalische Datenorganisation Tuning the Mobile Server, Philipp Loer, DOAG 2012 14 CREATE TABLE interim_table_name AS SELECT FROM table_name ORDER BY column_name; DROP TABLE table_name; ALTER TABLE interim_table_name RENAME TO table_name; CREATE TABLE interim_table_name AS SELECT FROM table_name WHERE 1 = 2; exec dbms_redefinition.start_redef_table ...... orderby_cols (!) exec dbms_redefinition.copy_table_dependents exec dbms_redefinition.finish_redef_table exec dbms_stats.gather_table_stats DROP TABLE table_name;
  • 15. Tuning the Mobile Server, Philipp Loer, DOAG 2012 15 Performance-Optimierung Physikalische Datenorganisation
  • 16. Tuning the Mobile Server, Philipp Loer, DOAG 2012 16 Performance-Optimierung Physikalische Datenorganisation
  • 17. Partitionierung  horizontale Teilung einer Tabelle  hier: Hash-Partitionierung nach der Client-ID Performance-Optimierung Partitionierung Tuning the Mobile Server, Philipp Loer, DOAG 2012 17 Die Datensätze der Mapping-Tabelle zu einem bestimmten Client werden automatisch auf möglichst wenige Blöcke verteilt. Tabelle Partition 1 Partition 2 Partition 3 Partition n
  • 18. Tuning the Mobile Server, Philipp Loer, DOAG 2012 18 Performance-Optimierung Partitionierung
  • 19. Shared Maps  Datenänderung nur auf der Master-Seite erlaubt  Nachteil: Keine Offline-Transaktionen möglich  Vorteil: Verminderter „Verwaltungsaufwand“ Mapping-Tabelle speichert nicht mehr, welcher Client welchen Datenstand hat, sondern nur einen Versionszähler für jeden Datensatz Performance-Optimierung Shared Maps Tuning the Mobile Server, Philipp Loer, DOAG 2012 19 Mapping-Tabelle speichert statt einer 1:n-Beziehung nur noch 1:1-Beziehungen
  • 20. Performance-Optimierung Shared Maps Tuning the Mobile Server, Philipp Loer, DOAG 2012 20 Testergebnisse Shared Maps Geänderte Datensätze Shared Maps eingesetzt Abfrage Mapping-Tabelle in ms Gesamtdauer in s 1 0 nein 985 4,6 2 0 ja 72 3,8 3 5000 nein 1108 13,1 4 5000 ja 109 13,9
  • 21. Vertikale Partitionierung  Wird ein Datensatz geändert, so wird immer der ganze Datensatz übertragen.  Durch eine vertikale Partitionierung kann die zu übertagende Datenmenge reduziert werden. Performance-Optimierung Vertikale Partitionierung Tuning the Mobile Server, Philipp Loer, DOAG 2012 21 parts_1 •id •label •description parts_2 •id •manufacturer_id •man_article •deliver_time •available parts_3 •id •price parts •id •label •description •manufacturer_id •man_article •deliver_time •available •price
  • 22. Performance-Optimierung Vertikale Partitionierung Tuning the Mobile Server, Philipp Loer, DOAG 2012 22 Testergebnisse vertikale Partitionierung Geänderte Datensätze Vertikale Partitionierung Abfrage Mapping-Tabelle Gesamtdauer 1 0 Nein 72 ms 3,8 s 2 0 Ja 224 ms 3,9 s 3 5000 Nein 109 ms 13,9 s 4 5000 Ja 343 ms 6,0 s
  • 23. Begrenzung der Datenmenge  Nicht immer benötigt jeder Client alle Datensätze eines Publikationselementes.  Durch eine Änderung der Base-Query kann diese angepasst werden  Vorherige Base-Query:  Nachher: Performance-Optimierung Begrenzung der Datenmenge Tuning the Mobile Server, Philipp Loer, DOAG 2012 23 SELECT * FROM contact_persons ; SELECT cp.* FROM employees emp , emp_areas ea, areas a, customers c, contact_persons cp WHERE emp.id = ea.emp_id AND ea.area_id = a.id AND a.zipcode = c.zipcode AND c.id = cp.customer_id AND emp.client_id =:client_id;
  • 24. Performance-Optimierung Begrenzung der Datenmenge Tuning the Mobile Server, Philipp Loer, DOAG 2012 24 Testergebnisse Begrenzung der Datenmenge Anzahl übertragener Datensätze Daten- begrenzung Abfrage der Mapping-Tabelle Gesamtdauer übertragene Datenmenge 1 5000 Ja 120 ms 10,4 s 1,2 MB 2 25000 Ja 312 ms 34,2 s 5,5 MB 3 50000 Ja 374 ms 66,5 s 10,1 MB 4 50000 Nein 369 ms 65,0 s 10,2 MB
  • 25. Netzwerkgeschwindigkeit  Ziel : Ermittlung des Performance-Einflusses der Netzwerkgeschwindigkeit  Für einen Datenabgleich müssen die geänderten Daten ermittelt, übermittelt und auf der anderen Seite verarbeitet werden.  Nur für die Übermittlung der Daten ist die Netzwerkgeschwindigkeit von Bedeutung. Performance-Optimierung Netzwerkgeschwindigkeit Tuning the Mobile Server, Philipp Loer, DOAG 2012 25
  • 26. Performance-Optimierung Netzwerkgeschwindigkeit Tuning the Mobile Server, Philipp Loer, DOAG 2012 26 Testergebnisse Netzwerkgeschwindigkeit Netzwerkverbindung Geänderte Datensätze Übertragungsdauer übertragene Datenmenge 1 10 Mbit 0 2,4 s 0,2 MB 2 100 Mbit 0 2,0 s 0,2 MB 3 10 Mbit 1.000 13,3 s 0,8 MB 4 100 Mbit 1.000 11,4 s 0,9 MB 5 10 Mbit 5.000 19,8 s 2,0 MB 6 100 Mbit 5.000 15,9 s 1,9 MB  100.000 Datensätze in der Tabelle ORDERS
  • 27. Performance-Optimierung weitere Optimierungsmöglichkeiten Tuning the Mobile Server, Philipp Loer, DOAG 2012 27 Weitere Optimierungsmöglichkeiten  Base-Query Tuning  Priority Based Replication  Base-Query Caching  Index Organized Tables (IOT)  Partition Mapping  Mobile.ora Parameter  Max Threads  Connection Pooling  Synchronisation Tablespace Layout
  • 28.  Einleitung  Grundlagen  Performance-Optimierung  Fazit Agenda Tuning the Mobile Server, Philipp Loer, DOAG 2012 28
  • 29.  Physikalische Datenorganisation  Horizontale Partitionierung  Vertikale Partitionierung  Shared Maps  Datenmengenbegrenzung  Weitere Tuningmöglichkeiten Fazit Tuning the Mobile Server, Philipp Loer, DOAG 2012 29
  • 30. Vielen Dank für Ihre Aufmerksamkeit! Zentrale Paderborn Westernmauer 12 - 16 33098 Paderborn Tel.: 05251 1063-0 Seminarzentrum Wiesbaden Kreuzberger Ring 13 65205 Wiesbaden Tel.: 0611 77840-00 Zentrales Fax: 0180 1 67349 0 0180 1 ORDIX 0 Weitere Geschäftsstellen in Köln, Münster und Neu-Ulm E-Mail: info@ordix.de Internet: http://www.ordix.de
  • 31. Die ORDIX AG auf der DOAG 2012 Memory – Ein Drilldown von der SGA über die PGA bis zum Database Buffer Advisor Referent: Klaus Reimers, ORDIX AG Space – the final frontier: Speicher- und Performance- Aspekte in Oracle Tablespaces Referent: Martin Hoermann, ORDIX AG Tuning the Mobile Server Referent: Phillip Loer, ORDIX AG Active-DataGuard bei Autoscout24 Referentin: Sabine Langer, AutoScout24 Co-Referent: Michael Skowasch, ORDIX AG DOAG Schulungstag am 23.11.2012 Hands-On Oracle Application Express Referent: Matthias Jung ORDIX AG Seminarinhalte: • Erstellung und Verwaltung von Applikationen • Verwendung der unterschiedlichen Seitenelemente • Erstellen von Reporting-Tabellen und Diagrammen • Verwendung von Formularen zur Datenerfassung • Verwaltung von Usern • Möglichkeiten zur User-Authentifizierung
  • 32. Begleitende CD Die CD erhalten Sie an unserem Stand: Ebene 3, Stand 322

Notas do Editor

  1. Quasi Copy Anzahl der zulässigen Transaktionen seit dem letzten Datenabgleich begrenzt Alternativ Begrenzung des Zeitraums Epsilon Serialisierbarkeit Jedes Replikat dokumentiert seine Abweichung zum Master Epsilon Grenze der zulässigen Abweichung
  2. Quasi Copy Anzahl der zulässigen Transaktionen seit dem letzten Datenabgleich begrenzt Alternativ Begrenzung des Zeitraums Epsilon Serialisierbarkeit Jedes Replikat dokumentiert seine Abweichung zum Master Epsilon Grenze der zulässigen Abweichung
  3. Quasi Copy Anzahl der zulässigen Transaktionen seit dem letzten Datenabgleich begrenzt Alternativ Begrenzung des Zeitraums Epsilon Serialisierbarkeit Jedes Replikat dokumentiert seine Abweichung zum Master Epsilon Grenze der zulässigen Abweichung
  4. Quasi Copy Anzahl der zulässigen Transaktionen seit dem letzten Datenabgleich begrenzt Alternativ Begrenzung des Zeitraums Epsilon Serialisierbarkeit Jedes Replikat dokumentiert seine Abweichung zum Master Epsilon Grenze der zulässigen Abweichung
  5. LIST RANGE SYSTEM HASH