Ein APEX für alle und alle für APEX! Niels de Bruijn, Fachbereichsleiter APEX 11.05.2016, DOAG DB Konferenz
Agenda Was war APEX nochmal? APEX in meiner Datenbank Was bringt APEX für die Firma? Was ist für mich als DBA drin? Q&A Ein für alle und alle für APEX! 2
Über mich Niels de Bruijn, Fachbereichsleiter APEX Geboren in 1977, verheiratet, drei Töchter, Wohnort Ratingen seit 12.2003 bei der MT AG in Ratingen zuvor 2 Jahre als Berater bei Oracle Nederland B.V. angestellt Beschäftigt sich seit 2004 mit APEX Federführend beim Vertrieb/Marketing/Delivery von APEX Projekten aller Art https://apex.mt-ag.com Themenverantwortlicher für APEX bei der DOAG & Organisator für APEX Connect Initiator für die DOAG Conventions auf GitHub Hält Vorträge u.a. auf der DOAG Konferenz, DOAG APEX Connect & ODTUG Kscope Ein für alle und alle für APEX! 3
apex.mt-ag.com Ein für alle und alle für APEX! 4
Facts & Figures Technologie-orientiert Branchen-unabhängig Hauptsitz Ratingen 240 Beschäftigte Inhabergeführt 24 Mio. Euro Umsatz Gründung 1994 Zertifizierter Partner von Oracle, Microsoft und SAP Ausbildungsbetrieb Niederlassungen in Frankfurt am Main, Dortmund, Köln Ein für alle und alle für APEX! 5
Was war APEX nochmal? Rapid Application Development Produkt für die Erstellung von individuellen datenzentrischen Webanwendungen 100% Oracle-Datenbank, 100% Browser Oracle 11.1.0.7 und höher (inkl. XE) Kostenloses Feature der Oracle Datenbank Aktuelle Version ist 5.0.3 Für Desktop sowie mobile Endgeräte 6
Metadaten-getrieben statt Generatoransatz Was war APEX nochmal? Rapid Application Development mit APEX 5 7
Architektur in der Produktion Was war APEX nochmal? Ein für alle und alle für APEX! 8
Agenda Was war APEX nochmal? APEX in meiner Datenbank Was bringt APEX für die Firma? Was ist für mich als DBA drin? Q&A Ein für alle und alle für APEX! 9
Woraus besteht APEX? APEX in meiner Datenbank APEX wurde durch 12 (Kern)entwickler mit APEX entwickelt 10 Sprachen > 2.000 APEX Seiten > 3.000 Datenbankobjekte > 450 Tabellen 4 Jobs APEX + 35 Packaged Apps Auswertung über 120 Repository Views (z.b. apex_applications) Rapid Application Development mit APEX 5 10
Wie erfolgt der Zugriff? APEX in meiner Datenbank Das Produkt samt Anwendungsdefinitionen liegt im Schema apex_050000 Die Daten liegen im separaten Schema oder außerhalb der Datenbank Der Zugriff erfolgt über das Schema apex_public_user (ORDS) oder anonymous (EPG) apex_public_user (ORDS) oder anonymous (EPG) apex_050000 flows_files mein_schema (daten) Rapid Application Development mit APEX 5 11
Skalierbarkeit: apex.oraclecorp.com APEX in meiner Datenbank Ein für alle und alle für APEX! 12
Skalierbarkeit APEX in meiner Datenbank Anzahl registrierter Benutzer: 30.000 Anzahl angemeldeter Benutzer: 1.000 davon im Parallelbetrieb: 10 Zeitraum: 29.03.2015-12.04.2015 Anzahl Page Events: 38.949 Durchschnittliche CPU Zeit pro Page Event: 0,84137642 s (Anzahl Benutzer / Max. akzeptierte Antwortzeit) * CPU Zeit = Kerne (10 / 2) * 0,84137642 = 4,2068821, also 5 Kerne Ein für alle und alle für APEX! 13
v$session APEX in meiner Datenbank Applikations ID Applikationsbenutzer APEX Session ID Rapid Application Development mit APEX 5 14
Last? Welcher Last? APEX in meiner Datenbank Die Last liegt in der Datenbank APEX selbst verursacht keine nennenswerte Auslastung APEX kann in der Produktion auch ohne Oberfläche installiert werden Wenn es ein Problem mit der Auslastung gibt dann liegt dies meist am Datenmodell oder am PL/SQL Code (also am Entwickler :) Aktuell ist eine APEX Installation pro Datenbank möglich Eine Installation pro PDB ist möglich und sogar empfehlenswert Ein für alle und alle für APEX! 15
Agenda Was war APEX nochmal? APEX in meiner Datenbank Was bringt APEX für die Firma? Was ist für mich als DBA drin? Q&A Ein für alle und alle für APEX! 16
Was bringt APEX für die Firma? Skalierbarkeit (im Vergleich zu Access/Excel) Vergessen Sie Access und nutzen Sie Excel nur für Ihre Auswertungen Rapid Prototyping (im Vergleich zu Java/.Net) Prototypen stehen mit APEX schnell zur Verfügung und zwar ohne Lastenheft Kommunikationskanal über das Web (Desktop/Mobile) Ein für alle und alle für APEX! 17
Agenda Was war APEX nochmal? APEX in meiner Datenbank Was bringt APEX für die Firma? Was ist für mich als DBA drin? Q&A Ein für alle und alle für APEX! 18
Was ist für mich als DBA drin? APEX in meiner Datenbank Workspace internal SQL Workshop OMonAPEX & Alato Packaged App Data Reporter Websheet Provisioning PDBs - Als Super-Admin den vollen Zugriff - Arbeiten mit DB-Objekten im Web - Auswertung von Datenbanken - Datenvisualisierung im Web per Knopfdruck - Dateien & Texte teilen - App zur Verwaltung von PDBs in einer 12c DB Die Packaged Apps in APEX 5.0.3: Ein für alle und alle für APEX! 19
APEX & 12c: Self-Service Provisioning App (zum Testen) Rapid Application Development mit APEX 5 20
APEX Community Software/Dokumentation apex.oracle.com APEX World apex.world Oracle Community (DE): lang.oracleapex.com BLOG Aggregator (RSS Feed): aggrssgator.com/rss/odtug/apex Podcasts: apex.press/talkshow Forum: forum.oracleapex.com Open Source oraopensource.com Twitter Hash Tag: #orclapex Feature Requests: apex.oracle.com/vote Rapid Application Development mit APEX 5 21
Buchempfehlungen zu APEX Rapid Application Development mit APEX 5 22
@nielsdb Q&A http://blog.mt-ag.com/apex http://nielsdebr.blogspot.de http://de.linkedin.com/in/nielsdebruijn www.xing.com/profile/niels_debruijn
SQL Workshop Datenmodellierung im Web Rapid Application Development mit APEX 5 24
Interactive Report Rapid Application Development mit APEX 5 25
Kreuztabelle (Pivoting) Rapid Application Development mit APEX 5 26
Single Row Update Formular / Modale Dialoge Rapid Application Development mit APEX 5 27
Tabellarisches Formular Rapid Application Development mit APEX 5 28