SlideShare ist ein Scribd-Unternehmen logo
1 von 84
Downloaden Sie, um offline zu lesen
Oracle	
  Performance	
  Tuning	
  
Fundamentals	
  
Carlos	
  Sierra	
  
Carlos	
  Sierra	
  
•  SQLTXPLAIN	
  +	
  SQL	
  Health-­‐Check	
  SQLHC	
  +	
  
•  Consultant/Developer/DBA/Design/+	
  
•  Oracle	
  Performance	
  +	
  SQL	
  Tuning	
  
•  Oracle	
  Database	
  Health-­‐Check	
  
•  Tools	
  +	
  Scripts	
  
•  Speaker	
  
Enkitec	
  ©	
  2014	
   2	
  
Oracle	
  Performance	
  Tuning	
  Fundamentals	
  
•  Concepts	
  
•  Time	
  
•  Waits	
  
•  StaLsLcs	
  
•  Dynamic	
  Views	
  
Enkitec	
  ©	
  2014	
   3	
  
What	
  is	
  Performance	
  Tuning?	
  
•  Provide	
  correct	
  mix	
  and	
  amount	
  of	
  Resources	
  
•  Reduce	
  User’s	
  Wait	
  Times	
  
•  Changing	
  System	
  components	
  to	
  achieve	
  
Goals	
  
•  Increase	
  Throughput	
  
•  Improve	
  Response	
  Time	
  
Enkitec	
  ©	
  2014	
   4	
  
Why	
  Performance	
  Tuning	
  is	
  hard?	
  
•  Concurrency	
  
•  Dynamism	
  
•  Complexity	
  
– Too	
  many	
  knobs	
  to	
  our	
  disposal	
  
– Too	
  many	
  soXware	
  layers	
  
Enkitec	
  ©	
  2014	
   5	
  
Performance	
  Tuning	
  Approaches	
  
•  “Top-­‐down”	
  
•  “Boom-­‐up”	
  
•  “HolisLc”	
  
•  “Random”	
  a.k.a.	
  “Trial	
  and	
  Error”	
  
•  “Silver	
  Bullets”	
  a.k.a.	
  “One	
  Size	
  Fits	
  All”	
  
Enkitec	
  ©	
  2014	
   6	
  
Back	
  to	
  Basics	
  
•  Understand	
  your	
  OperaLng	
  System	
  
•  Understand	
  your	
  Database	
  
•  Understand	
  your	
  Business	
  
•  Understand	
  your	
  Users	
  
•  Understand	
  your	
  OpLons	
  
Enkitec	
  ©	
  2014	
   7	
  
OS	
  Components	
  
•  CPU	
  
•  Memory	
  
•  I/O	
  Subsystem	
  
– Disk	
  
•  Capacity	
  and	
  Throughput	
  
•  Network	
  
Enkitec	
  ©	
  2014	
   8	
  
OS	
  Performance	
  Monitoring	
  Tools	
  
•  sar	
  
•  top	
  and	
  htop	
  
•  mpstat	
  and	
  vmstat	
  
•  iotop	
  and	
  iostat	
  
•  dtrace	
  and	
  strace	
  
Enkitec	
  ©	
  2014	
   9	
  
Enkitec	
  ©	
  2014	
   10	
  
OS	
  Tools	
  Strategy	
  
•  Define	
  your	
  own	
  subset	
  of	
  Tools	
  to	
  use	
  
•  Learn	
  them	
  well	
  
•  Create	
  some	
  Scripts	
  or	
  use	
  a	
  GUI	
  
•  Correlate	
  DB	
  Performance	
  to	
  OS	
  Monitoring	
  
•  Work	
  with	
  your	
  System	
  Administrator	
  
Enkitec	
  ©	
  2014	
   11	
  
OS	
  StaLsLcs	
  within	
  Oracle	
  
•  Provides	
  a	
  high-­‐level	
  view	
  of	
  OS	
  
•  CumulaLve	
  Metrics	
  
•  Views	
  
– V$OSSTAT	
  
– DBA_HIST_OSSTAT	
  
Enkitec	
  ©	
  2014	
   12	
  
Enkitec	
  ©	
  2014	
   13	
  
Oracle	
  Architecture	
  
•  Database	
  
– Data	
  Files	
  +	
  Temp	
  Files	
  +	
  Redo	
  Log	
  +	
  Control	
  Files	
  
•  Instance	
  
– SGA	
  +	
  PGA	
  +	
  Processes	
  
•  RAC	
  
Enkitec	
  ©	
  2014	
   14	
  
Enkitec	
  ©	
  2014	
   15	
  
Enkitec	
  ©	
  2014	
   16	
  
Enkitec	
  ©	
  2014	
   17	
  
Performance	
  is	
  about	
  Time	
  
•  Performance	
  is	
  beer	
  understood	
  as	
  Time	
  
•  Which	
  Time?	
  
– User?	
  
– Clock?	
  
– Elapsed?	
  
– CPU?	
  
Enkitec	
  ©	
  2014	
   18	
  
Service	
  Time	
  
•  Service	
  Time	
  =	
  CPU	
  Time	
  
•  User	
  Time	
  =	
  CPU	
  Time	
  +	
  Wait	
  Time	
  
•  User	
  Time	
  =	
  Service	
  Time	
  +	
  Wait	
  Time	
  
•  Time	
  =	
  Service	
  +	
  Wait	
  
Enkitec	
  ©	
  2014	
   19	
  
Wait	
  Time	
  
•  Overhead	
  
•  Two	
  flavors	
  
– Non-­‐Idle	
  
•  Inside	
  the	
  database	
  
– Idle	
  
•  Outside	
  the	
  database	
  
Enkitec	
  ©	
  2014	
   20	
  
Non-­‐idle	
  Waits	
  
•  Overhead	
  
•  AcLvely	
  WaiLng	
  inside	
  the	
  database	
  
•  Examples	
  
– Reading	
  a	
  Block	
  from	
  Disk	
  
– Index	
  Rebuild	
  
– ApplicaLon	
  Row	
  level	
  Lock	
  
Enkitec	
  ©	
  2014	
   21	
  
Idle	
  Waits	
  
•  Overhead	
  
•  InacLve	
  
•  WaiLng	
  for	
  work	
  
•  Outside	
  the	
  database	
  
Enkitec	
  ©	
  2014	
   22	
  
What	
  is	
  a	
  Wait	
  Event?	
  
•  V$EVENT_NAME	
  
•  1,152	
  on	
  11.2.0.3	
  
•  P1,	
  P2,	
  P3	
  Parameters	
  
– Oracle	
  Database	
  Reference	
  
•  C	
  Oracle	
  Wait	
  Events	
  
•  Categorized	
  into	
  12	
  Wait	
  Classes	
  
Enkitec	
  ©	
  2014	
   23	
  
Wait	
  Class	
  (1)	
  
•  AdministraLve	
  
•  ApplicaLon	
  
•  Cluster	
  
•  Commit	
  
Enkitec	
  ©	
  2014	
   24	
  
Wait	
  Class	
  (2)	
  
•  Concurrency	
  
•  ConfiguraLon	
  
•  Network	
  
•  Other	
  
Enkitec	
  ©	
  2014	
   25	
  
Wait	
  Class	
  (3)	
  
•  Queue	
  
•  Scheduler	
  
•  System	
  I/O	
  
•  User	
  I/O	
  
Enkitec	
  ©	
  2014	
   26	
  
Timed	
  Event	
  
•  CPU	
  +	
  
•  Non-­‐idle	
  Wait	
  Events	
  
Enkitec	
  ©	
  2014	
   27	
  
Performance	
  StaLsLcs	
  
•  If	
  Wait	
  Events	
  refer	
  to	
  Time	
  and	
  Times	
  
•  Then	
  StaLsLcs	
  refer	
  to	
  Counters	
  
– How	
  many	
  of	
  “X”	
  so	
  far	
  (from	
  Instance	
  startup)	
  
– Examples	
  
•  Sorts	
  
•  Consistent	
  Gets	
  
Enkitec	
  ©	
  2014	
   28	
  
StaLsLcs	
  a.k.a.	
  Counters	
  
•  V$STATNAME	
  
•  638	
  Counters	
  on	
  11.2.0.3	
  
•  DescripLon	
  
– Oracle	
  Database	
  Reference	
  
•  E	
  StaLsLcs	
  DescripLons	
  
•  Categorized	
  into	
  8	
  StaLsLcs	
  Classes	
  
Enkitec	
  ©	
  2014	
   29	
  
StaLsLcs	
  Classes	
  (1)	
  
•  1,	
  User	
  
•  2,	
  Redo	
  
•  4,	
  Enqueue	
  
•  8,	
  Cache	
  
Enkitec	
  ©	
  2014	
   30	
  
StaLsLcs	
  Classes	
  (2)	
  
•  16,	
  OS	
  
•  32,	
  Real	
  ApplicaLon	
  Clusters	
  
•  64,	
  SQL	
  
