Presentation is loading. Please wait.

Presentation is loading. Please wait.

14 Features in SQL Server 2014 You Haven’t Considered

Similar presentations


Presentation on theme: "14 Features in SQL Server 2014 You Haven’t Considered"— Presentation transcript:

1 14 Features in SQL Server 2014 You Haven’t Considered
Tony Milne

2 About Tony Milne; Go Living in Columbus, Ohio for 14 years Father of 2 Big Fan of The Ohio State Buckeyes Treasurer and Board Member of Dog Food Conference Director, Applications Development at

3 SSIS SSRS Replication Who here recycles? Great…well so does Microsoft.
By that, I mean, in SQL 2014 Microsoft did not make any real changes to SSIS….Replication…..or SSRS

4 SO What Has Changed? QUESTION: What has changed?

5 A Bunch of Cool Stuff in the Engine

6 …and 1 Thing in BI

7 Delayed Durability (aka Lazy Commit)
ACID Durability -> Axed How do you feel about data loss? Commits are asynchronous Durable when the log is flushed to disk Transaction Log Bottleneck? Turn this on Check for WRITELOG Waits Database level Transaction Level ACID -As you know stands for atomicity, consistency, isolation, and durability. -Guarantees database transactions are processed reliably. Atomicity means that you can guarantee that all of a transaction happens, or none of it does; you can do complex operations as one single unit, all or nothing, and a crash, power failure, error, or anything else won't allow you to be in a state in which only some of the related changes have happened. Consistency means that you guarantee that your data will be consistent; none of the constraints you have on related data will ever be violated. Isolation means that one transaction cannot read data from another transaction that is not yet completed. If two transactions are executing concurrently, each one will see the world as if they were executing sequentially, and if one needs to read data that is written by another, it will have to wait until the other is finished. Durability means that once a transaction is complete, it is guaranteed that all of the changes have been recorded to a durable medium (such as a hard disk), and the fact that the transaction has been completed is likewise recorded. How do you feel about data loss? -You better have a high tolerance for data loss. -To Quote Microsoft: “If you implement delayed durability on any of your tables, you should understand that certain circumstances can lead to data loss. If you cannot tolerate any data loss, you should not use delayed durability on your tables.” -There is no difference between an unexpected shutdown and an expected shutdown. Fully durable transaction commits are synchronous and report a commit as successful and return control to the client only after the log records for the transaction are written to disk. Delayed durable transaction commits are asynchronous and report a commit as successful before the log records for the transaction are written to disk. The transaction is durable once the log is flushed to disk.

8 Clustered Columnstore Indexes
Improve Data Compression and Query Performance Bulk Loads Read-only queries All of the data is compressed Updatable Great for Fact Tables No need to go to the table; all of the data is in the index Limitations Either the clustered index or other indexes, not both No unique, PK, or FKs on table SQL Server 2014 adds support for updateable clustered columnstore index. With SQL Server 2014, the clustered columnstore index can be used in place of a traditional rowstore clustered index. The clustered columnstore index permits data modifications and bulk load operations.

9 Windows Azure Deployment Wizard
Host instance of SQL Server in a Windows Azure Virtual Machine Full database backup operation Copies the complete schema and data Takes care of Azure VM configuration; no manual pre-config needed Keep in mind Cloud Services, VM location, and Data Disk Storage Service MUST be in same geo

10 Cardinality Feature After 15 years of same old CE, it was time for an update What makes a better query plan? Lower latency Fewer read pages Check out for this blog post for some of the gritty details improved-cardinality-estimator-in-sql-server-2014.aspx Let’s check out the difference… The cardinality estimation logic, called the cardinality estimator, is re-designed in SQL Server 2014 to improve the quality of query plans, and therefore to improve query performance. The new cardinality estimator incorporates assumptions and algorithms that work well on modern OLTP and data warehousing workloads. It is based on in-depth cardinality estimation research on modern workloads, and our learnings over the past 15 years of improving the SQL Server cardinality estimator. Feedback from customers shows that while most queries will benefit from the change or remain unchanged, a small number might show regressions compared to the previous cardinality estimator.

11

12 Buffer Pool Extension Goal: Improve I/O efficiency
Seamless integration of buffer pool with SSD Great for those of us with less memory than data Also great for virtual environments where memory is a premium The Buffer Pool Extension provides the seamless integration of solid-state drives (SSD) as a nonvolatile random access memory (NvRAM) extension to the Database Engine buffer pool to significantly improve I/O throughput. Goal: Improve I/O efficiency Seamless integration of buffer pool with SSD. In some environments, more SSD is easier and cheaper to acquire than memory. Great for those of us with less memory than data Also great for virtual environments where memory is a premium

