In-Memory OLTP (IMOLTP) What Can It Do For Me?

Slides:



Advertisements
Similar presentations
new database engine component fully integrated into SQL Server 2014 optimized for OLTP workloads accessing memory resident data achive improvements.
Advertisements

| Basel SQL Server 2014: In- Memory OLTP Stéphane Haby - Stéphane Savorgnano Consultant dbi services.
Meanwhile RAM cost continues to drop Moore’s Law on total CPU processing power holds but in parallel processing… CPU clock rate stalled… Because.
1099 Why Use InterBase? Bill Todd The Database Group, Inc.
Replication Magic: Initializing From Backup Robert L Davis.
IN-MEMORY OLTP By Manohar Punna SQL Server Geeks – Regional Mentor, Hyderabad Blogger, Speaker.
Understanding Logging & Recovery What Programmers Always Avoid Until it’s too Late! Kimberly L. Tripp Principal Mentor, Solid Quality Learning at
Ἑ κατόν by Niko Neugebauer. Niko Neugebauer PASS EvangelistPASS Evangelist SQL Server MVPSQL Server MVP SQLPort ( founder & leaderSQLPort.
SQL Server 2005 Engine Optimistic Concurrency Tony Rogerson, SQL Server MVP Independent Consultant 26 th.
SQLintersection Understanding Transaction Isolation Levels Randy Knight Wednesday, 3:45-5:00.
October 15-18, 2013 Charlotte, NC Accelerating Database Performance Using Compression Joseph D’Antoni, Solutions Architect Anexinet.
In-Memory OLTP The faster is now simpler in SQL Server 2016.
Vedran Kesegić. About me  M.Sc., FER, Zagreb  HRPro d.o.o. Before: Vipnet, FER  13+ years with SQL Server (since SQL 2000)  Microsoft Certified.
Does the Optimistic Concurrency resolve your blocking problems Margarita Naumova, SQL Master Academy.
A Lap Around Columstore Martin Catherall SQL Saturday #464, Melbourne 20 th February 2016.
Session Name Pelin ATICI SQL Premier Field Engineer.
SQLintersection Locks, Blocks, and Deadlocks Oh My! Randy Knight Wednesday, 2:15-3:15.
Introducing Hekaton The next step in SQL Server OLTP performance Mladen Prajdić
Use Cases for In-Memory OLTP Warner Chaves SQL MCM / MVP SQLTurbo.com Pythian.com.
SQL Saturday #509 | Brisbane 2016 #509 | Brisbane 2016 Martin Catherall Moving from Profiler to Extended Events.
Memory-Optimized Tables Querying at the speed of light.
Standard/Express edition
In-Memory Capabilities
On-premise database. Files in the cloud.
Data Platform and Analytics Foundational Training
Temporal Databases Microsoft SQL Server 2016
SQL Server In-Memory OLTP: What Every SQL Professional Should Know
UFC #1433 In-Memory tables 2014 vs 2016
A Technical Overview of Microsoft® SQL Server™ 2005 High Availability Beta 2 Matthew Stephen IT Pro Evangelist (SQL Server)
Taking your application to memory
Isolation Levels Understanding Transaction Temper Tantrums
SQL Server 2014 In-Memory Overview
මොඩියුල විශ්ලේෂණය Buffer Pool Extension භාවිතය.
Transactional Replication A Deeper Dive Drew Furgiuele, Senior DBA IGS
Working with Very Large Tables Like a Pro in SQL Server 2014
Introducing the SQL Server 2016 Query Store
Microsoft Azure Fundamentals: Data Understanding Microsoft Azure SQL
The Vocabulary of Performance Tuning
Taking your application to memory
Please support our sponsors
The Vocabulary of Performance Tuning
SQL 2014 In-Memory OLTP What, Why, and How
Overview of Security Investments
<Enter course name here>
What’s new in SQL Server 2016 Availability Groups
Migrating your SQL Server Instance
Batches, Transactions, & Errors
Introducing the SQL Server 2016 Query Store
Optimistic Concurrency Internals
Entity Framework from a database perspective
In Memory OLTP Not Just for OLTP.
The PROCESS of Queries John Deardurff Website: ThatAwesomeTrainer.com
Understanding Transaction Isolation Levels
Statistics for beginners – In-Memory OLTP
In-Memory OLTP for Database Developers
Stretch Database - Historical data storage in SQL Server 2016
It’s TEMPDB Why Should You Care?
The Vocabulary of Performance Tuning
Hidden Gems of SQL Server 2014
Go, go Query Store! Gail Shaw.
Microsoft Azure for SQL Server Professionals
A Beginners Guide to Transactions
A Beginners Guide to Transactions
A Beginners Guide to Transactions
Why Should I Care About … Partitioned Views?
Isolation Levels Understanding Transaction Temper Tantrums
The Vocabulary of Performance Tuning
A Beginners Guide to Transactions
Module 13: Creating Highly Concurrent SQL Server 2012 Applications
Working with Very Large Tables Like a Pro in SQL Server 2017
Presentation transcript:

In-Memory OLTP (IMOLTP) What Can It Do For Me? Martin Catherall Regional Mentor (APAC) MVP – Data Platform

Martin Catherall Senior Consultant RockSolid SQL UXC Eclipse MVP – Microsoft Data Platform PASS Regional Mentor APAC Give overview and introduction on this slide.

In-Memory OLTP – What Can It Do For Me. Introduction

SQL Server Change Compression (Row or Page) Extended Events (2008) Transparent Data Encryption (2008) AlwaysOn (2012) Columnstore (2012) In-Memory (2014) Discussion about change, adoption of new feature, agile development within SQL Server. Not mentioned 2016 features. New features have not only brought new terminology for new features but new terminology for old features.

IMOLTP - History Brought out SQL Server 2014 Enhanced SQL Server 2016 Reasonable use cases (many limitations) Enhanced SQL Server 2016 Less limitations Increased functionality Available in Azure SQL Database Not much changed needed (in a lot of cases) Discussion about change, adoption of new feature, agile development within SQL Server. Not mentioned 2016 features. New features have not only brought new terminology for new features but new terminology for old features.

Some Thoughts SQL Server Thrives with Memory As much as possible. But my database already fits into memory. Yes – but that’s still ‘disk based’ Pay attention to your data growth. This will dictate your (growing) memory requirements. We’ll still need memory for Normal SQL Server The Operating System.

Some (More) Thoughts Low Latency (nanoseconds v milliseconds) High Concurrency (Pessimistic / Optimistic) New concurrency model. Multi Version Concurrency Control (MVCC) Low Contention. Durability (The “D” in ACID) Can use to solve existing problems. Although not all (Test! Test! Test!)

In-Memory OLTP – What Can It Do For Me. Enabling in-memory

How to enable In-Memory Enabled at the database level. Simply Add a new filegroup Use familiar syntax. (ALTER DATABASE) Add an In-Memory Container. This is a folder on the file system. Use familiar syntax (ALTER DATABASE)

The IMOLTP filegroup Basically a directory on the file system. Which might get used! Only one IMOLTP filegroup allowed. Need for durability. So can data can be ‘recreated’ at startup. High Availability. Logging is slightly different The Checkpoint Worker thread.

Enabling In-Memory for the database. Demonstration Enabling In-Memory for the database.

Multi-Version Concurrency Control MVCC In-Memory OLTP – What Can It Do For Me. Multi-Version Concurrency Control MVCC

MVCC – A New Concurrency Model Data is immutable. Insert only. Isolation Modes SNAPSHOT – the default Read Committed Serializable.

MVCC – Records Append ONLY In flight Record Committed Record Begin TimeStamp Transaction ID Begin TimeStamp End TimeStamp

In-Memory OLTP – What Can It Do For Me. Creating Tables

Creating Tables Much the same as “Disk Based Tables” There are limitations. These are reducing Durable or Non-Durable Migration. (memory optimization Advisor)

Memory Optimization Advisor Demonstration Memory Optimization Advisor

Natively Compiled Objects Slight Different Syntax But very similar.

Accessing data In-Memory OLTP – What Can It Do For Me. TSQL or Natively Compiled Stored Procedures?

Converting Code Converting Code can be Challenging! Subquery support in SELECT statements in SQL2016 Unfortunately, not yet in update/delete. CASE – would be great to see For example workarounds see. https://msdn.microsoft.com/en-us/library/dn629453.aspx https://msdn.microsoft.com/en-us/library/mt757375.aspx https://msdn.microsoft.com/en-us/library/dn579376.aspx https://msdn.microsoft.com/en-us/library/dn579375.aspx Feel free to share any of yours  See also

In-Memory OLTP – What Can It Do For Me. Monitoring in-memory

Temp table replacement In-Memory OLTP – What Can It Do For Me. Temp table replacement

In-Memory OLTP – What Can It Do For Me. Backup AND Restore

Resources. http://bit.ly/1bSsY7o (Bob Beauchemin) http://bit.ly/2eqBrYE (Cheap Ram Changes) http://bit.ly/1bSsY7o (Bob Beauchemin) http://bit.ly/2efItmt (SQL Team - 2014) http://bit.ly/1lspXr5 (unsupported constructs - MSDN) http://bit.ly/2dMZukL (Migration - MSDN) http://bit.ly/2cSWRNP (Temp Object Replacement) http://bit.ly/2e6l8WE (2016 White paper – download) http://bit.ly/2dmfjmb (free ebook (2014) - download)

Don’t Forget Online Evaluations Submit for raffles by 3:30PM www.sqlsaturday.com/572/sessions/sessionevaluation.aspx www.sqlsaturday.com/572/eventeval.aspx Submit for raffles by 3:30PM

QUESTIONS

Please Support Our Sponsors SQL Saturday is made possible with the generous support of these sponsors. You can support them by opting-in and visiting them in the sponsor area.