•  128,	
  Debug	
  
Enkitec	
  ©	
  2014	
   31	
  
StaLsLcs	
  Classes	
  (3)	
  
•  A	
  Counter	
  belongs	
  to	
  1	
  or	
  more	
  Class	
  
Enkitec	
  ©	
  2014	
   32	
  
Session	
  Type	
  and	
  State	
  
•  Foreground	
  Type	
  
– User	
  Session	
  
•  Background	
  Type	
  
– Database	
  Programs	
  
•  On	
  CPU	
  State	
  
•  WaiLng	
  State	
  
Enkitec	
  ©	
  2014	
   33	
  
Database	
  Time	
  
•  Includes	
  all	
  Foreground	
  Sessions	
  
– Currently	
  “On	
  CPU”	
  or	
  on	
  a	
  “Non-­‐idle	
  Wait	
  
Event”	
  
•  Be	
  aware	
  
– Database	
  Time	
  in	
  1hr	
  interval	
  can	
  add	
  to	
  >	
  1hr	
  
– It	
  can	
  also	
  add	
  to	
  >	
  (Lme	
  interval	
  x	
  CPU	
  count)	
  
Enkitec	
  ©	
  2014	
   34	
  
Database	
  Time	
  Example	
  
•  Wall	
  Clock	
  Time:	
  60	
  minutes	
  
•  CPU_COUNT:	
  12	
  
•  CPU	
  Time:	
  300	
  minutes	
  (<	
  12	
  x	
  60	
  =	
  720)	
  ~42%	
  
•  30	
  users	
  waiLng	
  on	
  a	
  Lock	
  for	
  50	
  minutes	
  each	
  
•  Thus:	
  DB	
  Time	
  of	
  1,800	
  minutes	
  (>	
  720)	
  
–  300	
  +	
  (30	
  x	
  50)	
  
Enkitec	
  ©	
  2014	
   35	
  
Background	
  Time	
  
•  Includes	
  all	
  Background	
  Sessions	
  
– Currently	
  “On	
  CPU”	
  or	
  on	
  a	
  “Non-­‐idle	
  Wait	
  
Event”	
  
Enkitec	
  ©	
  2014	
   36	
  
System	
  Time	
  Model	
  (1)	
  
•  V$SYS_TIME_MODEL	
  
•  V$SESS_TIME_MODEL	
  
•  CumulaLve	
  Time	
  with	
  no	
  wrapping	
  
•  Tree	
  with	
  19	
  nodes	
  
– Two	
  root	
  nodes	
  
Enkitec	
  ©	
  2014	
   37	
  
System	
  Time	
  Model	
  (2)	
  
•  Two	
  root	
  nodes	
  
– DB	
  (Elapsed)	
  Time	
  
– Background	
  Elapsed	
  Time	
  
– Notes:	
  
•  Children	
  do	
  not	
  necessarily	
  add	
  up	
  to	
  the	
  parent	
  
•  Children	
  are	
  not	
  necessarily	
  exclusive	
  	
  
•  The	
  union	
  of	
  children	
  does	
  not	
  cover	
  the	
  whole	
  of	
  the	
  
parent	
  
Enkitec	
  ©	
  2014	
   38	
  
System	
  Time	
  Model	
  (3)	
  
Enkitec	
  ©	
  2014	
   39	
  
1)	
  background	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  background	
  cpu	
  time	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3)	
  RMAN	
  cpu	
  time	
  (backup/restore)	
  
1)	
  DB	
  time	
  
	
  	
  	
  	
  2)	
  DB	
  CPU	
  
	
  	
  	
  	
  2)	
  connection	
  management	
  call	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  sequence	
  load	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  sql	
  execute	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  parse	
  time	
  elapsed	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3)	
  hard	
  parse	
  elapsed	
  time	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  4)	
  hard	
  parse	
  (sharing	
  criteria)	
  elapsed	
  time	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  5)	
  hard	
  parse	
  (bind	
  mismatch)	
  elapsed	
  time	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3)	
  failed	
  parse	
  elapsed	
  time	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  4)	
  failed	
  parse	
  (out	
  of	
  shared	
  memory)	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  PL/SQL	
  execution	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  inbound	
  PL/SQL	
  rpc	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  PL/SQL	
  compilation	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  Java	
  execution	
  elapsed	
  time	
  
	
  	
  	
  	
  2)	
  repeated	
  bind	
  elapsed	
  time	
  
Response	
  Time	
  
•  Time	
  a	
  Query	
  takes	
  to	
  return	
  First	
  Row(s)	
  
•  Important	
  for	
  Online	
  oriented	
  processing	
  
– OLTP	
  behavior	
  
Enkitec	
  ©	
  2014	
   40	
  
Throughput	
  
•  Amount	
  of	
  Work	
  performed	
  in	
  a	
  given	
  Time	
  
– How	
  many	
  Rows	
  this	
  Query	
  returns	
  per	
  Second?	
  
– Time	
  a	
  Query	
  takes	
  to	
  return	
  All	
  Rows	
  
•  Important	
  for	
  Batch	
  oriented	
  processing	
  
– Data	
  warehouse	
  behavior	
  
Enkitec	
  ©	
  2014	
   41	
  
User	
  Time	
  
•  A	
  measure	
  of	
  User	
  Experience	
  
– Time	
  it	
  takes	
  for	
  a	
  User	
  to	
  get	
  some	
  Result	
  
•  Includes	
  	
  
– Database	
  Time	
  
– Scheduling	
  Time	
  
– Network	
  Time	
  
Enkitec	
  ©	
  2014	
   42	
  
Which	
  Time	
  is	
  more	
  important?	
  
•  Database?	
  
•  Background?	
  
•  Service?	
  
•  Wait?	
  
•  Response?	
  
•  User?	
  
Enkitec	
  ©	
  2014	
   43	
  
Processes	
  and	
  Sessions	
  
•  ConnecLon	
  is	
  a	
  pathway	
  to	
  the	
  Database	
  
•  A	
  ConnecLon	
  can	
  have	
  0,	
  1	
  or	
  more	
  Sessions	
  
•  A	
  Process	
  may	
  serve	
  1	
  or	
  more	
  Sessions	
  
•  Default	
  Sessions	
  
– (1.5	
  x	
  Processes)	
  +	
  22	
  
Enkitec	
  ©	
  2014	
   44	
  
How	
  many	
  Processes	
  to	
  have?	
  
•  Ideally	
  between	
  2	
  and	
  5	
  Lmes	
  the	
  number	
  of	
  
CPUs	
  
– Example:	
  16	
  CPUs	
  
•  Ideally:	
  between	
  32	
  and	
  80	
  
•  Common:	
  ~1000	
  
•  Advice:	
  
– Keep	
  “processes”	
  parameter	
  as	
  small	
  as	
  possible	
  
Enkitec	
  ©	
  2014	
   45	
  
Average	
  AcLve	
  Session	
  (AAS)	
  
•  Common	
  unit	
  to	
  compare	
  Performance	
  
•  What	
  is	
  an	
  “AcLve	
  Session”?	
  
– One	
  “On	
  CPU”	
  or	
  on	
  a	
  “Non-­‐idle	
  Wait	
  Event”	
  
•  Two	
  ways	
  to	
  compute	
  AAS	
  
1.  Using	
  count	
  of	
  AcLve	
  Sessions	
  on	
  a	
  Snapshot	
  
2.  Database	
  Time	
  divided	
  over	
  Wall	
  Clock	
  Time	
  
Enkitec	
  ©	
  2014	
   46	
  
WORKLOAD	
  REPOSITORY	
  report	
  for	
  
	
  
DB	
  Name	
  	
  	
  	
  	
  	
  	
  	
  	
  DB	
  Id	
  	
  	
  	
  Instance	
  	
  	
  	
  	
  Inst	
  Num	
  Startup	
  Time	
  	
  	
  	
  Release	
  	
  	
  	
  	
  RAC	
  
-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐	
  
XXX	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  1319103893	
  XXX	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  1	
  10-­‐Apr-­‐14	
  14:55	
  11.2.0.3.0	
  	
  NO	
  
	
  
Host	
  Name	
  	
  	
  	
  	
  	
  	
  	
  Platform	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  CPUs	
  Cores	
  Sockets	
  Memory(GB)	
  
-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  
xxxxxxxx	
  	
  	
  	
  	
  	
  	
  	
  	
  AIX-­‐Based	
  Systems	
  (64-­‐bit)	
  	
  	
  	
  	
  	
  	
  	
  	
  16	
  	
  	
  	
  	
  4	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  72.00	
  
	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Snap	
  Id	
  	
  	
  	
  	
  	
  Snap	
  Time	
  	
  	
  	
  	
  	
  Sessions	
  Curs/Sess	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  
