Date post: | 14-Jun-2015 |
Category: |
Technology |
Upload: | stuart-ainsworth |
View: | 149 times |
Download: | 5 times |
SQL Server 2014What’s new?
Purpose
High level overview of new featuresNOT a deep diveNOT a demo session
Where to learn more
About Me
● Manager of team of DBA’s for financial services company
● Former Data Architect, DBA, developer● Designed system that analyzes nearly 1
billion rows of data per day● AtlantaMDF Chapter Leader
Enhancements
In-Memory OLTPSubstantive change in database development
http://goo.gl/lirjxrAffects tables, stored procs, server design
Enterprise Edition only
Hekaton
Hekaton
Hekaton
In Memory Table-- create a durable (data will be persisted) memory-optimized table
-- two of the columns are indexed
CREATE TABLE dbo.ShoppingCart (
ShoppingCartId INT IDENTITY(1,1) PRIMARY KEY NONCLUSTERED,
UserId INT NOT NULL INDEX ix_UserId NONCLUSTERED HASH WITH
(BUCKET_COUNT=1000000) ,
CreatedDate DATETIME2 NOT NULL,
TotalPrice MONEY
) WITH (MEMORY_OPTIMIZED=ON)
GO
http://goo.gl/O8GNKt
In Memory Table/* create a non-durable table. Data will not be persisted, data loss if
the server turns off unexpectedly */
CREATE TABLE dbo.UserSession (
SessionId INT IDENTITY(1,1) PRIMARY KEY NONCLUSTERED HASH WITH
(BUCKET_COUNT=400000) ,
UserId INT,
INDEX ix_UserId NONCLUSTERED HASH (UserId) WITH (BUCKET_COUNT=400000)
)
WITH (MEMORY_OPTIMIZED=ON, DURABILITY=SCHEMA_ONLY)
http://goo.gl/MNfkwl
Hekaton
In Memory Table - DONT’s
Not all column types are supported (LOB’s)No IDENTITY() (use SEQUENCE)No ALTER TABLEIndex limitations
http://goo.gl/IwIMVR
Natively Compiled Stored Procedurecreate procedure dbo.OrderInsert(@OrdNo integer, @CustCode nvarchar(5))
with native_compilation, schemabinding, execute as owner
as
begin atomic with
(transaction isolation level = snapshot,
language = N'English')
declare @OrdDate datetime = getdate();
insert into dbo.Ord (OrdNo, CustCode, OrdDate) values (@OrdNo,
@CustCode, @OrdDate);
end
NCSP - DONT’s
No use of non-Hekaton tablesNo CURSORsNo CASE; use IF insteadNo OPEN…
http://goo.gl/IwIMVR
Server Design
256 GB “limitation” per databaseMore in-memory OLTP? Add more memory!Two Sockets for CPU64-Bit OSNo ALTER database to remove Hekatonhttp://goo.gl/4wzAxv
Hekaton - deep dive
Several presentations\blogshttp://goo.gl/B1bUPBhttp://goo.gl/VZmdA1http://goo.gl/zAIbxGhttp://goo.gl/00CCW6
SSD Buffer Pool Extension
Extend your existing buffer pool to SSDNOT Hekaton compatibleAvailable in Standard & Enterprise editions
http://goo.gl/FwA5GE
Backup & Restore Enhancements
Encryption! (Compression works)Backup to URLBackup to Windows Azure
Azure integration
SQL Server data files in Windows AzureSQL Server hosted in Azure VM
T-SQL enhancements
SELECT...INTO parallelismIncline creation of indexesCREATE TABLE dbo.SalesOrder
(
SalesOrderID INT IDENTITY(1,1),
CONSTRAINT PK_SalesOrder_SalesOrderID PRIMARY KEY CLUSTERED (SalesOrderID),
OrderNumber CHAR(8) NOT NULL,
-- [New] This will create a non-unique index on (OrderDate)
OrderDate DATE NOT NULL INDEX IX_SalesOrder_1 NONCLUSTERED
);
Business Intelligence
BIDS → SSDT-BIVisual Studio 2012/2013 compatiblePowerView for MultiDimensional Models ** introduced in SQL 2012 SP1
Is it worth the upgrade?
No real changes to licensingHekaton is compelling● SSMS 2014 has AMR tool● Determine if current application will benefitRequires investment in appropriate hardware
Is it worth the upgrade?
SSD Buffer Pool is compellingFor non-Hekaton applications, can boost speedRelatively easy to spin up
Integrates with Azure