Oracle 12c Threaded Execution – 
Resourcen sparen zum Nulltarif?!? 
Markus Flechtner 
BASEL BERN BRUGG LAUSANNE ZÜRICH DÜS...
Unser Unternehmen 
Trivadis ist führend bei der IT-Beratung, der Systemintegration, 
dem Solution-Engineering und der Erbr...
Mit über 600 IT- und Fachexperten bei Ihnen vor Ort 
2014 © Trivadis 
3 
12 Trivadis Niederlassungen mit 
über 600 Mitarbe...
Über mich .. 
§ Senior Consultant, Trivadis, Duesseldorf 
§ Mit Oracle unterwegs seit den 1990ern 
§ Entwicklung (Forms...
Trivadis an der DOAG 
Ebene 3 - gleich neben der Rolltreppe 
Wir freuen uns auf Ihren Besuch. 
Denn mit Trivadis gewinnen ...
AGENDA 
1. Das Problem & bereits vorhandene Lösungen 
2. Neu in Oracle 12c: THREADED_EXECUTION 
3. Architektur 
4. Perform...
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 
DOAG-Konferenz 2014 
Das Problem 
& 
b...
Das Problem & bereits vorhandene Lösungen (1) 
§ Für die Dedicated Server Architektur auf Unix/Linux gilt: 
§ .. Jede Cl...
Das Problem & bereits vorhandene Lösungen (2) 
§ Bereits vorhandene Lösungen 
§ Shared Server (Multithreaded Server) 
§...
Das Problem & bereits vorhandene Lösungen (3) 
§ Vorhandene Lösungen im Überblick: 
aus: Oracle Database 12c Administrato...
Das Problem & bereits vorhandene Lösungen (4) 
Das “Multithreaded Oracle Process Model” ersetzt diese Methoden nicht, 
son...
THREADED_EXECUTION 
"Multithreaded Oracle Process Model" 
2014 © Trivadis 
Neu in Oracle 12c: 
Oracle 12c Threaded Executi...
Multithreaded Oracle Process Model (1) 
§ Das “Multithreaded Oracle Process Model” ermöglicht es, dass die 
Oracle Datenb...
Multithreaded Oracle Process Model (2) 
§ Für Clients die sich via Oracle Net anmelden, muss ein zusätzlicher 
Listener-P...
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 
DOAG-Konferenz 2014 
Architektur 
15 
...
Architektur (1) - Prozesse 
§ Prozessliste nach dem Starten einer Datenbank-Instanz: 
§ “Threaded Sessions” werden in de...
Architektur (2) - Prozesse 
§ Prozess-Details: 
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nul...
Architektur (3) – V$PROCESS 
§ Änderungen in V$PROCESS 
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen...
Architektur (4) 
§ Der “SCMN”-Thread ist der "Thread Listener" innerhalb des 
"ora_u<nnn>-Prozesses" 
§ Die Sitzungen bl...
Architektur (5) – Prozesse & Sessions 
§ uXXX Prozesse werden beendet, wenn sie 30 Sekunden im Leerlauf waren 
§ !! Jede...
Architektur (6) – Client-Sitzungen & Hauptspeicher 
§ Mittelwert: 18% weniger Memory-Verbrauch mit "Threaded Execution" 
...
Architektur (7) – Connection Broker 
§ Threaded Execution benötigt einen Connection Broker 
§ Der (neue) Parameter CONNE...
Architektur (8) – Connection Broker + Listener 
lsnrctl services 
[..] 
Service "TEST.markusflechtner.vm" has 1 instance(s...
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 
DOAG-Konferenz 2014 
Performance 
24 
...
Performance (1) – Test environment 
§ Physikalischer Server 
§ Lenovo W510 / 32 GB RAM / SSD 
§ Oracle Linux 6.5 
§ Vi...
Performance (2) – Swingbench 
§ Test Software 
§ Swingbench 2.5.0.99 (www.dominicgiles.com) 
§ 3 Tests mit 50 - 900 Sit...
Performance (3) – Ergebnisse Swingbench 
2014 © Trivadis 
Textseiten 
durch 
Listenebene 
gilt, dass 
zeichen 
beschrieben...
Performance (4) – Weitere Ergebnisse 
§ Oracle Präsentation zum Thema "Real Application Testing": 
§ 5% bessere Performa...
Threaded execution im DBA-Alltag 
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 
DOAG...
Threaded Execution im DBA-Alltag (1) – OS Authent 
§ OS-Authentizierung funktioniert nicht (ORA-1017 invalid username ..)...
Threaded Execution im DBA-Alltag (2) – OS Authent 
§ Workaround: Password in einem Wallet ablegen 
§ Kurzgefasst: 
§ Ei...
Threaded Execution im DBA-Alltag (3) – SQL Tracing 
§ SQL-Tracing? Wie heißt die Trace-Datei? 
§ è Der Dateiname enthäl...
Threaded Execution im DBA-Alltag (4) – Kill Session 
§ Wie üblich werden Sitzungen über die SID und SERIAL# in V$SESSION ...
Threaded Execution – Verschiedenes 
§ Threaded Execution & CPU usage 
§ Kein wesentlicher Unterschied zu "Non-Threaded-E...
2014 © Trivadis 
Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 
DOAG-Konferenz 2014 
Pros & Cons 
35 
...
Pros & Cons – Pro 
§ Einfacher Setup 
§ Reduzierter Hauptspeicherverbrauch 
§ Geringere Anzahl von Prozessen auf Betrie...
Pros & Cons –Contra 
§ OS Authentisierung 
§ Skripte müssen angepasst werden 
§ „kill -9“ funktioniert nicht 
§ Srvctl...
Summary – Warum nicht? 
§ Erfahrungen aus Kunden-Projekten liegen noch nicht vor, aber wenn 
man bereit ist, die Nachteil...
Weitere Informationen... 
• Oracle Database 12c Administrators Guide Chapter 5 „Managing Processes“ 
• Oracle Database 12c...
Fragen und Antworten... 
Markus Flechtner 
Senior Consultant 
Telefon +49 211 5866 6470 
markus.flechtner@trivadis.com 
BA...
Nächste SlideShare
Wird geladen in …5
×

Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

843 Aufrufe

Veröffentlicht am

Oracle12c threaded execution
von Markus Flechtner

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

  1. 1. Oracle 12c Threaded Execution – Resourcen sparen zum Nulltarif?!? Markus Flechtner BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 1 Untertitel den Return) genannt untereinander Platz für
  2. 2. Unser Unternehmen Trivadis ist führend bei der IT-Beratung, der Systemintegration, dem Solution-Engineering und der Erbringung von IT-Services mit Fokussierung auf und Technologien im D-A-CH-Raum. Unsere Leistungen erbringen wir aus den strategischen Geschäftsfeldern: Trivadis Services übernimmt den korrespondierenden Betrieb Ihrer IT Systeme. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 B E T R I E B 2
  3. 3. Mit über 600 IT- und Fachexperten bei Ihnen vor Ort 2014 © Trivadis 3 12 Trivadis Niederlassungen mit über 600 Mitarbeitenden 200 Service Level Agreements Mehr als 4'000 Trainingsteilnehmer Forschungs- und Entwicklungs-budget: CHF 5.0 Mio. / EUR 4.0 Mio. Finanziell unabhängig und nachhaltig profitabel Erfahrung aus mehr als 1'900 Projekten pro Jahr bei über 800 Kunden Stand 12/2013 Hamburg Düsseldorf Frankfurt Freiburg München Wien Basel Bern Zürich Lausanne 3 Stuttgart Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 3 Brugg
  4. 4. Über mich .. § Senior Consultant, Trivadis, Duesseldorf § Mit Oracle unterwegs seit den 1990ern § Entwicklung (Forms, Reports, PL/SQL) § Support § Datenbank Administration § Seit 2008 bei Trivadis § Schwerpunkte § Oracle Real Application Clusters § Database Migration Projects § Referent § O-AI – Oracle Architektur and Internals § O-RAC – Oracle Real Application Clusters § O-NF11g DBA – Oracle 11g New Features for the DBA § O-NF12cDBA – Oracle 12c New Features for the DBA 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 4 DOAG-Konferenz 2014
  5. 5. Trivadis an der DOAG Ebene 3 - gleich neben der Rolltreppe Wir freuen uns auf Ihren Besuch. Denn mit Trivadis gewinnen Sie immer. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 5
  6. 6. AGENDA 1. Das Problem & bereits vorhandene Lösungen 2. Neu in Oracle 12c: THREADED_EXECUTION 3. Architektur 4. Performance 5. Threaded Execution im DBA-Alltag 6. Pros & Cons 2014 © Trivadis Zwischenseite betreffende Objekte anzeigen Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 6
  7. 7. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 Das Problem & bereits vorhandene Lösungen 7 chapter text field short as titles are
  8. 8. Das Problem & bereits vorhandene Lösungen (1) § Für die Dedicated Server Architektur auf Unix/Linux gilt: § .. Jede Client Sitzung hat einen eigenen Server Prozess § .. Dieser benötigt Hauptspeicher § .. Und Prozessorzeit § .. Häufige Kontextwechsel § Viele Applikationen § .. Halten Datenbanksitzungen offen und setzen nur selten SQL-Befehle ab § Ergebnis: § Overhead auf dem Datenbankserver § Verschwendung von Ressourcen 2014 © Trivadis text pages Reduce on bullet above Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 8
  9. 9. Das Problem & bereits vorhandene Lösungen (2) § Bereits vorhandene Lösungen § Shared Server (Multithreaded Server) § Database Resident Connection Pooling (DRCP) - è nicht für alle Applikationen § Universal Connection Pool (UCP) § Connection Pools allgemein (verwaltet vom Application Server) § Alle diese Lösungen wirken sich nur auf Client-Sitzungen aus 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 9
  10. 10. Das Problem & bereits vorhandene Lösungen (3) § Vorhandene Lösungen im Überblick: aus: Oracle Database 12c Administrators Guide © Oracle Corporation 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 10
  11. 11. Das Problem & bereits vorhandene Lösungen (4) Das “Multithreaded Oracle Process Model” ersetzt diese Methoden nicht, sondern ist eine neue Methode um den Resourcenverbrauch einer Oracle- Datenbank auf Unix/Linux zu reduzieren. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 11
  12. 12. THREADED_EXECUTION "Multithreaded Oracle Process Model" 2014 © Trivadis Neu in Oracle 12c: Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 12 chapter text field short as titles are
  13. 13. Multithreaded Oracle Process Model (1) § Das “Multithreaded Oracle Process Model” ermöglicht es, dass die Oracle Datenbank auf Unix/Linux Instanzprozesse als OS Threads laufen lässt (wie bei Oracle auf Windows) § keine zusätzlichen Lizenzkosten, funktioniert mit SE1, SE and EE § Konfiguration: § .. Und die Instanz durchstarten § .. Damit laufen Hintergrundprozesse und lokale Verbindungen als Threads 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 13 ALTER SYSTEM SET threaded_execution=TRUE SCOPE=spfile SID='*'
  14. 14. Multithreaded Oracle Process Model (2) § Für Clients die sich via Oracle Net anmelden, muss ein zusätzlicher Listener-Parameter in der listener.ora gesetzt werden: § .. Und den Listener durchstarten § Wenn man die Clients sowohl (wahlweise) im Threaded- als auch im Non-Threaded-Mode laufen lassen will, wird ein zweiter Listener benötigt § Anderer Port und/oder Host-Name § DEDICATED_THROUGH_BROKER_<new_listener>=OFF 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 14 DEDICATED_THROUGH_BROKER_<listener_name>=ON
  15. 15. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 Architektur 15 chapter text field short as titles are
  16. 16. Architektur (1) - Prozesse § Prozessliste nach dem Starten einer Datenbank-Instanz: § “Threaded Sessions” werden in den "ora_u<nnn>_<SID>"-Prozessen zusammengefasst 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 16 oracle@te:~/ [TEST] psg TEST oracle 6593 1 0 10:02 ? 00:00:00 ora_pmon_TEST oracle 6595 1 0 10:02 ? 00:00:00 ora_psp0_TEST oracle 6597 1 14 10:02 ? 00:00:03 ora_vktm_TEST oracle 6601 1 23 10:02 ? 00:00:05 ora_u004_TEST oracle 6607 1 99 10:02 ? 00:00:22 ora_u005_TEST oracle 6613 1 0 10:02 ? 00:00:00 ora_dbw0_TEST
  17. 17. Architektur (2) - Prozesse § Prozess-Details: 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 17 oracle@te:~/ [TEST] psg ora_u oracle 31220 1 2 21:18 ? 00:00:03 ora_u004_TEST oracle 31226 1 11 21:18 ? 00:00:13 ora_u005_TEST oracle@te:~/ [TEST] pidstat -t -p 31220 Linux 3.8.13-26.2.1.el6uek.x86_64 (te.markusflechtner.vm) 03/22/2014 _x86_64_ (4 CPU) 09:20:45 PM TGID TID %usr %system %guest %CPU CPU Command 09:20:45 PM 31220 - 0.01 0.01 0.00 0.02 3 ora_scmn_test 09:20:45 PM - 31220 0.00 0.00 0.00 0.00 3 |__ora_scmn_test 09:20:45 PM - 31221 0.00 0.00 0.00 0.00 1 |__oracle 09:20:45 PM - 31222 0.00 0.00 0.00 0.00 0 |__ora_gen0_test 09:20:45 PM - 31223 0.00 0.00 0.00 0.00 2 |__ora_mman_test 09:20:45 PM - 31229 0.00 0.00 0.00 0.00 3 |__ora_dbrm_test 09:20:45 PM - 31233 0.00 0.00 0.00 0.00 1 |__ora_lgwr_test 09:20:45 PM - 31234 0.00 0.00 0.00 0.00 0 |__ora_ckpt_test 09:20:45 PM - 31235 0.00 0.00 0.00 0.00 3 |__ora_lg00_test 09:20:45 PM - 31236 0.00 0.00 0.00 0.00 3 |__ora_smon_test 09:20:45 PM - 31237 0.00 0.00 0.00 0.00 2 |__ora_lg01_test 09:20:45 PM - 31239 0.00 0.00 0.00 0.00 3 |__ora_lreg_test
  18. 18. Architektur (3) – V$PROCESS § Änderungen in V$PROCESS 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 18 SQL> select spid,stid,execution_type,pname from v$process 2 where spid is not null and (execution_type=‘PROCESS’ or pname in 3 ('PMON','SMON','DBW0','PSP0','VKTM','MMON','RECO','LGWR',’SCMN’)) 4 order by spid; SPID STID EXECUTION_ PNAME ------------------------ ------------------------ ---------- ----- 6593 6593 PROCESS PMON 6595 6595 PROCESS PSP0 6597 6597 PROCESS VKTM 6601 6614 THREAD LGWR 6601 6601 THREAD SCMN 6601 6618 THREAD SMON 6607 6621 THREAD MMON 6607 6607 THREAD SCMN 6607 6619 THREAD RECO 6613 6613 PROCESS DBW0
  19. 19. Architektur (4) § Der “SCMN”-Thread ist der "Thread Listener" innerhalb des "ora_u<nnn>-Prozesses" § Die Sitzungen bleiben "Dedicated Server"-Sitzungen: § Die PGA für Threaded-Server-Sessions wird im Shared-Pool allokiert (wie bei "Shared Server") 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 19 SQL> select p.execution_type,s.server,count(*) 2 from v$process p,v$session s 3 where s.paddr=p.addr 4 group by p.execution_type,s.server; EXECUTION_ SERVER COUNT(*) ---------- --------- ---------- THREAD DEDICATED 38 PROCESS DEDICATED 4
  20. 20. Architektur (5) – Prozesse & Sessions § uXXX Prozesse werden beendet, wenn sie 30 Sekunden im Leerlauf waren § !! Jede Session braucht ihren "PROCESSES"-Slot, daher kann der Parameter PROCESSES nicht reduziert werden (è TNS-12602 “Connection pooling limit reached.”) 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 20
  21. 21. Architektur (6) – Client-Sitzungen & Hauptspeicher § Mittelwert: 18% weniger Memory-Verbrauch mit "Threaded Execution" 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 21
  22. 22. Architektur (7) – Connection Broker § Threaded Execution benötigt einen Connection Broker § Der (neue) Parameter CONNECTION_BROKERS wird automatisch gesetzt, wenn THREADED_EXECUTION=TRUE 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 22 SQL> show parameter connection_brokers NAME TYPE VALUE ------------------ ------- ---------------------------------------- connection_brokers string ((TYPE=DEDICATED)(BROKERS=1)), ((TYPE=EMON)(BROKERS=1))
  23. 23. Architektur (8) – Connection Broker + Listener lsnrctl services [..] Service "TEST.markusflechtner.vm" has 1 instance(s). 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 23 Instance "TEST", status READY, has 2 handler(s) for this service... Handler(s): "N000" established:1 refused:0 state:ready CMON <machine: te.markusflechtner.vm, pid: 1649_1668> (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=34848)) "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER [..] oracle@te:~/ [TEST] psg 1649 oracle 1649 1 9 19:24 ? 00:05:12 ora_u005_TEST SQL> select spid,stid,pname,execution_type from v$process 2 where spid=1649 and stid=1668; SPID STID PNAME EXECUTION_TYPE ---------------- ---------------- ----- -------------- 1649 1668 N000 THREAD
  24. 24. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 Performance 24 chapter text field short as titles are
  25. 25. Performance (1) – Test environment § Physikalischer Server § Lenovo W510 / 32 GB RAM / SSD § Oracle Linux 6.5 § Virtueller Server (Virtualbox) § 16 GB RAM § Oracle Datenbank § Oracle 12.1.0.1 § 6000M SGA / 2000M PGA § Non-CDB-Architektur 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 25
  26. 26. Performance (2) – Swingbench § Test Software § Swingbench 2.5.0.99 (www.dominicgiles.com) § 3 Tests mit 50 - 900 Sitzungen, Mittelwert der Transaktionen pro Sekunde 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 26
  27. 27. Performance (3) – Ergebnisse Swingbench 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 27
  28. 28. Performance (4) – Weitere Ergebnisse § Oracle Präsentation zum Thema "Real Application Testing": § 5% bessere Performance mit THREADED_EXECUTION § Thomas Bordeau § http://blog.arkzoyd.com/2014/01/17/oracle-multithreaded-does-it-worth-a-try/ § Test mit SwingbenchJ 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 28
  29. 29. Threaded execution im DBA-Alltag 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 29 chapter text field short as titles are
  30. 30. Threaded Execution im DBA-Alltag (1) – OS Authent § OS-Authentizierung funktioniert nicht (ORA-1017 invalid username ..) § Password File erforderlich § è Startup Skripte müssen angepasst werden § è ggf. ebenso Backup Skripte und Monitoring Skripte § Lt. dem Oracle Database 12.1.0.2 Readme, ist das ein Bug in 12.1.0.1 (bug# 13877504, unpublished) § Aber: Lt. "Oracle 12.1.0.2 Reference" ist OS Authentizierung nicht unterstützt § è Documentation-Bug 19940955 § Einige Oracle Tools erfordern "Non-Threaded Execution" § Dbca § opatch datapatch.pl 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 30
  31. 31. Threaded Execution im DBA-Alltag (2) – OS Authent § Workaround: Password in einem Wallet ablegen § Kurzgefasst: § Einzelheiten: siehe MOS-Note 340559.1 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 31 # create wallet mkstore -wrl <wallet_location> -create # add db authentication information mkstore -wrl <wallet_location> -createCredential <db_connect_string> <username> <password> # add the following lines to sqlnet.ora WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = <wallet_location_directory>)) ) SQLNET.WALLET_OVERRIDE = TRUE Connect to the DB using sqlplus sys/@<DB_Connect_String>
  32. 32. Threaded Execution im DBA-Alltag (3) – SQL Tracing § SQL-Tracing? Wie heißt die Trace-Datei? § è Der Dateiname enthält SPID und STID SQL> select spid,stid,execution_type,tracefile from v$process; SPID STID E_TYPE TRACEFILE ----- ----- ------- ------------------------------------------------------------------ 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 32 NONE /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_ora_0.trc 6961 6961 PROCESS /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_pmon_6961.trc 6963 6963 PROCESS /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_psp0_6963.trc 6965 6965 PROCESS /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_vktm_6965.trc 6969 6971 THREAD /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_gen0_6969_6971.trc 6969 6969 THREAD /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_scmn_6969_6969.trc 6969 6972 THREAD /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_mman_6969_6972.trc 6975 7000 THREAD /u00/app/oracle/diag/rdbms/test/TEST/trace/TEST_ora_6975_7000.trc ..
  33. 33. Threaded Execution im DBA-Alltag (4) – Kill Session § Wie üblich werden Sitzungen über die SID und SERIAL# in V$SESSION identifziert § Killen auf Datenbank-Ebene funktioniert: Aber „kill -9 <spid>“ ist keine gute Lösung L § Ein Thread kann nicht von außerhalb des OS-Prozesses beendet werden § Es fehlt: „orakill“ (Windows) L 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 33 ALTER SYSTEM KILL SESSION ‘<sid>,<serial#>‘;
  34. 34. Threaded Execution – Verschiedenes § Threaded Execution & CPU usage § Kein wesentlicher Unterschied zu "Non-Threaded-Execution" § Threaded Execution & Connect Time § Kein wesentlicher Unterschied zu "Non-Threaded-Execution" § Threaded Execution auf Windows § Der Parameter hat keinen erkennbaren Effekt. Oracle Prozesse und Sitzungen sind generell Threads innerhalb von "oracle.exe" § Multitenant § Ein OS-Prozess kann Sitzungen mehrerer PDBs enthalten § è keine Gruppierung der PDB-Sitzungen auf unterschiedliche Prozesse 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 34
  35. 35. 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 Pros & Cons 35 chapter text field short as titles are
  36. 36. Pros & Cons – Pro § Einfacher Setup § Reduzierter Hauptspeicherverbrauch § Geringere Anzahl von Prozessen auf Betriebssystem-Ebene § è weniger Context-Switche § Performance § Gleich oder besser als "non-threaded execution“ § Skalierbarkeit § Besser als „non-threaded execution“ Aussagen zu Performance und Skalierbarkeit müssen in jedem Einzelfall verifiziert werden! Testen Sie Threaded-Execution mit Ihrer Applikation bevor Sie es produktiv einsetzen! !! !! 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 36
  37. 37. Pros & Cons –Contra § OS Authentisierung § Skripte müssen angepasst werden § „kill -9“ funktioniert nicht § Srvctl (RAC) funktioniert nicht 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 37
  38. 38. Summary – Warum nicht? § Erfahrungen aus Kunden-Projekten liegen noch nicht vor, aber wenn man bereit ist, die Nachteile (OS-Authentisierung, kein orakill) in Kauf zu nehmen, dann kann das "Multithreaded Multi Process"-Modell sinnvoll sein, wenn § .. Ihr Datenbankserver zuwenig Hauptspeicher hat § .. Wenn die Applikation Connection Pools nicht unterstützt § „Threaded execution“ kann aber Connection Pools nicht ersetzen § Leider ist „threaded execution“ nicht sehr gut dokumentiert (weder in der Dokumentation, noch auf My Oracle Support) 2014 © Trivadis Textseiten durch Listenebene gilt, dass zeichen beschrieben Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 38
  39. 39. Weitere Informationen... • Oracle Database 12c Administrators Guide Chapter 5 „Managing Processes“ • Oracle Database 12c Concepts – Chapter 15 „Process Architektur“ • Oracle Presentation „Maximizing Database Performance Using Database Replay“ • MOS-Note 340559.1 „Using The Secure External Password Store“ • http://www.ludovicocaldara.net/dba/oracle-database-12c-multithreaded-execution-or-how- 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 39 make-processes-decrease/ • http://blog.arkzoyd.com/2014/01/17/oracle-multithreaded-does-it-worth-a-try/ • http://dbwhisperer.wordpress.com/2013/10/04/multi-threaded-oracle-12c-Architektur-on-linux- 2/ Informationen B.
  40. 40. Fragen und Antworten... Markus Flechtner Senior Consultant Telefon +49 211 5866 6470 markus.flechtner@trivadis.com BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 2014 © Trivadis Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? DOAG-Konferenz 2014 Varianten Referenten, einmal mehr jeweils Shift letzte Antworten) lange stehen Zuhörer die

×