Begin	
  Snap:	
  	
  	
  	
  	
  	
  	
  139	
  11-­‐Apr-­‐14	
  15:00:58	
  	
  	
  	
  	
  	
  	
  217	
  	
  	
  	
  	
  144.9	
  
	
  	
  End	
  Snap:	
  	
  	
  	
  	
  	
  	
  140	
  11-­‐Apr-­‐14	
  15:15:58	
  	
  	
  	
  	
  	
  	
  218	
  	
  	
  	
  	
  145.7	
  
	
  	
  	
  Elapsed:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  15.01	
  (mins)	
  
	
  	
  	
  DB	
  Time:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  83.46	
  (mins)	
  
	
  
Cache	
  Sizes	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Begin	
  	
  	
  	
  	
  	
  	
  	
  End	
  
~~~~~~~~~~~	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Buffer	
  Cache:	
  	
  	
  	
  23,360M	
  	
  	
  	
  23,360M	
  	
  Std	
  Block	
  Size:	
  	
  	
  	
  	
  	
  	
  	
  	
  8K	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Shared	
  Pool	
  Size:	
  	
  	
  	
  	
  1,664M	
  	
  	
  	
  	
  1,664M	
  	
  	
  	
  	
  	
  Log	
  Buffer:	
  	
  	
  	
  11,848K	
  
	
  
Load	
  Profile	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Per	
  Second	
  	
  	
  	
  Per	
  Transaction	
  	
  	
  Per	
  Exec	
  	
  	
  Per	
  Call	
  
~~~~~~~~~~~~	
  	
  	
  	
  	
  	
  	
  	
  	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  	
  	
  	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐	
  
	
  	
  	
  	
  	
  	
  DB	
  Time(s):	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  5.6	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  1.7	
  	
  	
  	
  	
  	
  	
  0.02	
  	
  	
  	
  	
  	
  	
  0.11	
  
	
  	
  	
  	
  	
  	
  	
  DB	
  CPU(s):	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.2	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.1	
  	
  	
  	
  	
  	
  	
  0.00	
  	
  	
  	
  	
  	
  	
  0.00	
  
	
  	
  	
  	
  	
  	
  	
  Redo	
  size:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  238,783.6	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  72,491.8	
  
	
  	
  	
  Logical	
  reads:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  2,300.9	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  698.5	
  
	
  	
  	
  Block	
  changes:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  626.3	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  190.2	
  
	
  	
  Physical	
  reads:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3.9	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  1.2	
  
	
  Physical	
  writes:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  28.8	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  8.7	
  
	
  	
  	
  	
  	
  	
  User	
  calls:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  48.4	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  14.7	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Parses:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  14.3	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  4.3	
  
	
  	
  	
  	
  	
  Hard	
  parses:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.0	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.0	
  
W/A	
  MB	
  processed:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.1	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.0	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Logons:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.1	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.0	
  
	
  	
  	
  	
  	
  	
  	
  	
  Executes:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  317.3	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  96.3	
  
	
  	
  	
  	
  	
  	
  	
  Rollbacks:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  1.1	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0.3	
  
	
  	
  	
  	
  Transactions:	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3.3	
  
Enkitec	
  ©	
  2014	
   47	
  
Performance	
  Tuning	
  Goals	
  
•  Minimize	
  amount	
  of	
  Business	
  required	
  work	
  
•  OpLmize	
  CPU	
  Time	
  
– Avoid	
  wasLng	
  cycles	
  
•  OpLmize	
  Wait	
  Time	
  
– Minimize	
  Wait	
  Time	
  
•  Judged	
  by	
  Business	
  and	
  by	
  User	
  community	
  
Enkitec	
  ©	
  2014	
   48	
  
Basic	
  DB	
  Performance	
  CollecLon	
  
•  System-­‐wide	
  Waits	
  
– CumulaLve	
  
•  Session	
  Waits	
  
– CumulaLve	
  and	
  Current	
  
•  Session	
  and	
  System-­‐wide	
  StaLsLcs	
  Counters	
  
– CumulaLve	
  
Enkitec	
  ©	
  2014	
   49	
  
Dynamic	
  Performance	
  Views	
  (1)	
  
•  V$SESSION_WAIT	
  
– Current	
  or	
  last	
  Wait	
  
•  Only	
  one	
  row	
  per	
  Session	
  
•  P1,	
  P2	
  and	
  P3	
  provide	
  details	
  of	
  Wait	
  
– Available	
  also	
  on	
  V$SESSION	
  
	
  
Enkitec	
  ©	
  2014	
   50	
  
Enkitec	
  ©	
  2014	
   51	
  
Dynamic	
  Performance	
  Views	
  (2)	
  
•  V$SESSION_EVENT	
  
– Total	
  Waits	
  and	
  Time	
  Waited	
  per	
  Event	
  
– Only	
  those	
  Events	
  the	
  Session	
  has	
  waited	
  on	
  
	
  
Enkitec	
  ©	
  2014	
   52	
  
Enkitec	
  ©	
  2014	
   53	
  
Enkitec	
  ©	
  2014	
   54	
  
Dynamic	
  Performance	
  Views	
  (3)	
  
•  V$SESSION_WAIT_CLASS	
  
– Total	
  Waits	
  and	
  Time	
  Waited	
  per	
  Wait	
  Class	
  
– Aggregate	
  of	
  V$SESSION_EVENT	
  on	
  Wait	
  Class	
  
	
  
Enkitec	
  ©	
  2014	
   55	
  
Enkitec	
  ©	
  2014	
   56	
  
Dynamic	
  Performance	
  Views	
  (4)	
  
•  V$SESSTAT	
  
– StaLsLcs	
  a.k.a.	
  Counters	
  (not	
  Waits)	
  
– SID,	
  staLsLcs#	
  and	
  value	
  
– Join	
  to	
  V$STATNAME	
  
Enkitec	
  ©	
  2014	
   57	
  
Enkitec	
  ©	
  2014	
   58	
  
Enkitec	
  ©	
  2014	
   59	
  
Dynamic	
  Performance	
  Views	
  (5)	
  
•  V$SYSTEM_EVENT	
  
– Total	
  Waits	
  and	
  Time	
  Waited	
  per	
  Event	
  
– Aggregate	
  of	
  V$SESSION_EVENT	
  
– Instance-­‐wide	
  
Enkitec	
  ©	
  2014	
   60	
  
Dynamic	
  Performance	
  Views	
  (6)	
  
•  V$SYSTEM_WAIT_CLASS	
  
– Total	
  Waits	
  and	
  Time	
  Waited	
  per	
  Wait	
  Class	
  
– Aggregate	
  of	
  V$SYSTEM_EVENT	
  on	
  Wait	
  Class;	
  or	
  
– Aggregate	
  of	
  V$SESSION_WAIT_CLASS	
  
Enkitec	
  ©	
  2014	
   61	
  
Dynamic	
  Performance	
  Views	
  (7)	
  
•  V$SYSSTAT	
  
– staLsLcs#,	
  name,	
  class	
  and	
  value	
  
– No	
  need	
  to	
  join	
  to	
  V$STATNAME	
  
– Aggregate	
  of	
  V$SESSTAT	
  
Enkitec	
  ©	
  2014	
   62	
  
Dynamic	
  Performance	
  Views	
  (8)	
  
•  V$SESS_TIME_MODEL	
  
•  V$SESSMETRIC	
  
•  V$SESS_IO	
  
•  V$SESSION_LONGOPS	
  
Enkitec	
  ©	
  2014	
   63	
  
Enkitec	
  ©	
  2014	
   64	
  
Dynamic	
  Performance	
  Views	
  (9)	
  
•  V$SYS_TIME_MODEL	
  
•  V$SYSMETRIC	
  
•  V$SYSMETRIC_SUMMARY	
  
•  V$SYSMETRIC_HISTORY	
  
Enkitec	
  ©	
  2014	
   65	
  
Dynamic	
  Performance	
  Views	
  (10)	
  
•  V$EVENT_HISTOGRAM	
  
•  V$EVENTMETRIC	
  
•  V$WAITCLASSMETRIC	
  
•  V$WAITCLASSMETRIC_HISTORY	
  
Enkitec	
  ©	
  2014	
   66	
  
Enkitec	
  ©	
  2014	
   67	
  
Dynamic	
  Performance	
  Views	
  (11)	
  
•  V$FILEIO	
  
•  V$FILE_HISTOGRAM	
  
•  V$FILE_METRIC	
  
•  V$FILEMETRIC_HISTORY	
  
Enkitec	
  ©	
  2014	
   68	
  
Dynamic	
  Performance	
  Views	
  (12)	
  
•  V$OSSTAT	
  
•  V$PGASTAT	
  
•  V$SGASTAT	
  
•  And	
  many	
  more…	
  
Enkitec	
  ©	
  2014	
   69	
  
Enkitec	
  ©	
  2014	
   70	
  
Dynamic	
  Views	
  Summary	
  
•  V$SYSTEM_EVENT	
  
– Total	
  Waits	
  for	
  Events	
  (system-­‐wide)	
  
•  V$SESSION_EVENT	
  
– Total	
  Waits	
  for	
  Events	
  (session	
  specific)	
  
