sql explore 2012 - tzahi hakikat and keren bartal: extended events
TRANSCRIPT
![Page 1: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/1.jpg)
Introducing SQL Server
2012 Extended Events
Enhancements
Keren BartalTzahi Hakikat888 holdings
![Page 2: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/2.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 3: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/3.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 4: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/4.jpg)
About 888
• 888.com is a global online gaming company.• Our purpose is to provide quality
entertainment for people who enjoy gambling.
• Giving them the opportunity to do so in a safe, fun, fair, regulated and secure environment.
![Page 5: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/5.jpg)
![Page 6: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/6.jpg)
888 Database Environment
50 Production Instances
300 Development Instances
400 Databases
250 TB Of Data
24*7 Availability
99.95 Uptime
![Page 7: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/7.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 8: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/8.jpg)
Extended Events
• General event-handling system for windows servers
• Used for problem diagnosis and info gathering and auditing
• The Extended Events infrastructure supports the correlation of data from SQL Server and OS
![Page 9: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/9.jpg)
Extended Events
• Support 7 different types of targets• Event and consumer agnostic– Any event can be processed by any consumer– New events can be added, immediately useable
• Rich predicate system for filtering• Less overhead than server-side trace queues– 10,000 events processed will consume 1% of
single 2GHz processor
![Page 10: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/10.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 11: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/11.jpg)
Extended Events 2008
כתב • כמו שנראה בסינטקס לכתוב אוהבים? כנעני סתרים
•- שה מה Profiler מרגישים לכם נותן לא? צריכים שאתם
• , לי, אכפת מה ברגל לעצמכם תירו .קדימה•? " ל הנ הציטוט מי של
![Page 12: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/12.jpg)
Extended Events 2008 drawbacks
• XE required extensive understanding of system catalog views and DMVs
• Event Sessions could only be managed through the use of DDL commands
• Reading target data requires the use of XQuery
![Page 13: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/13.jpg)
Extended Event Metadata
• Catalog views for defined session info– server_event_sessions– server_event_session_target– server_event_session_fields– server_event_session_actions– server_event_session_events
• DMVs for Event System Metadata– dm_xe_package– dm_xe_objects– dm_xe_object_columns– dm_xe_map_values
• DMVs for currently active session info– dm_xe_sessions– dm_xe_session_targets– dm_xe_events– dm_xe_event_actions– dm_xe_object_columns
![Page 14: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/14.jpg)
Demo
Capture errors with XE 2008
• Find events and actions• Create a new event session • View the output
![Page 15: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/15.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 16: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/16.jpg)
Extended Events Objects
Module
Packages
Events Targets Actions Types Predicates Maps
![Page 17: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/17.jpg)
Packages
• Packages are metadata containers• Packages register at module load time• 9 available packages
• package0 - XE system objects (default)• sqlserver - SQL Server related objects• sqlos - SQL Server Operating System (SQLOS) related
objects
• SQL audit uses private XE package
![Page 18: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/18.jpg)
Events
• An event is a well known point in code• Unique schema for each event• Supports optional fields• Events fire synchronously• 264 events in 2008 R2• 618 events in 2012
![Page 19: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/19.jpg)
Actions
• programmatic response or series of responses to an event
• Can be added to any event• Adds data to the event payload• Actions are invoked synchronously • Trigger a memory dump
![Page 20: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/20.jpg)
Demo
Capture errors using the XE UI
• Create an event session • Configure action• Watch live data
![Page 21: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/21.jpg)
Targets
• Target is an event consumer – Can be synchronous or asynchronous
• Target types– event_file– event_counter– histogram– etw_classic_sync_target– pair_matching– ring_buffer– event_stream
![Page 22: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/22.jpg)
Demo
Monitor locks
Present different types of targets
• Ring buffer• Event file• Event counter• Histogram • Pair Matching • Etw_classic_sync_target
![Page 23: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/23.jpg)
Predicates
• Predicates are a set of logical rules that are used to evaluate events when they are processed.
• Boolean expressions using flexible operators• Event data• Action data• Global State
![Page 24: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/24.jpg)
Demo
Activity Tracking
Present different types of Predicates
• Event Predicates• Action Predicates• Global Predicates
![Page 25: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/25.jpg)
Event Session
• The materialization of combination of metadata elements of XE architecture
• Multiple targets per session• Event can be in many sessions– Actions/Predicates are per event
• Event Session can specify what to do if target can't keep up
• Event Session defines data retention• Event session can add or remove events on runtime
![Page 26: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/26.jpg)
Event Session
![Page 27: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/27.jpg)
Event life cycle
Pre-Collect
IsEnabled check
Publish
Actions executed Synchronous targets served Event data buffered for asynchronous targets
Collection
Customizable attribute check
Predicate evaluation
Predicate evaluation
Event data collected
![Page 28: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/28.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 29: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/29.jpg)
Extended Events 2012 Enhancements
• User Interface– Advanced & Wizard UI for creating and managing– Display & Analysis
• Expanded to other systems– Analysis Services, Replication, PDW
• Managed code– Powershell object model for runtime and meta
data– Reader API for XEL files and near real time stream
![Page 30: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/30.jpg)
User Interface
• Event Session list – Provides a list of Event Sessions
• New Session Wizard – Provides a simplified experience for creating an
Event Session• Extended Events display– Tabbed windows that display Extended Events
trace data
![Page 31: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/31.jpg)
Demo
Capture queries and group by query hash
• Grouping • Aggregation• Save XE to a table
![Page 32: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/32.jpg)
Extended Events Management API
• Management API provides the ability to create and modify event sessions
• Provides a complete object model for XE usage by managed applications
• Provides a XEReader API for reading event files and event streams coming from a running event session on a server
![Page 33: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/33.jpg)
Agenda
• About us• Introduction to Extended Events• Extended Events 2008• Extended Events Practical Terminology • Extended Events 2012 Enhancements• Summary
![Page 34: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/34.jpg)
Extended Event Use Cases
• Proactive monitoring – Application errors– Errors log– Event grouping
• Troubleshooting– Page Split – blocking
• Audit – Monitor the access of privileged and non privileged
users
![Page 35: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/35.jpg)
The Profiler’s grave
![Page 36: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/36.jpg)
Summary
• SQL Server 2012 offers simplified diagnostic tracing with Extended Events – Management Studio integration provides SQL Server
Profiler functionality for Extended Events allowing Event Sessions to be created, modified, and scripted
– Management API allows managed applications to be developed that leverage Extended Events
![Page 37: SQL Explore 2012 - Tzahi Hakikat and Keren Bartal: Extended Events](https://reader035.vdocument.in/reader035/viewer/2022062319/555e0ea1d8b42a99188b4d88/html5/thumbnails/37.jpg)