oracle12c threaded execution - ressourcen sparen zum nulltarif?!?

40
2014 © Trivadis 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?!? Markus Flechtner DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!? 1

Upload: trivadis

Post on 05-Jul-2015

119 views

Category:

Technology


3 download

DESCRIPTION

Oracle12c threaded execution von Markus Flechtner

TRANSCRIPT

Page 1: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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?!? Markus Flechtner

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

1

INFOBOX – Lesen und Löschen •  Auf der ersten Folie kann eine

Überschrift und ein optionaler Untertitel platziert werden

•  Der/die Titel wird direkt unter den Namen geschrieben (Shift+Return)

•  Werden mehrere Referenten genannt bitte nur die Namen untereinander schreiben (meist ist dann kein Platz für Titel, etc.)

Page 2: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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.

Unser Unternehmen

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

B E T R I E B

2

Page 3: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Mit über 600 IT- und Fachexperten bei Ihnen vor Ort

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 Zürich Bern

Lausanne

3

Stuttgart

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

3

Brugg

Page 4: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Ü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

Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

4

DOAG-Konferenz 2014

Page 5: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Trivadis an der DOAG

Ebene 3 - gleich neben der Rolltreppe

Wir freuen uns auf Ihren Besuch.

Denn mit Trivadis gewinnen Sie immer.

DOAG-Konferenz 2014

5

Page 6: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Wenn die Agenda als Zwischenseite

verwendet wird, bitte das betreffende Kapitel mit roter Schriftfarbe hervorheben

•  Zum optimalen Ausrichten der Objekte

die Führungslinien (mit einem Rechtsklick auf die Seite) anzeigen

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

6

Page 7: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Das Problem &

bereits vorhandene Lösungen

7

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 8: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Read and delete •  Add/remove bullet points on text pages

by going to Increase list level/Reduce list level

•  For the first level, do NOT click on bullet points, but work as described above

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

8

Page 9: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

9

Page 10: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Das Problem & bereits vorhandene Lösungen (3)

§  Vorhandene Lösungen im Überblick:

aus: Oracle Database 12c Administrators Guide © Oracle Corporation

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

10

Page 11: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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.

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

11

Page 12: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Neu in Oracle 12c: THREADED_EXECUTION

"Multithreaded Oracle Process Model"

12

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 13: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

13

ALTER SYSTEM SET threaded_execution=TRUE SCOPE=spfile SID='*'

Page 14: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

14

DEDICATED_THROUGH_BROKER_<listener_name>=ON

Page 15: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Architektur

15

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 16: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (1) - Prozesse

§  Prozessliste nach dem Starten einer Datenbank-Instanz:

§  “Threaded Sessions” werden in den "ora_u<nnn>_<SID>"-Prozessen zusammengefasst

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

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

Page 17: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (2) - Prozesse

§  Prozess-Details:

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

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

Page 18: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (3) – V$PROCESS

§  Änderungen in V$PROCESS

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

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

Page 19: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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")

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

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

Page 20: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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.”)

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

20

Page 21: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (6) – Client-Sitzungen & Hauptspeicher

§  Mittelwert: 18% weniger Memory-Verbrauch mit "Threaded Execution"

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

21

Page 22: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (7) – Connection Broker

§  Threaded Execution benötigt einen Connection Broker

§  Der (neue) Parameter CONNECTION_BROKERS wird automatisch gesetzt, wenn THREADED_EXECUTION=TRUE

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

22

SQL> show parameter connection_brokers NAME TYPE VALUE ------------------ ------- ---------------------------------------- connection_brokers string ((TYPE=DEDICATED)(BROKERS=1)),

((TYPE=EMON)(BROKERS=1))

Page 23: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Architektur (8) – Connection Broker + Listener

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

23

lsnrctl services [..] Service "TEST.markusflechtner.vm" has 1 instance(s). 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

Page 24: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Performance

24

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 25: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

25

Page 26: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Performance (2) – Swingbench

§  Test Software §  Swingbench 2.5.0.99 (www.dominicgiles.com) §  3 Tests mit 50 - 900 Sitzungen, Mittelwert der Transaktionen pro Sekunde

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

26

Page 27: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Performance (3) – Ergebnisse Swingbench

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

27

Page 28: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

28

Page 29: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Threaded execution im DBA-Alltag

29

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 30: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

30

Page 31: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Threaded Execution im DBA-Alltag (2) – OS Authent

§  Workaround: Password in einem Wallet ablegen

§  Kurzgefasst:

§  Einzelheiten: siehe MOS-Note 340559.1

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

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>

Page 32: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Threaded Execution im DBA-Alltag (3) – SQL Tracing

§  SQL-Tracing? Wie heißt die Trace-Datei?

§  è Der Dateiname enthält SPID und STID

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

32

SQL> select spid,stid,execution_type,tracefile from v$process; SPID STID E_TYPE TRACEFILE ----- ----- ------- ------------------------------------------------------------------ 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 ..

Page 33: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

33

ALTER SYSTEM KILL SESSION ‘<sid>,<serial#>‘;

Page 34: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

34

Page 35: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

Pros & Cons

35

INFOBOX – Read and delete •  In the chapter divider, the chapter text

is written centered in the text field •  Please keep chapter names as short as

possible, less text and punchy titles are better!

Page 36: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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!

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

36

!! !!

Page 37: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Pros & Cons –Contra

§  OS Authentisierung §  Skripte müssen angepasst werden

§  „kill -9“ funktioniert nicht

§  Srvctl (RAC) funktioniert nicht

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

37

Page 38: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

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)

INFOBOX – Lesen und Löschen •  Aufzählungszeichen auf Textseiten

fügen sie hinzu/entfernen sie durch Listenebene erhöhen /Listenebene verringern

•  Besonders für die erste Ebene gilt, dass sie NICHT auf Aufzählungs-zeichen klicken, sondern wie oben beschrieben arbeiten

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

38

Page 39: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

Weitere Informationen...

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

39

•  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-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/

INFOBOX – Lesen und Löschen •  Folie wenn auf weitere Informationen

verwiesen werden soll, also z.B. Bücher, Websiten, etc.

Page 40: Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?

2014 © Trivadis

BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN

Fragen und Antworten...

2014 © Trivadis

Markus Flechtner Senior Consultant

Telefon +49 211 5866 6470 [email protected]

DOAG-Konferenz 2014 Oracle 12c Threaded Execution - Resourcen sparen zum Nulltarif?!?

INFOBOX – Lesen und Löschen •  Die Schlussfolie steht in zwei Varianten

zur Verfügung, einmal für die Kontaktdaten eines Referenten, einmal in der Variante für zwei oder mehr Referenten

•  Name, Titel und Location jeweils untereinander in eine Zeile (Shift+Return)

•  Die Idee ist das diese Folie als letzte Folie (auch für Fragen und Antworten) am Ende der Präsentation lange stehen bleibt, somit haben die Zuhörer die Möglichkeit die Kontaktdaten aufzuschreiben J