•  V$SESSION_WAIT	
  
– Current	
  or	
  Last	
  Wait	
  (session	
  specific)	
  
Enkitec	
  ©	
  2014	
   71	
  
Real-­‐life	
  use	
  of	
  Dynamic	
  Views	
  
•  SQL*Plus	
  Scripts	
  
– Your	
  own	
  or	
  Tanel	
  Poder’s	
  “snapper.sql”	
  
•  Current	
  and	
  legacy	
  Tools	
  
– OEM,	
  AWR,	
  ADDR,	
  ASH,	
  Statspack,	
  bstat/estat	
  
•  Other	
  Scripts	
  and	
  Tools	
  
Enkitec	
  ©	
  2014	
   72	
  
AutomaLc	
  Workload	
  Repository	
  (AWR)	
  
•  Requires	
  Oracle	
  DiagnosLcs	
  Pack	
  License	
  
•  112	
  DBA_HIST	
  Views	
  on	
  11.2.0.3	
  
•  Snapshots	
  
– One	
  hour	
  interval	
  (default)	
  
– One	
  week	
  retenLon	
  (default)	
  
Enkitec	
  ©	
  2014	
   73	
  
AcLve	
  Session	
  History	
  (ASH)	
  
•  Requires	
  Oracle	
  DiagnosLcs	
  Pack	
  License	
  
•  MulL-­‐dimension	
  
•  V$ACTIVE_SESSION_HISTORY	
  
– One	
  snapshot	
  (sample_id)	
  every	
  second	
  	
  
•  DBA_HIST_ACTIVE_SESS_HISTORY	
  
– One	
  sample_id	
  out	
  of	
  every	
  10	
  
Enkitec	
  ©	
  2014	
   74	
  
Methodology	
  in	
  a	
  Nut	
  Shell	
  
•  Listen	
  to	
  the	
  voice	
  of	
  the	
  Business	
  
•  Collect	
  DiagnosLcs	
  and	
  compare	
  to	
  Baselines	
  
•  IdenLfy	
  Pain	
  and	
  Bolenecks	
  
•  MiLgate	
  Pain	
  by	
  addressing	
  Bolenecks	
  
– Reach	
  out	
  when	
  needed	
  
– Learn	
  and	
  document	
  
Enkitec	
  ©	
  2014	
   75	
  
Database	
  Temperature	
  Rule	
  of	
  Thumb	
  
•  If	
  (Database	
  +	
  Background)	
  Time	
  
<	
  Interval	
  è	
  ice	
  cold	
  
<	
  Interval	
  x	
  CPU	
  count	
  è	
  cold	
  
<	
  5	
  x	
  Interval	
  x	
  CPU	
  count	
  è	
  warm	
  
<	
  10	
  x	
  Interval	
  x	
  CPU	
  count	
  è	
  hot	
  
>	
  10	
  x	
  Interval	
  x	
  CPU	
  count	
  è	
  melLng	
  
Enkitec	
  ©	
  2014	
   76	
  
Warning	
  
•  Take	
  “Rules	
  of	
  Thumb”	
  with	
  a	
  pinch	
  of	
  salt	
  
and	
  do	
  not	
  confuse	
  them	
  with	
  “Myths”	
  
•  Rule	
  of	
  Thumb	
  
“a	
  principle	
  with	
  broad	
  applica7on	
  that	
  is	
  not	
  intended	
  
to	
  be	
  strictly	
  accurate	
  or	
  reliable	
  for	
  every	
  situa7on”	
  
•  Myth	
  
“a	
  widely	
  held	
  but	
  false	
  belief	
  or	
  idea”	
  
Enkitec	
  ©	
  2014	
   77	
  
Some	
  Myths	
  (1)	
  
•  Change	
  nothing	
  and	
  Performance	
  will	
  remain	
  
the	
  same	
  (i.e.	
  Freeze	
  CBO	
  StaLsLcs)	
  
•  Parallelize	
  as	
  much	
  as	
  possible	
  and	
  
everything	
  will	
  run	
  faster	
  
•  Improve	
  Buffer	
  Hit	
  RaLo	
  and	
  Performance	
  
will	
  improve	
  
Enkitec	
  ©	
  2014	
   78	
  
Some	
  Myths	
  (2)	
  
•  An	
  Index	
  Access	
  operaLon	
  is	
  beer	
  than	
  a	
  
Full	
  Table	
  Scan	
  
•  Placing	
  Tables	
  and	
  Indexes	
  on	
  separate	
  
Tablespaces	
  provides	
  beer	
  performance	
  
•  Reorganize	
  all	
  Indexes	
  periodically	
  for	
  beer	
  
performance	
  
Enkitec	
  ©	
  2014	
   79	
  
Some	
  Myths	
  (3)	
  
•  Upgrading	
  to	
  faster	
  CPUs	
  results	
  on	
  beer	
  
performance	
  
•  Allocate	
  to	
  Oracle	
  more	
  Memory	
  and	
  
Processes	
  run	
  faster	
  
•  Segments	
  (Tables	
  or	
  Indexes)	
  with	
  one	
  
Extent	
  perform	
  beer	
  
Enkitec	
  ©	
  2014	
   80	
  
Some	
  Myths	
  (4)	
  
•  SQL	
  cannot	
  be	
  modified	
  (canned	
  applicaLon)	
  
•  A	
  truncated	
  SQL	
  Trace	
  cannot	
  be	
  used	
  for	
  
DiagnosLcs	
  
•  Top-­‐5	
  Wait	
  Events	
  show	
  the	
  root	
  cause	
  of	
  
the	
  poor	
  Performance	
  
•  Silver	
  Bullets	
  are	
  sound	
  and	
  reliable	
  
Enkitec	
  ©	
  2014	
   81	
  
Conclusions	
  
•  User	
  Experience	
  should	
  be	
  the	
  driver	
  
– AuthenLc	
  Business	
  Requirements	
  
•  QuesLon	
  Everything	
  
– Apply	
  ScienLfic	
  Method:	
  Test,	
  Prove	
  or	
  Debunk	
  
•  Balance	
  between	
  broad	
  with	
  deep	
  analysis	
  
•  Diagnose	
  with	
  sound	
  Scripts	
  and	
  Tools	
  
Enkitec	
  ©	
  2014	
   82	
  
References	
  
•  Oracle	
  Database	
  Reference	
  11g	
  Release	
  2	
  
•  Oracle	
  Database	
  Concepts	
  12c	
  Release	
  1	
  
•  Snapper	
  -­‐	
  Tanel	
  Poder	
  
– hp://blog.tanelpoder.com/files/scripts/
snapper4.sql	
  
Enkitec	
  ©	
  2014	
   83	
  
Contact	
  InformaLon	
  
•  carlos.sierra@enkitec.com	
  
•  carlos-­‐sierra.net	
  
•  @csierra_usa	
  
Enkitec	
  ©	
  2014	
   84	
  

Weitere ähnliche Inhalte

Was ist angesagt?

Ash masters : advanced ash analytics on Oracle
Ash masters : advanced ash analytics on Oracle Ash masters : advanced ash analytics on Oracle
Ash masters : advanced ash analytics on Oracle Kyle Hailey
 
Oracle sql high performance tuning
Oracle sql high performance tuningOracle sql high performance tuning
Oracle sql high performance tuningGuy Harrison
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTanel Poder
 
Oracle Database performance tuning using oratop
Oracle Database performance tuning using oratopOracle Database performance tuning using oratop
Oracle Database performance tuning using oratopSandesh Rao
 
Oracle Performance Tuning Fundamentals
Oracle Performance Tuning FundamentalsOracle Performance Tuning Fundamentals
Oracle Performance Tuning FundamentalsCarlos Sierra
 
Oracle Database SQL Tuning Concept
Oracle Database SQL Tuning ConceptOracle Database SQL Tuning Concept
Oracle Database SQL Tuning ConceptChien Chung Shen
 
Tanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder
 
Same plan different performance
Same plan different performanceSame plan different performance
Same plan different performanceMauro Pagano
 
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentalsDB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentalsJohn Beresniewicz
 
Tanel Poder - Scripts and Tools short
Tanel Poder - Scripts and Tools shortTanel Poder - Scripts and Tools short
Tanel Poder - Scripts and Tools shortTanel Poder
 
Awr + 12c performance tuning
Awr + 12c performance tuningAwr + 12c performance tuning
Awr + 12c performance tuningAiougVizagChapter
 
Oracle AWR Data mining
Oracle AWR Data miningOracle AWR Data mining
Oracle AWR Data miningYury Velikanov
 
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1SolarWinds
 
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder
 
Understanding SQL Trace, TKPROF and Execution Plan for beginners
Understanding SQL Trace, TKPROF and Execution Plan for beginnersUnderstanding SQL Trace, TKPROF and Execution Plan for beginners
Understanding SQL Trace, TKPROF and Execution Plan for beginnersCarlos Sierra
 
