Presentation is loading. Please wait.

Presentation is loading. Please wait.

ISV Proposition Keith Burns Data Architect Microsoft UK

Similar presentations


Presentation on theme: "ISV Proposition Keith Burns Data Architect Microsoft UK"— Presentation transcript:

1 ISV Proposition Keith Burns Data Architect Microsoft UK keith.burns@microsoft.com

2 Transparent Data Encryption External Key Management Data Auditing Pluggable CPU Transparent Failover for Database Mirroring Policy Management Server Group Management Streamlined Installation Enterprise System Management Performance Data Collection System Analysis Data Compression Query Optimization Modes Resource Governor Entity Data Model LINQ Visual Entity Designer Entity Aware Adapters SQL Server Change Tracking Synchronized Programming Model Visual Studio Support SQL Server Conflict Detection FILESTREAM data type Integrated Full Text Search Sparse Columns Large User Defined Types Date/Time Data Type LOCATION data type SPATIAL data type Virtual Earth Integration Partitioned Table Parallelism Query Optimizations Persistent Lookups Change Data Capture Backup Compression MERGE SQL Statement Data Profiling Star Join Enterprise Reporting Engine Internet Report Deployment Block Computations Scale out Analysis BI Platform Management Export to Word and Excel Author reports in Word and Excel Report Builder Enhancements TABLIX Rich Formatted Data Personalized Perspectives … and many more

