SQL Server “In-Memory”

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.
2 Proprietary & Confidential What is Sharding Benefits of Sharding Alternatives of Sharding When to start Sharding Agenda.
Big Data Working with Terabytes in SQL Server Andrew Novick
6 SQL Server Integration Same manageability, administration & development experience Integrated queries & transactions Integrated HA and backup/restore.
1. Aim High with Oracle Real World Performance Andrew Holdsworth Director Real World Performance Group Server Technologies.
Meanwhile RAM cost continues to drop Moore’s Law on total CPU processing power holds but in parallel processing… CPU clock rate stalled… Because.
Selecting and Implementing An Embedded Database System Presented by Jeff Webb March 2005 Article written by Michael Olson IEEE Software, 2000.
Overview of a Database Management System
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
MySQL. Dept. of Computing Science, University of Aberdeen2 In this lecture you will learn The main subsystems in MySQL architecture The different storage.
Architecture Rajesh. Components of Database Engine.
IN-MEMORY OLTP By Manohar Punna SQL Server Geeks – Regional Mentor, Hyderabad Blogger, Speaker.
Ἑ κατόν 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.
SQL School is strongly committed to provide COMPLETE PRACTICAL REALTIME Trainings on SQL Server Technologies – Dev, SQL DBA, MSBI (SSIS, SSAS, SSRS) and.
Module 6: Data Protection. Overview What does Data Protection include? Protecting data from unauthorized users and authorized users who are trying to.
MySQL Gubbins Richard Sinclair HepSysMan – 11/05/2012.
Martin Cairney Hybrid data platform – making the most of Azure plus your on- prem kit DAT341 B.
Unit-8 Introduction Of MySql. Types of table in PHP MySQL supports various of table types or storage engines to allow you to optimize your database. The.
October 15-18, 2013 Charlotte, NC Accelerating Database Performance Using Compression Joseph D’Antoni, Solutions Architect Anexinet.
Doing fast! Optimizing Query performance with ColumnStore Indexes in SQL Server 2012 Margarita Naumova | SQL Master Academy.
Introducing Hekaton The next step in SQL Server OLTP performance Mladen Prajdić
Citrix 1Y0-201 MANAGING CITRIX XENDESKTOP 7.6 SOLUTIONS STUDY MATERIAL QUESTION ANSWER.
Memory-Optimized Tables Querying at the speed of light.
CPSC-310 Database Systems
Lesson Objectives Aims Key Words Paging, Segmentation, Virtual Memory
CS 540 Database Management Systems
In-Memory Capabilities
What Is a Latch? …and Why Do I Care? Eddie Wuerch, mcm
What Is a Latch? …and Why Do I Care? Eddie Wuerch, mcm
Lecture 16: Data Storage Wednesday, November 6, 2006.
UFC #1433 In-Memory tables 2014 vs 2016
Let Me Finish... Isolating Write Operations
CPSC-608 Database Systems
Windows Azure Migrating SQL Server Workloads
Isolation Levels Understanding Transaction Temper Tantrums
SQL Server 2014 In-Memory Overview
SQL Server “In-Memory”
Lecture 11: DMBS Internals
Let Me Finish... Isolating Write Operations
Let Me Finish... Isolating Write Operations
Database Administration for the Non-DBA
Migrating a Disk-based Table to a Memory-optimized one in SQL Server
Please support our sponsors
Introduction to Database Management System
In-Memory OLTP (IMOLTP) What Can It Do For Me?
SQL 2014 In-Memory OLTP What, Why, and How
What Is a Latch? …and Why Do I Care? Eddie Wuerch, mcm
Azure SQL DWH: Tips and Tricks for developers
Computer-System Architecture
Turbo-Charged Transaction Logs
In Memory OLTP Not Just for OLTP.
Understanding Transaction Isolation Levels
In-Memory OLTP for Database Developers
Please support our sponsors
Stretch Database - Historical data storage in SQL Server 2016
Let Me Finish... Isolating Write Operations
It’s TEMPDB Why Should You Care?
Unleashing Stretched Databases
Let Me Finish... Isolating Write Operations
Prepared by Jaroslav makovski
Transactions and Concurrency
MS AZURE By Sauras Pandey.
In Memory OLTP Not Just for OLTP.
Isolation Levels Understanding Transaction Temper Tantrums
INTRODUCTION A Database system is basically a computer based record keeping system. The collection of data, usually referred to as the database, contains.
DR and HA 101. What those letters mean & why they’re important to almost every business.
Hybrid Buffer Pool The Good, the Bad and the Ugly
The Database World of Azure
Presentation transcript:

SQL Server “In-Memory” Faster Daddy, make it go faster!!! Presented by Pat Phelan @YetAnotherSQL on Twitter, or Pat@YetAnotherSQL.com