How to find what is making your Oracle database slow
How to find what is making your Oracle database slowHow to find what is making your Oracle database slow
How to find what is making your Oracle database slowSolarWinds
 
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsYour tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsJohn Kanagaraj
 

Was ist angesagt? (20)

Ash masters : advanced ash analytics on Oracle
Ash masters : advanced ash analytics on Oracle Ash masters : advanced ash analytics on Oracle
Ash masters : advanced ash analytics on Oracle
 
Oracle sql high performance tuning
Oracle sql high performance tuningOracle sql high performance tuning
Oracle sql high performance tuning
 
Ash and awr deep dive hotsos
Ash and awr deep dive hotsosAsh and awr deep dive hotsos
Ash and awr deep dive hotsos
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contention
 
Oracle Database performance tuning using oratop
Oracle Database performance tuning using oratopOracle Database performance tuning using oratop
Oracle Database performance tuning using oratop
 
Oracle Performance Tuning Fundamentals
Oracle Performance Tuning FundamentalsOracle Performance Tuning Fundamentals
Oracle Performance Tuning Fundamentals
 
Oracle Database SQL Tuning Concept
Oracle Database SQL Tuning ConceptOracle Database SQL Tuning Concept
Oracle Database SQL Tuning Concept
 
Tanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata MigrationsTanel Poder - Performance stories from Exadata Migrations
Tanel Poder - Performance stories from Exadata Migrations
 
Same plan different performance
Same plan different performanceSame plan different performance
Same plan different performance
 
SQLd360
SQLd360SQLd360
SQLd360
 
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentalsDB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
DB Time, Average Active Sessions, and ASH Math - Oracle performance fundamentals
 
Tanel Poder - Scripts and Tools short
Tanel Poder - Scripts and Tools shortTanel Poder - Scripts and Tools short
Tanel Poder - Scripts and Tools short
 
Awr + 12c performance tuning
Awr + 12c performance tuningAwr + 12c performance tuning
Awr + 12c performance tuning
 
Oracle AWR Data mining
Oracle AWR Data miningOracle AWR Data mining
Oracle AWR Data mining
 
SQL Tuning 101
SQL Tuning 101SQL Tuning 101
SQL Tuning 101
 
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 1
 
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2
 
Understanding SQL Trace, TKPROF and Execution Plan for beginners
Understanding SQL Trace, TKPROF and Execution Plan for beginnersUnderstanding SQL Trace, TKPROF and Execution Plan for beginners
Understanding SQL Trace, TKPROF and Execution Plan for beginners
 
How to find what is making your Oracle database slow
How to find what is making your Oracle database slowHow to find what is making your Oracle database slow
How to find what is making your Oracle database slow
 
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and AdvisorsYour tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
Your tuning arsenal: AWR, ADDM, ASH, Metrics and Advisors
 

Andere mochten auch

Ebs performance tuning session feb 13 2013---Presented by Oracle
Ebs performance tuning session  feb 13 2013---Presented by OracleEbs performance tuning session  feb 13 2013---Presented by Oracle
Ebs performance tuning session feb 13 2013---Presented by OracleAkash Pramanik
 
Monitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMonitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMatthias Furrer
 
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2SolarWinds
 
Oracle Performance Tools of the Trade
Oracle Performance Tools of the TradeOracle Performance Tools of the Trade
Oracle Performance Tools of the TradeEnkitec
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningScott Jenner
 
Double the Performance of Oracle SOA Suite 11g? Absolutely!
Double the Performance of Oracle SOA Suite 11g? Absolutely!Double the Performance of Oracle SOA Suite 11g? Absolutely!
Double the Performance of Oracle SOA Suite 11g? Absolutely!Revelation Technologies
 
Top 10 tips for Oracle performance (Updated April 2015)
Top 10 tips for Oracle performance (Updated April 2015)Top 10 tips for Oracle performance (Updated April 2015)
Top 10 tips for Oracle performance (Updated April 2015)Guy Harrison
 
Oracle performance tuning
Oracle performance tuningOracle performance tuning
Oracle performance tuningvksgarg
 
OOW15 - Getting Optimal Performance from Oracle E-Business Suite
OOW15 - Getting Optimal Performance from Oracle E-Business SuiteOOW15 - Getting Optimal Performance from Oracle E-Business Suite
OOW15 - Getting Optimal Performance from Oracle E-Business Suitevasuballa
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationBerry Clemens
 

Andere mochten auch (11)

Ebs performance tuning session feb 13 2013---Presented by Oracle
Ebs performance tuning session  feb 13 2013---Presented by OracleEbs performance tuning session  feb 13 2013---Presented by Oracle
Ebs performance tuning session feb 13 2013---Presented by Oracle
 
Monitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMonitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11g
 
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2
Stop the Chaos! Get Real Oracle Performance by Query Tuning Part 2
 
Oracle Performance Tools of the Trade
Oracle Performance Tools of the TradeOracle Performance Tools of the Trade
Oracle Performance Tools of the Trade
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
Double the Performance of Oracle SOA Suite 11g? Absolutely!
Double the Performance of Oracle SOA Suite 11g? Absolutely!Double the Performance of Oracle SOA Suite 11g? Absolutely!
Double the Performance of Oracle SOA Suite 11g? Absolutely!
 
Top 10 tips for Oracle performance (Updated April 2015)
Top 10 tips for Oracle performance (Updated April 2015)Top 10 tips for Oracle performance (Updated April 2015)
Top 10 tips for Oracle performance (Updated April 2015)
 
Performance in the Oracle Cloud
Performance in the Oracle CloudPerformance in the Oracle Cloud
Performance in the Oracle Cloud
 
Oracle performance tuning
Oracle performance tuningOracle performance tuning
Oracle performance tuning
 
OOW15 - Getting Optimal Performance from Oracle E-Business Suite
OOW15 - Getting Optimal Performance from Oracle E-Business SuiteOOW15 - Getting Optimal Performance from Oracle E-Business Suite
OOW15 - Getting Optimal Performance from Oracle E-Business Suite
 
Getting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentationGetting optimal performance from oracle e-business suite presentation
Getting optimal performance from oracle e-business suite presentation
 

Ähnlich wie Oracle Performance Tuning Fundamentals

Oracle Performance Tools of the Trade
Oracle Performance Tools of the TradeOracle Performance Tools of the Trade
Oracle Performance Tools of the TradeCarlos Sierra
 
Introducing the eDB360 Tool
Introducing the eDB360 ToolIntroducing the eDB360 Tool
Introducing the eDB360 ToolCarlos Sierra
 
Introducing the eDB360 Tool
Introducing the eDB360 ToolIntroducing the eDB360 Tool
Introducing the eDB360 ToolCarlos Sierra
 
OGG Architecture Performance
OGG Architecture PerformanceOGG Architecture Performance
OGG Architecture PerformanceEnkitec
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceEnkitec
 
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Bobby Curtis
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACKristofferson A
 
collab2011-tuning-ebusiness-421966.pdf
collab2011-tuning-ebusiness-421966.pdfcollab2011-tuning-ebusiness-421966.pdf
collab2011-tuning-ebusiness-421966.pdfElboulmaniMohamed
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceMark Ginnebaugh
 
Collaborate 2011-tuning-ebusiness-416502
Collaborate 2011-tuning-ebusiness-416502Collaborate 2011-tuning-ebusiness-416502
Collaborate 2011-tuning-ebusiness-416502kaziul Islam Bulbul
 
Collaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR ReportCollaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR ReportAlfredo Krieg
 
A1 engineered systems principles and architecture
A1   engineered systems principles and architectureA1   engineered systems principles and architecture
A1 engineered systems principles and architectureDr. Wilfred Lin (Ph.D.)
 
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive MetastoreOracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive MetastoreDataWorks Summit
 
Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1sqlserver.co.il
 
Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013John Beresniewicz
 
Remote DBA Experts SQL Server 2008 New Features
Remote DBA Experts SQL Server 2008 New FeaturesRemote DBA Experts SQL Server 2008 New Features
Remote DBA Experts SQL Server 2008 New FeaturesRemote DBA Experts
 

Ähnlich wie Oracle Performance Tuning Fundamentals (20)

Oracle Performance Tools of the Trade
Oracle Performance Tools of the TradeOracle Performance Tools of the Trade
Oracle Performance Tools of the Trade
 
Introducing the eDB360 Tool
Introducing the eDB360 ToolIntroducing the eDB360 Tool
Introducing the eDB360 Tool
 
Introducing the eDB360 Tool
Introducing the eDB360 ToolIntroducing the eDB360 Tool
Introducing the eDB360 Tool
 
sqltuning101-170419021007-2.pdf
sqltuning101-170419021007-2.pdfsqltuning101-170419021007-2.pdf
sqltuning101-170419021007-2.pdf
 
Apouc 2014-enterprise-manager-12c
Apouc 2014-enterprise-manager-12cApouc 2014-enterprise-manager-12c
Apouc 2014-enterprise-manager-12c
 