3 Top ISV Features in SQL Server 2008 1.Lock Escalation 2.Plan Freezing 3.Optimise for Ad-hoc Workloads Option 4.Resource Governor 5.Logging enhancements 6.Sparse Data and Indexes 7.Hierarchy Datatype 8.Spatial Data 9.Filestream 10.Security (Auditing & Transparent Database Encryption (TDE)

4 Lock Escalation Pain Points Lock escalation causes performance problems (blocking); cannot be controlled on per table basis Traceflags -T1211 & -T1224 used to disable lock escalation can help, but often result in other problems SQL Server 2008 disable lock escalation at a table level ALTER TABLE TabA SET (LOCK_ESCALATION = DISABLE); For partitioned tables, results in lock being escalated to the partition, instead of to the table level as in SQL Server 2005

5 Plan Freezing Pain Points Difficult to tune query plan when T-SQL code not accessible No easy way of ensuring plan consistency across upgrades SQL Server 2005 introduced Plan Guides and USE PLAN hint; but these were difficult to use SQL Server 2008 Plan Freezing builds on plan guides framework and introduces easier creation process based on plan cache entries (sp_create_plan_guide_from_cache) Full DML support INSERT, DELETE, UPDATE supported New function sys.fn_validate_plan_guide introduced to validate existing SQL 2005 plan guides

6 Optimize for Ad hoc Workloads Option Pain Points Single use ad hoc batches can flood the procedure cache Using Forced Parameterization option for such scenarios can result in adverse side-effects SQL Server 2008 New ‘optimize for ad hoc workloads’ server option Set using sp_configure, or SQL Server Management Studio Stores stub for adhoc compiled plan after first execution, replaces with actual query plan if the query is re-executed Improves efficiency of plan cache

7 Resource Governor SQL Server 2008 RG is designed for workload balance in database engine Configurable at connection level; Online change of group/pool allowed Definition of group/pool transparent to application Users can control server level setting (MAXDOP) at workgroup level Prevent run-away queries SQL Server Min Memory 10% Max Memory 20% Max CPU 20% Min Memory 10% Max Memory 20% Max CPU 20% Admin Workload Backup Admin Tasks OLTP Workload OLTP Activity Report Workload Ad-hoc Reports Executive Reports High Max CPU 90% Application Pool Admin Pool Connections Classifier Function

8 Logging Enhancements SQL Server 2008 INSERT into table supports minimal logging 3X-5X Performance Boost over fully logged INSERT Run Time

9 Sparse Column Storage IDColumnValue 1Q1C 1Q21 1Q109 2Q1B 2Q34 2Q5Low 3Q1C 3Q76 3Q85 PKQ1Q2Q3Q4Q5Q6Q7Q8Q9Q10 1C19 2B4Low 3C65 415 5EHig h Blu e 6C89 757 8A2Red 9A36 Desired schema Typical Solution The problem Need to store sparse data Possibly 100’s of columns Typically only few % are populated

10 Sparse Columns “Sparse” as a storage attribute on a column 0 bytes for a NULL, 4 byte overhead for non-NULL No change in Query/DML behavior Same limitations as normal tables eg 1024 columns Wide Table / defining a “Sparse Column Set ” Column set columns can still be individually specified in SQL statements Select * returns all non-sparse-columns + sparse column set as XML 30,000 sparse columns allowed in a table (2Gb), 1000 indexes // Sparse as a storage attibute in Create/Alter table statements Create Table Products(Id int, Type nvarchar(16)…, Resolution int SPARSE, ZoomLength int SPARSE); // Create a sparse column set Create Table Products(Id int, Type nvarchar(16)…, Resolution int SPARSE, ZoomLength int SPARSE, Properties XML COLUMN_SET FOR ALL_SPARSE_COLUMNS); // Sparse as a storage attibute in Create/Alter table statements Create Table Products(Id int, Type nvarchar(16)…, Resolution int SPARSE, ZoomLength int SPARSE); // Create a sparse column set Create Table Products(Id int, Type nvarchar(16)…, Resolution int SPARSE, ZoomLength int SPARSE, Properties XML COLUMN_SET FOR ALL_SPARSE_COLUMNS);

11 Filtered Indexes Filtered Indexes and Statistics Indexing a portion of the data in a table Filtered/co-related statistics creation and usage Query/DML Optimization to use Filtered indexes and Statistics Restricted to non-clustered indexes Benefits Lower storage and maintenance costs for large number of indexes Query/DML Performance Benefits: IO only for qualifying rows // Create a Filtered Indexes Create Index ZoomIdx on Products(ZoomLength) where Type = ‘Camera’; // Optimizer will pick the filtered index when query predicates match Select ProductId, Type, Resolution, ZoomLength where Type = ‘Camera’’

12 HierarchyID Key properties Logically encodes the path from the root of the tree to a node Rich built-in methods for manipulating hierarchies Simplifies storage and querying of hierarchical data Comparison a<b is in depth-first order Support for arbitrary insertions and deletions Potential Applications Forum and mailing list threads Business organization charts Content management categories Product categories Files/folders management / /1/ /1/1/ /1/1/1/ /1/1/2/ /1/2/ /2//3/ /3/1//3/2/

13 Storage and retrieval of spatial data using standard SQL syntax – New Spatial Data Types (geometry, geography) – New Spatial Methods (intersects, buffer, etc.) – New Spatial Indexes Offers full set of Open Geospatial Consortium components (OGC/SQL MM, ISO 19125) Integration with Virtual Earth

14 Storage Attribute on VARBINARY(MAX) Works with integrated FTS Unstructured data stored directly in the file system (requires NTFS) Dual Programming Model TSQL (Same as SQL BLOB) Win32 Streaming APIs with T-SQL transactional semantics Data Consistency Integrated Manageability Back Up / Restore Administration Size limit is the file system volume size SQL Server Security Stack Store BLOBs in DB + File System ApplicationApplication BLOB DB

15 TRUSTED, SCALABLE PLATFORM IT & DEVELOPER EFFICIENCY MANAGED SELF-SERVICE BI Data Warehouse Edition Master Data Services Stream Insight PowerPivot / SharePoint 2010 Report Builder 3.0 Data Tier Applications

16 Master Data Management CRM HR Doc ERPAsset Mgmt Purchasing DB

17 Relational Database Applications Financial trading Applications Stream Insight Scenarios for Event Processing Aggregate Data Rate (Events/sec.) Latency 010100100010000100000~1million Months Days hours Minutes Seconds 100 ms < 1ms Operational Analytics Applications, e.g., Logistics, etc. Manufacturing Applications Monitoring Applications CEP Target Scenarios Data Warehousing Applications Web Analytics Applications

18 Stream Insight 18 Complex Event Processing (CEP) is the continuous and incremental processing of event streams from multiple sources based on declarativequery and pattern specifications with near-zero latency. Database ApplicationsEvent-driven Applications Query Paradigm Ad-hoc queries or requests Continuous standing queries LatencySeconds, hours, daysMilliseconds or less Data RateHundreds of events/secTens of thousands of events/sec or more request response Event output stream input stream

19 StreamInsight

20 Increasing Availability

21

22 Additional SQL Server 2008 R2 report features o Mapping support o Report Builder 3.0 o Report Parts o Export to data feed

23

24

25

26 Summary  SQL Server 2008 has many features designed specifically for ISV workloads; zero or minimal application change required  There are literally 100s of new and improved features – this session only highlights some of the ones most popular with ISVs  Understanding what problem each feature resolves as well as it’s performance, insights and limitations helps more appropriate usage


Download ppt "ISV Proposition Keith Burns Data Architect Microsoft UK"

Similar presentations


Ads by Google