13 Resource Governor Limit Incoming Application Request Two parameters
CPU Memory Physical I/O I/O level isolation between multiple workloads I/O level predictability Two parameters MIN_IOPS_PER_VOLUME MAX_IOPS_PER_VOLUME DMV changes for monitoring Add columns to Sys.dm_resource_governor_resource_pools Sys.dm_resource_governor_configuration NEW Sys.dm_resource_governor_resource_pool_volumes New XEvents 6 New performance counters Previously, resource governors were allowed at the CPU and memory level. Now, we can do the same at the physical I/O level to provide a comprehensive resource governance solution for installations running multiple workloads on a single SQL instance. Two new parameters in CREATE/ALTER RESOURCE GOVERNOR for I/O per second. MIN_IOPS_PER_VOLUME MAX_IOPS_PER_VOLUME DMV changes Sys.dm_resource_governor_resource_pools Sys.dm_resource_governor_configuration Sys.dm_resource_governor_resource_pool_volumes New extended events 6 New performance counters

14 Backup and Restore SQL Server Backup to URL
Can now use SSMS not just T/SQL, PowerShell, or SMO SQL Server Managed Backup to Windows Azure Built on SQL Server Backup to URL Service manage and schedule database and log backups Database or instance level Available for on-prem or Windows Azure VMs Backup Encryption AES 128, AES 192, AES 256, and Triple DES SQL Server Backup to URL -Can now use SSMS not just T/SQL, PowerShell, or SMO to backup to or restore from Windows Azure Blob storage service. SQL Server Managed Backup to Windows Azure -Built on SQL Server Backup to URL -Service manage and schedule database and log backups -Database or instance level -Available for on-prem or Windows Azure VMs Backup Encryption - You can now choose to encrypt the backup file during a backup operation. It supports several encryption algorithms including AES 128, AES 192, AES 256, and Triple DES. You must use either a certificate or an asymmetric key to perform encryption during backup

15 Incremental Statistics
Previously, only sample method or full scan method Now Update statistics per partition incrementally No need to scan the entire, just update the affected partition Image having a table with billions and billions of records. Now, you can update the statistics on the affected partition and leave the read-only partitions alone. Those new statistics are gathered and merged with existing information to create the final statistic.

16 T SQL Enhancements Create CLUSTERED and NONCLUSTERED indexes on disk-based tables inline

17 T SQL Enhancements SELECT….INTO

18 AlwaysON Multiple secondary replicas Active secondary replicas
Bumped up from 4 to 8 Active secondary replicas Take the load of the primary, use it for backups Read workloads continue even if the primary fails Integrate with Windows Azure IaaS On-prem to Azure Reporting abuse in the cloud Additional diagnostics Columns added to DMVs New functions available 6:00 min Enhanced Availability for Read-Only Replicas One of the advantages of AlwaysOn Availability Groups is that the secondary replicas can be used for reporting and backup. With SQL Server 2014, the availability of secondary replicas has been enhanced to allow read workloads to continue to run even in the case of lengthy network failures or the loss of quorum for the Windows Server Failover Cluster. Increased Number of Replicas Another important enhancement in SQL Server 2014 is the increased maximum number of secondaries. SQL Server 2012 supported a maximum of four secondary replicas. With SQL Server 2014, AlwaysOn Availability Groups now supports up to eight secondary replicas. The additional secondary replicas can be used to distribute read workloads and provide enhanced recoverability. Integration with Windows Azure SQL Server 2014 AlwaysOn Availability Groups use Windows Azure in a couple of different ways. On-premises SQL Server instances can use the new Windows Azure configuration options in the AlwaysOn Availability Group wizard to create one or more asynchronous secondary replicas on Windows Azure Infrastructure as a Service (IaaS) services. This enables you to manually fail over to a SQL Server instance running on Windows Azure. As with a typical secondary replica, Windows Azure replicas can be used to offload reporting workloads and to perform backups. In addition, you can also use SQL Server 2014 AlwaysOn Availability Groups to provide high availability for SQL Server databases hosted in Windows Azure. SQL Server 2014 instances running on Windows Azure IaaS Services can configure a synchronous secondary replica in Azure for automatic failover in case of server or VM failure. Enhanced Diagnostics SQL Server 2014 AlwaysOn Availability Groups diagnostic and troubleshooting message display has been improved to offer more specific information. Additional columns have also been made more discoverable in the AlwaysOn Dashboard.