OGG Architecture Performance
OGG Architecture PerformanceOGG Architecture Performance
OGG Architecture Performance
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture Performance
 
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
collab2011-tuning-ebusiness-421966.pdf
collab2011-tuning-ebusiness-421966.pdfcollab2011-tuning-ebusiness-421966.pdf
collab2011-tuning-ebusiness-421966.pdf
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database Performance
 
Collaborate 2011-tuning-ebusiness-416502
Collaborate 2011-tuning-ebusiness-416502Collaborate 2011-tuning-ebusiness-416502
Collaborate 2011-tuning-ebusiness-416502
 
Collaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR ReportCollaborate 2019 - How to Understand an AWR Report
Collaborate 2019 - How to Understand an AWR Report
 
A1 engineered systems principles and architecture
A1   engineered systems principles and architectureA1   engineered systems principles and architecture
A1 engineered systems principles and architecture
 
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive MetastoreOracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
 
Spark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike PercySpark Summit EU talk by Mike Percy
Spark Summit EU talk by Mike Percy
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1
 
Internals of Presto Service
Internals of Presto ServiceInternals of Presto Service
Internals of Presto Service
 
Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013
 
Remote DBA Experts SQL Server 2008 New Features
Remote DBA Experts SQL Server 2008 New FeaturesRemote DBA Experts SQL Server 2008 New Features
Remote DBA Experts SQL Server 2008 New Features
 

Mehr von Enkitec

Using Angular JS in APEX
Using Angular JS in APEXUsing Angular JS in APEX
Using Angular JS in APEXEnkitec
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014Enkitec
 
Engineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service DemonstrationEngineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service DemonstrationEnkitec
 
Think Exa!
Think Exa!Think Exa!
Think Exa!Enkitec
 
In Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry OsborneIn Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry OsborneEnkitec
 
In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1Enkitec
 
Mini Session - Using GDB for Profiling
Mini Session - Using GDB for ProfilingMini Session - Using GDB for Profiling
Mini Session - Using GDB for ProfilingEnkitec
 
Profiling Oracle with GDB
Profiling Oracle with GDBProfiling Oracle with GDB
Profiling Oracle with GDBEnkitec
 
SQL Tuning Tools of the Trade
SQL Tuning Tools of the TradeSQL Tuning Tools of the Trade
SQL Tuning Tools of the TradeEnkitec
 
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan StabilityUsing SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan StabilityEnkitec
 
APEX Security Primer
APEX Security PrimerAPEX Security Primer
APEX Security PrimerEnkitec
 
How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?Enkitec
 
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...Enkitec
 
Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)Enkitec
 
Profiling the logwriter and database writer
Profiling the logwriter and database writerProfiling the logwriter and database writer
Profiling the logwriter and database writerEnkitec
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014Enkitec
 
Combining ACS Flexibility with SPM Stability
Combining ACS Flexibility with SPM StabilityCombining ACS Flexibility with SPM Stability
Combining ACS Flexibility with SPM StabilityEnkitec
 
Why You May Not Need Offloading
Why You May Not Need OffloadingWhy You May Not Need Offloading
Why You May Not Need OffloadingEnkitec
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXEnkitec
 
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXEnkitec
 

Mehr von Enkitec (20)

Using Angular JS in APEX
Using Angular JS in APEXUsing Angular JS in APEX
Using Angular JS in APEX
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014
 
Engineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service DemonstrationEngineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service Demonstration
 
Think Exa!
Think Exa!Think Exa!
Think Exa!
 
In Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry OsborneIn Memory Database In Action by Tanel Poder and Kerry Osborne
In Memory Database In Action by Tanel Poder and Kerry Osborne
 
In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1In Search of Plan Stability - Part 1
In Search of Plan Stability - Part 1
 
Mini Session - Using GDB for Profiling
Mini Session - Using GDB for ProfilingMini Session - Using GDB for Profiling
Mini Session - Using GDB for Profiling
 
Profiling Oracle with GDB
Profiling Oracle with GDBProfiling Oracle with GDB
Profiling Oracle with GDB
 
SQL Tuning Tools of the Trade
SQL Tuning Tools of the TradeSQL Tuning Tools of the Trade
SQL Tuning Tools of the Trade
 
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan StabilityUsing SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan Stability
 
APEX Security Primer
APEX Security PrimerAPEX Security Primer
APEX Security Primer
 
How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?How Many Ways Can I Manage Oracle GoldenGate?
How Many Ways Can I Manage Oracle GoldenGate?
 
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
Understanding how is that adaptive cursor sharing (acs) produces multiple opt...
 
Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)Sql tuning made easier with sqltxplain (sqlt)
Sql tuning made easier with sqltxplain (sqlt)
 
Profiling the logwriter and database writer
Profiling the logwriter and database writerProfiling the logwriter and database writer
Profiling the logwriter and database writer
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014
 
Combining ACS Flexibility with SPM Stability
Combining ACS Flexibility with SPM StabilityCombining ACS Flexibility with SPM Stability
Combining ACS Flexibility with SPM Stability
 
Why You May Not Need Offloading
Why You May Not Need OffloadingWhy You May Not Need Offloading
Why You May Not Need Offloading
 
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEXLOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
LOBS, BLOBS, CLOBS: Dealing with Attachments in APEX
 
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEX
 

Kürzlich hochgeladen

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 