SQL Server “In-Memory” Introduction This presentation was created for a specific question, at a specific PASS Local Group meeting. I’ve taken the liberty of making it more general purpose in the hope of being able to re-present it later! The specific question was “How do you use SQL Server In-Memory databases?” The format for this presentation will be: Basics – What slows SQL Server down Details – Why does SQL Server slow down, how to you speed it back up Questions and Answers

Fire: A diversion to make a point We usually understand and use fire safely Fire can be a great tool Fire can help us make great food Fire can help us stay warm Risks, benefits, understanding

We need to pay attention to fire Fire can get out of hand We must pay attention to safety You must understand your fire Know what is fuel Know the oxidizer source(s) Know the heat

If we don’t know what we’re doing Fighting fire you don’t understand is DANGEROUS! Using the wrong techniques can cause serious damage. Fire can get out of control Fire can hurt us Fire can ruin dinner!!!

SQL Server Speed Issues Latches Locks Blocks This kind of touches on Deadlocks I/O

SQL Server Speed Issues - Latches Latches ensure memory consistency Very short duration Only held within engine Latches released before control leaves engine Each latch only protects one page of RAM GAM and SGAM latches

SQL Server Speed Issues - Locks Locks ensure logical transaction consistency Usually user or application defined Locks can be row, table, or database level Locks can be held until spid or SQL Server restarts!!!

SQL Server Speed Issues - Blocks One process has a latch or lock that another process needs Usually fixed by code change (application developer) Usually fixed by timers Manually fixed by Administrator “Killing” blocking process

SQL Server Deadlocks Process 1 locks object A Process 2 locks object B Other “stuff” might happen here Process 2 locks object B Process 1 attempts to lock object B, causing block Process 2 attempts to lock object A, causing deadlock A process (usually A or B) will die

SQL Server Speed Issues – I/O Page (usually extent) I/O Write Read Usually fixed by faster storage media Hybrid disk Like memory cache Front end existing storage with faster storage Flash disk RAM disk

SQL Server “In-Memory” Tables Code-named Hekaton First public discussion at PASS Summit 2012 From the Greek “Heca-” prefix meaning hundreds “-ton” suffix meaning engine or tool Hekaton’s goal is to allow up to 100 times “standard speed” Compatible applications usually see 10-20 times improvement with no code changes.

SQL Server “In-Memory” Hekaton: Is it another database engine I see Hekaton as a separate database engine used by SQL Server Microsoft considers Hekaton to be part of SQL Server Microsoft also considers Columnstore to be part of the SQL Data Engine

SQL Server “In-Memory” design goals Completely new design Bw-Tree Bw-Trees need an hour on its own! Optimized for In-Memory use Writes are buffered to disk to preserve ACID compliance Latch free design Minimal or no locking MVCC (Multi-Version Concurrency Control) Readers and writers never block each other! Optimistic concurrency used by the engine

“In-Memory” Application Migration Commercial applications designed for In-Memory User developed applications designed for In-Memory Applications using only Microsoft libraries for databases Applications where you have source code

In-Memory” Unsupported DDL Datetimeoffset Geography Geometry Heirarchyid Rowversion XML SQL_Variant Any user defined data type

“In-Memory” Unsupported DDL LOBs Text, BLOB, NTEXT VARCHAR(max), NVARCHAR(max) supported in SQL 2016 and later IDENTITY(1, 1) supported, but there are some restrictions Foreign Keys Check Constraints No schema changes Removing or changing index requires droping tables Some ALTER TABLE and sp_rename allowed in SQL 2016+, none in 2014

“In-Memory” Unsupported DML Data Compression Replication is limited Linked Servers MERGE FROM (source is supported) Unsupported Features (may work, but no support) MS-DTC PBM (Policy Based Management) MERGE INTO Triggers

“In-Memory” and “In Cloud” Azure https://docs.microsoft.com/en-us/azure/sql-database/sql-database-in- memory Amazon AWS https://aws.amazon.com/marketplace/pp/B01MXE3UZX Google Compute I can’t find a public web reference, but I know at least one case exists Private cloud providers

SQL Server “In-Memory” databases SSD offers “in Flash Memory” databases Pure Storage SIOS HPE Nimble (again part of HP) EMC Xtreme IO NetApp

SQL Server “In-Memory” databases Actual RAM Disk products MS-DOS and PC-DOS offered the VDISK.SYS device driver Imdisk Open Source, Free No option to buy support, use at your own risk! http://www.ltr-data.se/opencode.html/ DataRAM 4 GB limit Personal version is free Primo RAMDisk is $30 for two licenses (as of 2017-10-18) http://memory.dataram.com/products-and-services/software/ramdisk

Questions and Answers The only “dumb” questions are the ones that you don’t ask. In-Memory brings a whole different paradigm, you need to re-think!

SQL Server “In-Memory” Pat is a Database Architect and Mentor at Involta, LLC. SQL Saturday Iowa 2018 Iowa City, IA 23 June 2018 Pat Phelan Email: Pat@YetAnotherSQL.com Twitter: @YetAnotherSQL