19 SQL Server Data Files in Azure
Keep that engine the garage; put the storage in the cloud Using Windows Azure Blob storage, of course Why? Migrations Storage High Availability Security Easy and fast migration benefits: This feature simplifies the migration process by moving one database at a time between machines in on-premises as well as between on-premises and cloud environments without any application changes. Therefore, it supports an incremental migration while maintaining your existing on-premises infrastructure in place. In addition, having access to a centralized data storage simplifies the application logic when an application needs to run in multiple locations in an on-premises environment. In some cases, you may need to rapidly setup computer centers in geographically dispersed locations, which gather data from many different sources. By using this new enhancement, instead of moving data from one location to another, you can store many databases as Windows Azure blobs, and then run Transact-SQL scripts to create databases on the local machines or virtual machines. Cost and limitless storage benefits: This feature enables you to have limitless off-site storage in Windows Azure while leveraging on-premises compute resources. When you use Windows Azure as a storage location, you can easily focus on the application logic without the overhead of hardware management. If you lose a computation node on-premises, you can set up a new one without any data movement. High availability and disaster recovery benefits: Using SQL Server Data Files in Windows Azure feature might simplify the high availability and disaster recovery solutions. For example, if a virtual machine in Windows Azure or an instance of SQL Server crashes, you can re-create your databases in a new machine by just re-establishing links to Windows Azure Blobs. Security benefits: This new enhancement allows you to separate a compute instance from a storage instance. You can have a fully encrypted database with decryption only occurring on compute instance but not in a storage instance. In other words, using this new enhancement, you can encrypt all data in public cloud using Transparent Data Encryption (TDE) certificates, which are physically separated from the data. The TDE keys can be stored in the master database, which is stored locally in your physically secure on-premises machine and backed up locally. You can use these local keys to encrypt the data, which resides in Windows Azure Storage. If your cloud storage account credentials are stolen, your data still stays secure as the TDE certificates always reside in on-premises.

20 Memory-Optimized Tables
In-Memory OLTP Optimized for OLTP, Memory Data Access Fully Transactional and Durable No, this is not DBCC PINTABLE That was depreciated These Tables Don’t use the Buffer Pool or B-tree Structure for Indexes Row Storage is Completely Different Uses Timestamps for Row Versions Prepare for 2x the Data for Memory Let’s keep it to 256GB (aka a dull roar) 5 – 20 times Performance Improvements Code example from:

21 First, I totally took this demo from MSDN.

22 Installation No more support for Windows Vista SysPrep
Bummer! SysPrep Previously limited to certain features Now, ALL features Failover cluster installation Repairing is still not supported Standard Edition max memory = 128 GB No more support for Windows Vista ….bummer….what are we going to do? Sysprep -We’ve been able to use sysprep for SQL Server installations going back to 2008 R2. However, only certain features were able to be installed using sysprep. -Now, we can use sysprep to install ALL features. Most notably, failover cluster installation is now supported. -Repairing an instance is still not supported in sysprep In SQL 2012, the max memory for Standard Edition was 64 GB. Now, in SQL 2014 Standard Edition max memory 128 GB. This is good news!

23 Analysis Services and BI
Native support Power View Reports against Multidimensional Models DAX queries Released in SQL Server 2012 SP1 Now available in SQL Server 2014 Take advantage of OLAP cubes Tables Matrices Bubble charts Geo maps Power View Reports against Multidimensional Models This was available in 2012 SP 1 CU 4 but is now included with 2014.

24 Multidimensional to Tabular Object Mapping
Multidimensional Object Tabular Object Cube Model Cube Dimension Table Dimension Attributes (Key(s), Name) Column Measure Group Measure Measure without Measure Group In a table named Measures Measure Group Cube Dimension Relationship Relationship Perspective KPI User/Parent-Child Hierarchies Hierarchy Display Folder

25 Thank you!

26 References https://msdn.microsoft.com/en-us/library/bb500435.aspx
STUFF(‘copiousfreetime’, 1, 15, ‘hoursofcontent’) bad-tsql-breakfast/ availability-groups improved-cardinality-estimator-in-sql-server-2014.aspx


Download ppt "14 Features in SQL Server 2014 You Haven’t Considered"

Similar presentations


Ads by Google