Kürzlich hochgeladen (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 

Oracle Performance Tuning Fundamentals

  • 1. Oracle  Performance  Tuning   Fundamentals   Carlos  Sierra  
  • 2. Carlos  Sierra   •  SQLTXPLAIN  +  SQL  Health-­‐Check  SQLHC  +   •  Consultant/Developer/DBA/Design/+   •  Oracle  Performance  +  SQL  Tuning   •  Oracle  Database  Health-­‐Check   •  Tools  +  Scripts   •  Speaker   Enkitec  ©  2014   2  
  • 3. Oracle  Performance  Tuning  Fundamentals   •  Concepts   •  Time   •  Waits   •  StaLsLcs   •  Dynamic  Views   Enkitec  ©  2014   3  
  • 4. What  is  Performance  Tuning?   •  Provide  correct  mix  and  amount  of  Resources   •  Reduce  User’s  Wait  Times   •  Changing  System  components  to  achieve   Goals   •  Increase  Throughput   •  Improve  Response  Time   Enkitec  ©  2014   4  
  • 5. Why  Performance  Tuning  is  hard?   •  Concurrency   •  Dynamism   •  Complexity   – Too  many  knobs  to  our  disposal   – Too  many  soXware  layers   Enkitec  ©  2014   5  
  • 6. Performance  Tuning  Approaches   •  “Top-­‐down”   •  “Boom-­‐up”   •  “HolisLc”   •  “Random”  a.k.a.  “Trial  and  Error”   •  “Silver  Bullets”  a.k.a.  “One  Size  Fits  All”   Enkitec  ©  2014   6  
  • 7. Back  to  Basics   •  Understand  your  OperaLng  System   •  Understand  your  Database   •  Understand  your  Business   •  Understand  your  Users   •  Understand  your  OpLons   Enkitec  ©  2014   7  
  • 8. OS  Components   •  CPU   •  Memory   •  I/O  Subsystem   – Disk   •  Capacity  and  Throughput   •  Network   Enkitec  ©  2014   8  
  • 9. OS  Performance  Monitoring  Tools   •  sar   •  top  and  htop   •  mpstat  and  vmstat   •  iotop  and  iostat   •  dtrace  and  strace   Enkitec  ©  2014   9  
  • 11. OS  Tools  Strategy   •  Define  your  own  subset  of  Tools  to  use   •  Learn  them  well   •  Create  some  Scripts  or  use  a  GUI   •  Correlate  DB  Performance  to  OS  Monitoring   •  Work  with  your  System  Administrator   Enkitec  ©  2014   11  
  • 12. OS  StaLsLcs  within  Oracle   •  Provides  a  high-­‐level  view  of  OS   •  CumulaLve  Metrics   •  Views   – V$OSSTAT   – DBA_HIST_OSSTAT   Enkitec  ©  2014   12  
  • 14. Oracle  Architecture   •  Database   – Data  Files  +  Temp  Files  +  Redo  Log  +  Control  Files   •  Instance   – SGA  +  PGA  +  Processes   •  RAC   Enkitec  ©  2014   14  
  • 18. Performance  is  about  Time   •  Performance  is  beer  understood  as  Time   •  Which  Time?   – User?   – Clock?   – Elapsed?   – CPU?   Enkitec  ©  2014   18  
  • 19. Service  Time   •  Service  Time  =  CPU  Time   •  User  Time  =  CPU  Time  +  Wait  Time   •  User  Time  =  Service  Time  +  Wait  Time   •  Time  =  Service  +  Wait   Enkitec  ©  2014   19  
  • 20. Wait  Time   •  Overhead   •  Two  flavors   – Non-­‐Idle   •  Inside  the  database   – Idle   •  Outside  the  database   Enkitec  ©  2014   20  
  • 21. Non-­‐idle  Waits   •  Overhead   •  AcLvely  WaiLng  inside  the  database   •  Examples   – Reading  a  Block  from  Disk   – Index  Rebuild   – ApplicaLon  Row  level  Lock   Enkitec  ©  2014   21  
  • 22. Idle  Waits   •  Overhead   •  InacLve   •  WaiLng  for  work   •  Outside  the  database   Enkitec  ©  2014   22  
  • 23. What  is  a  Wait  Event?   •  V$EVENT_NAME   •  1,152  on  11.2.0.3   •  P1,  P2,  P3  Parameters   – Oracle  Database  Reference   •  C  Oracle  Wait  Events   •  Categorized  into  12  Wait  Classes   Enkitec  ©  2014   23  
  • 24. Wait  Class  (1)   •  AdministraLve   •  ApplicaLon   •  Cluster   •  Commit   Enkitec  ©  2014   24  
  • 25. Wait  Class  (2)   •  Concurrency   •  ConfiguraLon   •  Network   •  Other   Enkitec  ©  2014   25  
  • 26. Wait  Class  (3)   •  Queue   •  Scheduler   •  System  I/O   •  User  I/O   Enkitec  ©  2014   26  
  • 27. Timed  Event   •  CPU  +   •  Non-­‐idle  Wait  Events   Enkitec  ©  2014   27  
  • 28. Performance  StaLsLcs   •  If  Wait  Events  refer  to  Time  and  Times   •  Then  StaLsLcs  refer  to  Counters   – How  many  of  “X”  so  far  (from  Instance  startup)   – Examples   •  Sorts   •  Consistent  Gets   Enkitec  ©  2014   28  
  • 29. StaLsLcs  a.k.a.  Counters   •  V$STATNAME   •  638  Counters  on  11.2.0.3   •  DescripLon   – Oracle  Database  Reference   •  E  StaLsLcs  DescripLons   •  Categorized  into  8  StaLsLcs  Classes   Enkitec  ©  2014   29  
  • 30. StaLsLcs  Classes  (1)   •  1,  User   •  2,  Redo   •  4,  Enqueue   •  8,  Cache   Enkitec  ©  2014   30  
  • 31. StaLsLcs  Classes  (2)   •  16,  OS   •  32,  Real  ApplicaLon  Clusters   •  64,  SQL   •  128,  Debug   Enkitec  ©  2014   31  
  • 32. StaLsLcs  Classes  (3)   •  A  Counter  belongs  to  1  or  more  Class   Enkitec  ©  2014   32  
  • 33. Session  Type  and  State   •  Foreground  Type   – User  Session   •  Background  Type   – Database  Programs   •  On  CPU  State   •  WaiLng  State   Enkitec  ©  2014   33  
  • 34. Database  Time   •  Includes  all  Foreground  Sessions   – Currently  “On  CPU”  or  on  a  “Non-­‐idle  Wait   Event”   •  Be  aware   – Database  Time  in  1hr  interval  can  add  to  >  1hr   – It  can  also  add  to  >  (Lme  interval  x  CPU  count)   Enkitec  ©  2014   34  
  • 35. Database  Time  Example   •  Wall  Clock  Time:  60  minutes   •  CPU_COUNT:  12   •  CPU  Time:  300  minutes  (<  12  x  60  =  720)  ~42%   •  30  users  waiLng  on  a  Lock  for  50  minutes  each   •  Thus:  DB  Time  of  1,800  minutes  (>  720)   –  300  +  (30  x  50)   Enkitec  ©  2014   35  
  • 36. Background  Time   •  Includes  all  Background  Sessions   – Currently  “On  CPU”  or  on  a  “Non-­‐idle  Wait   Event”   Enkitec  ©  2014   36  
  • 37. System  Time  Model  (1)   •  V$SYS_TIME_MODEL   •  V$SESS_TIME_MODEL   •  CumulaLve  Time  with  no  wrapping   •  Tree  with  19  nodes   – Two  root  nodes   Enkitec  ©  2014   37  
  • 38. System  Time  Model  (2)   •  Two  root  nodes   – DB  (Elapsed)  Time   – Background  Elapsed  Time   – Notes:   •  Children  do  not  necessarily  add  up  to  the  parent   •  Children  are  not  necessarily  exclusive     •  The  union  of  children  does  not  cover  the  whole  of  the   parent   Enkitec  ©  2014   38  
  • 39. System  Time  Model  (3)   Enkitec  ©  2014   39   1)  background  elapsed  time          2)  background  cpu  time                      3)  RMAN  cpu  time  (backup/restore)   1)  DB  time          2)  DB  CPU          2)  connection  management  call  elapsed  time          2)  sequence  load  elapsed  time          2)  sql  execute  elapsed  time          2)  parse  time  elapsed                      3)  hard  parse  elapsed  time                                  4)  hard  parse  (sharing  criteria)  elapsed  time                                          5)  hard  parse  (bind  mismatch)  elapsed  time                      3)  failed  parse  elapsed  time                                  4)  failed  parse  (out  of  shared  memory)  elapsed  time          2)  PL/SQL  execution  elapsed  time          2)  inbound  PL/SQL  rpc  elapsed  time          2)  PL/SQL  compilation  elapsed  time          2)  Java  execution  elapsed  time          2)  repeated  bind  elapsed  time  
  • 40. Response  Time   •  Time  a  Query  takes  to  return  First  Row(s)   •  Important  for  Online  oriented  processing   – OLTP  behavior   Enkitec  ©  2014   40  
  • 41. Throughput   •  Amount  of  Work  performed  in  a  given  Time   – How  many  Rows  this  Query  returns  per  Second?   – Time  a  Query  takes  to  return  All  Rows   •  Important  for  Batch  oriented  processing   – Data  warehouse  behavior   Enkitec  ©  2014   41  
  • 42. User  Time   •  A  measure  of  User  Experience   – Time  it  takes  for  a  User  to  get  some  Result   •  Includes     – Database  Time   – Scheduling  Time   – Network  Time   Enkitec  ©  2014   42  
  • 43. Which  Time  is  more  important?   •  Database?   •  Background?   •  Service?   •  Wait?   •  Response?   •  User?   Enkitec  ©  2014   43  
  • 44. Processes  and  Sessions   •  ConnecLon  is  a  pathway  to  the  Database   •  A  ConnecLon  can  have  0,  1  or  more  Sessions   •  A  Process  may  serve  1  or  more  Sessions   •  Default  Sessions   – (1.5  x  Processes)  +  22   Enkitec  ©  2014   44  
  • 45. How  many  Processes  to  have?   •  Ideally  between  2  and  5  Lmes  the  number  of   CPUs   – Example:  16  CPUs   •  Ideally:  between  32  and  80   •  Common:  ~1000   •  Advice:   – Keep  “processes”  parameter  as  small  as  possible   Enkitec  ©  2014   45  
  • 46. Average  AcLve  Session  (AAS)   •  Common  unit  to  compare  Performance   •  What  is  an  “AcLve  Session”?   – One  “On  CPU”  or  on  a  “Non-­‐idle  Wait  Event”   •  Two  ways  to  compute  AAS   1.  Using  count  of  AcLve  Sessions  on  a  Snapshot   2.  Database  Time  divided  over  Wall  Clock  Time   Enkitec  ©  2014   46  
  • 47. WORKLOAD  REPOSITORY  report  for     DB  Name                  DB  Id        Instance          Inst  Num  Startup  Time        Release          RAC   -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐   XXX                      1319103893  XXX                                  1  10-­‐Apr-­‐14  14:55  11.2.0.3.0    NO     Host  Name                Platform                                                  CPUs  Cores  Sockets  Memory(GB)   -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐   xxxxxxxx                  AIX-­‐Based  Systems  (64-­‐bit)                  16          4                            72.00                                Snap  Id            Snap  Time            Sessions  Curs/Sess                          -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐   Begin  Snap:              139  11-­‐Apr-­‐14  15:00:58              217          144.9      End  Snap:              140  11-­‐Apr-­‐14  15:15:58              218          145.7        Elapsed:                              15.01  (mins)        DB  Time:                              83.46  (mins)     Cache  Sizes                                              Begin                End   ~~~~~~~~~~~                                    -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐                                Buffer  Cache:        23,360M        23,360M    Std  Block  Size:                  8K                        Shared  Pool  Size:          1,664M          1,664M            Log  Buffer:        11,848K     Load  Profile                            Per  Second        Per  Transaction      Per  Exec      Per  Call   ~~~~~~~~~~~~                  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐        -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐              DB  Time(s):                                5.6                                1.7              0.02              0.11                DB  CPU(s):                                0.2                                0.1              0.00              0.00                Redo  size:                    238,783.6                      72,491.8        Logical  reads:                        2,300.9                            698.5        Block  changes:                            626.3                            190.2      Physical  reads:                                3.9                                1.2    Physical  writes:                              28.8                                8.7              User  calls:                              48.4                              14.7                      Parses:                              14.3                                4.3            Hard  parses:                                0.0                                0.0   W/A  MB  processed:                                0.1                                0.0                      Logons:                                0.1                                0.0                  Executes:                            317.3                              96.3                Rollbacks:                                1.1                                0.3          Transactions:                                3.3   Enkitec  ©  2014   47  
  • 48. Performance  Tuning  Goals   •  Minimize  amount  of  Business  required  work   •  OpLmize  CPU  Time   – Avoid  wasLng  cycles   •  OpLmize  Wait  Time   – Minimize  Wait  Time   •  Judged  by  Business  and  by  User  community   Enkitec  ©  2014   48  
  • 49. Basic  DB  Performance  CollecLon   •  System-­‐wide  Waits   – CumulaLve   •  Session  Waits   – CumulaLve  and  Current   •  Session  and  System-­‐wide  StaLsLcs  Counters   – CumulaLve   Enkitec  ©  2014   49  
  • 50. Dynamic  Performance  Views  (1)   •  V$SESSION_WAIT   – Current  or  last  Wait   •  Only  one  row  per  Session   •  P1,  P2  and  P3  provide  details  of  Wait   – Available  also  on  V$SESSION     Enkitec  ©  2014   50  
  • 52. Dynamic  Performance  Views  (2)   •  V$SESSION_EVENT   – Total  Waits  and  Time  Waited  per  Event   – Only  those  Events  the  Session  has  waited  on     Enkitec  ©  2014   52  
  • 55. Dynamic  Performance  Views  (3)   •  V$SESSION_WAIT_CLASS   – Total  Waits  and  Time  Waited  per  Wait  Class   – Aggregate  of  V$SESSION_EVENT  on  Wait  Class     Enkitec  ©  2014   55  
  • 57. Dynamic  Performance  Views  (4)   •  V$SESSTAT   – StaLsLcs  a.k.a.  Counters  (not  Waits)   – SID,  staLsLcs#  and  value   – Join  to  V$STATNAME   Enkitec  ©  2014   57  
  • 60. Dynamic  Performance  Views  (5)   •  V$SYSTEM_EVENT   – Total  Waits  and  Time  Waited  per  Event   – Aggregate  of  V$SESSION_EVENT   – Instance-­‐wide   Enkitec  ©  2014   60  
  • 61. Dynamic  Performance  Views  (6)   •  V$SYSTEM_WAIT_CLASS   – Total  Waits  and  Time  Waited  per  Wait  Class   – Aggregate  of  V$SYSTEM_EVENT  on  Wait  Class;  or   – Aggregate  of  V$SESSION_WAIT_CLASS   Enkitec  ©  2014   61  
  • 62. Dynamic  Performance  Views  (7)   •  V$SYSSTAT   – staLsLcs#,  name,  class  and  value   – No  need  to  join  to  V$STATNAME   – Aggregate  of  V$SESSTAT   Enkitec  ©  2014   62  
  • 63. Dynamic  Performance  Views  (8)   •  V$SESS_TIME_MODEL   •  V$SESSMETRIC   •  V$SESS_IO   •  V$SESSION_LONGOPS   Enkitec  ©  2014   63  
  • 65. Dynamic  Performance  Views  (9)   •  V$SYS_TIME_MODEL   •  V$SYSMETRIC   •  V$SYSMETRIC_SUMMARY   •  V$SYSMETRIC_HISTORY   Enkitec  ©  2014   65  
  • 66. Dynamic  Performance  Views  (10)   •  V$EVENT_HISTOGRAM   •  V$EVENTMETRIC   •  V$WAITCLASSMETRIC   •  V$WAITCLASSMETRIC_HISTORY   Enkitec  ©  2014   66  
  • 68. Dynamic  Performance  Views  (11)   •  V$FILEIO   •  V$FILE_HISTOGRAM   •  V$FILE_METRIC   •  V$FILEMETRIC_HISTORY   Enkitec  ©  2014   68  
  • 69. Dynamic  Performance  Views  (12)   •  V$OSSTAT   •  V$PGASTAT   •  V$SGASTAT   •  And  many  more…   Enkitec  ©  2014   69  
  • 71. Dynamic  Views  Summary   •  V$SYSTEM_EVENT   – Total  Waits  for  Events  (system-­‐wide)   •  V$SESSION_EVENT   – Total  Waits  for  Events  (session  specific)   •  V$SESSION_WAIT   – Current  or  Last  Wait  (session  specific)   Enkitec  ©  2014   71  
  • 72. Real-­‐life  use  of  Dynamic  Views   •  SQL*Plus  Scripts   – Your  own  or  Tanel  Poder’s  “snapper.sql”   •  Current  and  legacy  Tools   – OEM,  AWR,  ADDR,  ASH,  Statspack,  bstat/estat   •  Other  Scripts  and  Tools   Enkitec  ©  2014   72  
  • 73. AutomaLc  Workload  Repository  (AWR)   •  Requires  Oracle  DiagnosLcs  Pack  License   •  112  DBA_HIST  Views  on  11.2.0.3   •  Snapshots   – One  hour  interval  (default)   – One  week  retenLon  (default)   Enkitec  ©  2014   73  
  • 74. AcLve  Session  History  (ASH)   •  Requires  Oracle  DiagnosLcs  Pack  License   •  MulL-­‐dimension   •  V$ACTIVE_SESSION_HISTORY   – One  snapshot  (sample_id)  every  second     •  DBA_HIST_ACTIVE_SESS_HISTORY   – One  sample_id  out  of  every  10   Enkitec  ©  2014   74  
  • 75. Methodology  in  a  Nut  Shell   •  Listen  to  the  voice  of  the  Business   •  Collect  DiagnosLcs  and  compare  to  Baselines   •  IdenLfy  Pain  and  Bolenecks   •  MiLgate  Pain  by  addressing  Bolenecks   – Reach  out  when  needed   – Learn  and  document   Enkitec  ©  2014   75  
  • 76. Database  Temperature  Rule  of  Thumb   •  If  (Database  +  Background)  Time   <  Interval  è  ice  cold   <  Interval  x  CPU  count  è  cold   <  5  x  Interval  x  CPU  count  è  warm   <  10  x  Interval  x  CPU  count  è  hot   >  10  x  Interval  x  CPU  count  è  melLng   Enkitec  ©  2014   76  
  • 77. Warning   •  Take  “Rules  of  Thumb”  with  a  pinch  of  salt   and  do  not  confuse  them  with  “Myths”   •  Rule  of  Thumb   “a  principle  with  broad  applica7on  that  is  not  intended   to  be  strictly  accurate  or  reliable  for  every  situa7on”   •  Myth   “a  widely  held  but  false  belief  or  idea”   Enkitec  ©  2014   77  
  • 78. Some  Myths  (1)   •  Change  nothing  and  Performance  will  remain   the  same  (i.e.  Freeze  CBO  StaLsLcs)   •  Parallelize  as  much  as  possible  and   everything  will  run  faster   •  Improve  Buffer  Hit  RaLo  and  Performance   will  improve   Enkitec  ©  2014   78  
  • 79. Some  Myths  (2)   •  An  Index  Access  operaLon  is  beer  than  a   Full  Table  Scan   •  Placing  Tables  and  Indexes  on  separate   Tablespaces  provides  beer  performance   •  Reorganize  all  Indexes  periodically  for  beer   performance   Enkitec  ©  2014   79  
  • 80. Some  Myths  (3)   •  Upgrading  to  faster  CPUs  results  on  beer   performance   •  Allocate  to  Oracle  more  Memory  and   Processes  run  faster   •  Segments  (Tables  or  Indexes)  with  one   Extent  perform  beer   Enkitec  ©  2014   80  
  • 81. Some  Myths  (4)   •  SQL  cannot  be  modified  (canned  applicaLon)   •  A  truncated  SQL  Trace  cannot  be  used  for   DiagnosLcs   •  Top-­‐5  Wait  Events  show  the  root  cause  of   the  poor  Performance   •  Silver  Bullets  are  sound  and  reliable   Enkitec  ©  2014   81  
  • 82. Conclusions   •  User  Experience  should  be  the  driver   – AuthenLc  Business  Requirements   •  QuesLon  Everything   – Apply  ScienLfic  Method:  Test,  Prove  or  Debunk   •  Balance  between  broad  with  deep  analysis   •  Diagnose  with  sound  Scripts  and  Tools   Enkitec  ©  2014   82  
  • 83. References   •  Oracle  Database  Reference  11g  Release  2   •  Oracle  Database  Concepts  12c  Release  1   •  Snapper  -­‐  Tanel  Poder   – hp://blog.tanelpoder.com/files/scripts/ snapper4.sql   Enkitec  ©  2014   83  
  • 84. Contact  InformaLon   •  carlos.sierra@enkitec.com   •  carlos-­‐sierra.net   •  @csierra_usa   Enkitec  ©  2014   84