SlideShare une entreprise Scribd logo
1  sur  28
Ravi Okade
Agenda
 Why do you need it ?
 How it is done
 Benefits
 Limitations
Why do you need a new
architecture ?
 In-Memory
 Memory is cheap
 Servers have HUGE memory
 Some data is hot
 Traditional page based architecture has
limitations, even when all pages are in memory
 Native Compilation, Lock-less architecture
 Individual cores are not getting any faster
 While number of cores is increasing, Parallel
processing has its limits due to lock contention
 You cannot scale linearly by adding more cores
Comparable Products and
Technologies
 Similar Products
 Oracle TimesTen
 Sybase ASE
 Other technologies with some similarities
 Distributed Cache
○ Oracle Coherence is one of many distributed
cache’s that support query language (CQL). It can
also persist to Oracle. Another example with
similar capabilities is Gigaspaces
 NoSQL Databases
○ Most NoSQL databases support distributed
querying and aggressively cache data (e.g.
MongoDB)
What it all means..
Use Cases
 Hot tables – frequent inserts and
updates, but queried heavily e.g:
 Stock Trading applications
 Patient Vital Stats
 Flight information (live)
 Transient data e.g.:
 Web Session data
 Stock Market data
 Need for High speed OLTP queries
In-memory Architecture
 Main Concepts
 In-memory
 Lock free (row versions)
 Native compiled stored procedures
 Data storage optimizations
 Memory optimized data structures
 Transaction log optimization (block writes, no undo)
 Data file Optimization (Sequential writes, Merging)
 Index optimization (Only in-memory, Not persisted to
disk, no tx logging)
 No TempDB
 Garbage collection optimization (huh?)
 Non-durable option (Not persisted to disk)
In Memory – Myths and
Realities
 Myth: In-Memory OLTP is the same as
DBCC PINTABLE
 Reality: In-Memory OLTP uses a completely
new design built from the ground up.
 Myth: If SQL Server crashes all data is
lost
 Reality: No – it is persisted to disk and is
fully recoverable.
SQL Server 2014 In-Memory
Architecture
SQL Server Integration
• Same manageability,
administration & development
experience
• Integrated queries &
transactions
• Integrated HA and
backup/restore
Main-Memory Optimized
• Optimized for in-memory data
• Indexes (hash and range) exist
only in memory
• No buffer pool, B-trees
• Stream-based storage
T-SQL Compiled to Machine
Code
• T-SQL compiled to machine
code via C code generator and
VC
• Invoking a procedure is just a
DLL entry-point
• Aggressive optimizations @
compile-time
High Concurrency
• Multi-version optimistic
concurrency control with full
ACID support
• Core engine uses lock-free
algorithms
• No lock manager, latches or
spinlocks
In-Memory integration with SQL
Server
Memory Management
 Table data resides in memory at all
times.
 No paging.
 Must configure SQL box with sufficient memory to store
memory-optimized tables. Max supported 512GB
 Failure to allocate memory will fail transactional workload at
run-time
In-Memory Data Structures
 Rows
 New row format
○ Structure of the row is optimized for in-memory
residency and access.
 One copy of row
○ Indexes point to rows, they do not duplicate them.
 Indexes
 Hash Index for equality search
 memory-optimized B-tree for range and equality
search (In CTP2)
 Do not exist on disk – recreated during recovery.
In Memory – Table DDL: Need
filestream filegroup
FILEGROUP [Hekaton_DB_hk_fs_fg]
CONTAINS MEMORY_OPTIMIZED_DATA
(NAME = [Hekaton_DB_hk_fs_dir],
FILENAME =
'C:Hekaton_testsqlservrdataHekaton_DB_hk_fs_dir')
Table creation internals
CREATE TABLE DDL
Code generation and
compilation
Table DLL produced
Table DLL loaded
Table Storage
 Filestream is the underlying storage
mechanism
 Data files
 Store inserted records
 Data written only upon Tx commit
 Delta files
 Store deleted records (updates are an
insert/delete pair)
Transaction Logging
 Uses SQL transaction log to store
content
 All logging is logical
 No log records for physical structure
modifications.
 No index-specific / index-maintenance log
records.
 No UNDO information is logged
Native Compiled Stored
Procedures
 Compiled to C language and compiled
into a dll using VC
 Optimized aggressively at compile time
 Can only access In-memory tables
 Not all T-SQL constructs and functions
supported
 No alter procedure – must drop and
recreate
Procedure Creation
CREATE PROC DDL
Query optimization
Code generation and compilation
Procedure DLL produced
Procedure DLL loaded
Using Row Versions for Lock
free architecture
 SQL Server 2014 In Memory DB has no
locks (period).
 Row versions are used to maintain
updates
 No TempDB
 Row Versions which are no longer
referenced are garbage collected.
 Supports Snapshot, Repeatable Read
and Serializable Isolation levels
Transaction Isolation Levels
 SNAPSHOT
 Reads are consistent as of start of the transaction
 Writes are always consistent
 REPEATABLE READ
 Read operations yield same row versions if
repeated at commit time
 SERIALIZABLE
 Transaction is executed as if there are no
concurrent transactions – all actions happen at a
single serialization point (commit time)
Garbage Collection
Benefits
 Uses Commodity Hardware
 Works seamlessly with current SQL Server objects
 Yes, it is still ACID compliant
 Yes, you can mix in-memory and disk based tables in
the same database
 Yes, your transactions can span in-memory and disk
based tables
 No, you cannot have partial in-memory tables
 Yes, it has to fit in-memory 100%, forever.
 Yes, you can limit how much memory is used by the
in-memory tables (think resource pools) (not in
CTP1)
 Yes, you can have high availability
Limitations
 Row Sizes can’t be larger than 8060 bytes (incl.
Variable Length Columns)
 LOB, XML Data Types are not supported
 No Foreign Key and Check Constraints
 No IDENTITY, SEQUENCE
 No DML Triggers
 No ALTER Table (Need to recreate table)
 No Add/Remove Index (Need to recreate table)
 No diff backups
 Indexes are rebuilt (consider startup time)
 Disk files are merged while being loaded
 Running out of memory
CTP1 Limitations
 No B-Tree index (used for range search)
 No Resource Pools
 No always on
Demo
 Performance against disk based table
 Performance with native sproc
 Number of Tx records written disk vs
memory
 Northwind example
 [TBD] Dealing with transactions
 [TBD] Performance of T-SQL/Interop
sprocs with In memory tables
 [TBD] Disk files and merging ?
 [TBD] Backup, Tx log backup; no diff
backups
More information
 Tech-ed SQL Server 2014 Videos
 Microsoft SQL Server In-Memory OLTP: Overview of Project “Hekaton”
 Microsoft SQL Server In-Memory OLTP Project “Hekaton”: App Dev Deep Dive
 Microsoft SQL Server In-Memory OLTP Project “Hekaton”: Management Deep Dive
 Microsoft SQL Server 2014 In-Memory OLTP: Overview
 SQL Server In-Memory OLTP: DB Developer Deep Dive
 SQL Server In-Memory OLTP: DBA Deep Dive
 SIGMOD 2013 article by Microsoft
 Hekaton Whitepaper by Kalen Delaney
 High-Performance Concurrency Control Mechanisms for Main-Memory
Databases, Microsoft Research
 SQL Server 2014 - MSDN Online Documentation
 Blog articles by Bob Beauchemin
 Getting Started with SQL Server 2014 In-Memory OLTP (SQL Server
Team blog)
 Additional links
 Oracle TimesTen FAQs
 SQL Server In Memory Set up and Demos (My Blog)

Contenu connexe

Tendances

Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machineheraflux
 
Powering GIS Application with PostgreSQL and Postgres Plus
Powering GIS Application with PostgreSQL and Postgres Plus Powering GIS Application with PostgreSQL and Postgres Plus
Powering GIS Application with PostgreSQL and Postgres Plus Ashnikbiz
 
The roadmap for sql server 2019
The roadmap for sql server 2019The roadmap for sql server 2019
The roadmap for sql server 2019Javier Villegas
 
Building diagnostic queries using DMVs and DMFs
Building diagnostic queries using DMVs and DMFs Building diagnostic queries using DMVs and DMFs
Building diagnostic queries using DMVs and DMFs Antonios Chatzipavlis
 
An introduction to SQL Server in-memory OLTP Engine
An introduction to SQL Server in-memory OLTP EngineAn introduction to SQL Server in-memory OLTP Engine
An introduction to SQL Server in-memory OLTP EngineKrishnakumar S
 
An introduction into Oracle VM V3.x
An introduction into Oracle VM V3.xAn introduction into Oracle VM V3.x
An introduction into Oracle VM V3.xMarco Gralike
 
Always on in sql server 2017
Always on in sql server 2017Always on in sql server 2017
Always on in sql server 2017Gianluca Hotz
 
Running E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database ApplianceRunning E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database ApplianceMaris Elsins
 
Technical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPASTechnical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPASAshnikbiz
 
SQL Server Modernization
SQL Server ModernizationSQL Server Modernization
SQL Server ModernizationGianluca Hotz
 
MySQL 5.6 Performance
MySQL 5.6 PerformanceMySQL 5.6 Performance
MySQL 5.6 PerformanceMYXPLAIN
 
KoprowskiT_Session2_SDNEvent_SourceControlForDBA
KoprowskiT_Session2_SDNEvent_SourceControlForDBAKoprowskiT_Session2_SDNEvent_SourceControlForDBA
KoprowskiT_Session2_SDNEvent_SourceControlForDBATobias Koprowski
 
The InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQLThe InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQLMorgan Tocker
 
KoprowskiT - SQLBITS X - 2am a disaster just began
KoprowskiT - SQLBITS X - 2am a disaster just beganKoprowskiT - SQLBITS X - 2am a disaster just began
KoprowskiT - SQLBITS X - 2am a disaster just beganTobias Koprowski
 
SQL Server 2019 CTP 2.5
SQL Server 2019 CTP 2.5SQL Server 2019 CTP 2.5
SQL Server 2019 CTP 2.5Gianluca Hotz
 
Product Update: EDB Postgres Platform 2017
Product Update: EDB Postgres Platform 2017Product Update: EDB Postgres Platform 2017
Product Update: EDB Postgres Platform 2017EDB
 
EDB Postgres DBA Best Practices
EDB Postgres DBA Best PracticesEDB Postgres DBA Best Practices
EDB Postgres DBA Best PracticesEDB
 
Le novità di sql server 2019
Le novità di sql server 2019Le novità di sql server 2019
Le novità di sql server 2019Gianluca Hotz
 
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John Naylor
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John NaylorPGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John Naylor
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John NaylorEqunix Business Solutions
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmurTobias Koprowski
 

Tendances (20)

Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machine
 
Powering GIS Application with PostgreSQL and Postgres Plus
Powering GIS Application with PostgreSQL and Postgres Plus Powering GIS Application with PostgreSQL and Postgres Plus
Powering GIS Application with PostgreSQL and Postgres Plus
 
The roadmap for sql server 2019
The roadmap for sql server 2019The roadmap for sql server 2019
The roadmap for sql server 2019
 
Building diagnostic queries using DMVs and DMFs
Building diagnostic queries using DMVs and DMFs Building diagnostic queries using DMVs and DMFs
Building diagnostic queries using DMVs and DMFs
 
An introduction to SQL Server in-memory OLTP Engine
An introduction to SQL Server in-memory OLTP EngineAn introduction to SQL Server in-memory OLTP Engine
An introduction to SQL Server in-memory OLTP Engine
 
An introduction into Oracle VM V3.x
An introduction into Oracle VM V3.xAn introduction into Oracle VM V3.x
An introduction into Oracle VM V3.x
 
Always on in sql server 2017
Always on in sql server 2017Always on in sql server 2017
Always on in sql server 2017
 
Running E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database ApplianceRunning E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database Appliance
 
Technical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPASTechnical Introduction to PostgreSQL and PPAS
Technical Introduction to PostgreSQL and PPAS
 
SQL Server Modernization
SQL Server ModernizationSQL Server Modernization
SQL Server Modernization
 
MySQL 5.6 Performance
MySQL 5.6 PerformanceMySQL 5.6 Performance
MySQL 5.6 Performance
 
KoprowskiT_Session2_SDNEvent_SourceControlForDBA
KoprowskiT_Session2_SDNEvent_SourceControlForDBAKoprowskiT_Session2_SDNEvent_SourceControlForDBA
KoprowskiT_Session2_SDNEvent_SourceControlForDBA
 
The InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQLThe InnoDB Storage Engine for MySQL
The InnoDB Storage Engine for MySQL
 
KoprowskiT - SQLBITS X - 2am a disaster just began
KoprowskiT - SQLBITS X - 2am a disaster just beganKoprowskiT - SQLBITS X - 2am a disaster just began
KoprowskiT - SQLBITS X - 2am a disaster just began
 
SQL Server 2019 CTP 2.5
SQL Server 2019 CTP 2.5SQL Server 2019 CTP 2.5
SQL Server 2019 CTP 2.5
 
Product Update: EDB Postgres Platform 2017
Product Update: EDB Postgres Platform 2017Product Update: EDB Postgres Platform 2017
Product Update: EDB Postgres Platform 2017
 
EDB Postgres DBA Best Practices
EDB Postgres DBA Best PracticesEDB Postgres DBA Best Practices
EDB Postgres DBA Best Practices
 
Le novità di sql server 2019
Le novità di sql server 2019Le novità di sql server 2019
Le novità di sql server 2019
 
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John Naylor
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John NaylorPGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John Naylor
PGConf.ASIA 2019 Bali - Upcoming Features in PostgreSQL 12 - John Naylor
 
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
44spotkaniePLSSUGWRO_CoNowegowKrainieChmur
 

En vedette

Microsoft SQL Server internals & architecture
Microsoft SQL Server internals & architectureMicrosoft SQL Server internals & architecture
Microsoft SQL Server internals & architectureKevin Kline
 
SQL Server 2014 Hybrid Cloud Features
SQL Server 2014 Hybrid Cloud FeaturesSQL Server 2014 Hybrid Cloud Features
SQL Server 2014 Hybrid Cloud FeaturesGuillermo Caicedo
 
TechEd 2011 | Microsoft SQL Server Private Cloud
TechEd 2011 | Microsoft SQL Server Private CloudTechEd 2011 | Microsoft SQL Server Private Cloud
TechEd 2011 | Microsoft SQL Server Private Cloudsqlserver1
 
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...Microsoft Private Cloud
 
Sql Server 2008 Security Enhanments
Sql Server 2008 Security EnhanmentsSql Server 2008 Security Enhanments
Sql Server 2008 Security EnhanmentsEduardo Castro
 
1 introduction
1   introduction1   introduction
1 introductionNgeam Soly
 
Chapter 2: Ms SQL Server
Chapter 2: Ms SQL ServerChapter 2: Ms SQL Server
Chapter 2: Ms SQL ServerNgeam Soly
 
The 5 Hidden Performance Gems of SQL Server 2014
The 5 Hidden Performance Gems of SQL Server 2014The 5 Hidden Performance Gems of SQL Server 2014
The 5 Hidden Performance Gems of SQL Server 2014Boris Hristov
 
Memory management in sql server
Memory management in sql serverMemory management in sql server
Memory management in sql serverPrashant Kumar
 
Top 5 TSQL Improvements in SQL Server 2014
Top 5 TSQL Improvements in SQL Server 2014Top 5 TSQL Improvements in SQL Server 2014
Top 5 TSQL Improvements in SQL Server 2014Boris Hristov
 
SQL Server 2014 New Features
SQL Server 2014 New FeaturesSQL Server 2014 New Features
SQL Server 2014 New FeaturesOnomi
 
Columnstore indexes in sql server 2014
Columnstore indexes in sql server 2014Columnstore indexes in sql server 2014
Columnstore indexes in sql server 2014Antonios Chatzipavlis
 
Why SQL Server 2014 Cardinality Estimator is *the* killer feature
Why SQL Server 2014 Cardinality Estimator is *the* killer featureWhy SQL Server 2014 Cardinality Estimator is *the* killer feature
Why SQL Server 2014 Cardinality Estimator is *the* killer featureSolarWinds
 
Chapter 3: ado.net
Chapter 3: ado.netChapter 3: ado.net
Chapter 3: ado.netNgeam Soly
 
Sql server 2016 new features
Sql server 2016 new featuresSql server 2016 new features
Sql server 2016 new featuresAjeet Singh
 

En vedette (20)

Microsoft SQL Server internals & architecture
Microsoft SQL Server internals & architectureMicrosoft SQL Server internals & architecture
Microsoft SQL Server internals & architecture
 
SQL Server 2014 Hybrid Cloud Features
SQL Server 2014 Hybrid Cloud FeaturesSQL Server 2014 Hybrid Cloud Features
SQL Server 2014 Hybrid Cloud Features
 
TechEd 2011 | Microsoft SQL Server Private Cloud
TechEd 2011 | Microsoft SQL Server Private CloudTechEd 2011 | Microsoft SQL Server Private Cloud
TechEd 2011 | Microsoft SQL Server Private Cloud
 
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...
Microsoft India - Total Economic Impact of Microsoft SQL Server 2008 Upgrade ...
 
Sql Server 2008 Security Enhanments
Sql Server 2008 Security EnhanmentsSql Server 2008 Security Enhanments
Sql Server 2008 Security Enhanments
 
1 introduction
1   introduction1   introduction
1 introduction
 
Chapter 2: Ms SQL Server
Chapter 2: Ms SQL ServerChapter 2: Ms SQL Server
Chapter 2: Ms SQL Server
 
The 5 Hidden Performance Gems of SQL Server 2014
The 5 Hidden Performance Gems of SQL Server 2014The 5 Hidden Performance Gems of SQL Server 2014
The 5 Hidden Performance Gems of SQL Server 2014
 
SQL 2005 Memory Module
SQL 2005 Memory ModuleSQL 2005 Memory Module
SQL 2005 Memory Module
 
Sql server infernals
Sql server infernalsSql server infernals
Sql server infernals
 
Memory management in sql server
Memory management in sql serverMemory management in sql server
Memory management in sql server
 
Top 5 TSQL Improvements in SQL Server 2014
Top 5 TSQL Improvements in SQL Server 2014Top 5 TSQL Improvements in SQL Server 2014
Top 5 TSQL Improvements in SQL Server 2014
 
SQL Server 2014 New Features
SQL Server 2014 New FeaturesSQL Server 2014 New Features
SQL Server 2014 New Features
 
Columnstore indexes in sql server 2014
Columnstore indexes in sql server 2014Columnstore indexes in sql server 2014
Columnstore indexes in sql server 2014
 
Why SQL Server 2014 Cardinality Estimator is *the* killer feature
Why SQL Server 2014 Cardinality Estimator is *the* killer featureWhy SQL Server 2014 Cardinality Estimator is *the* killer feature
Why SQL Server 2014 Cardinality Estimator is *the* killer feature
 
Chapter 3: ado.net
Chapter 3: ado.netChapter 3: ado.net
Chapter 3: ado.net
 
Sql server 2016 new features
Sql server 2016 new featuresSql server 2016 new features
Sql server 2016 new features
 
Visual Studio IDE
Visual Studio IDEVisual Studio IDE
Visual Studio IDE
 
MS-SQL SERVER ARCHITECTURE
MS-SQL SERVER ARCHITECTUREMS-SQL SERVER ARCHITECTURE
MS-SQL SERVER ARCHITECTURE
 
DBMS - Normalization
DBMS - NormalizationDBMS - Normalization
DBMS - Normalization
 

Similaire à Sql Server 2014 In Memory

Novedades SQL Server 2014
Novedades SQL Server 2014Novedades SQL Server 2014
Novedades SQL Server 2014netmind
 
SQL Server 2014 Mission Critical Performance - Level 300 Presentation
SQL Server 2014 Mission Critical Performance - Level 300 PresentationSQL Server 2014 Mission Critical Performance - Level 300 Presentation
SQL Server 2014 Mission Critical Performance - Level 300 PresentationDavid J Rosenthal
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore IndexSolidQ
 
SQL Server It Just Runs Faster
SQL Server It Just Runs FasterSQL Server It Just Runs Faster
SQL Server It Just Runs FasterBob Ward
 
Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 editionBob Ward
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Knut Relbe-Moe [MVP, MCT]
 
Reshape Data Lake (as of 2020.07)
Reshape Data Lake (as of 2020.07)Reshape Data Lake (as of 2020.07)
Reshape Data Lake (as of 2020.07)Eric Sun
 
SQL Server In-Memory OLTP Migration Overview
SQL Server In-Memory OLTP Migration OverviewSQL Server In-Memory OLTP Migration Overview
SQL Server In-Memory OLTP Migration OverviewJose Rivera Miranda
 
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endSPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endKnut Relbe-Moe [MVP, MCT]
 
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...javier ramirez
 
Hekaton introduction for .Net developers
Hekaton introduction for .Net developersHekaton introduction for .Net developers
Hekaton introduction for .Net developersShy Engelberg
 
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...Charley Hanania
 
VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld
 
Design Principles for a Modern Data Warehouse
Design Principles for a Modern Data WarehouseDesign Principles for a Modern Data Warehouse
Design Principles for a Modern Data WarehouseRob Winters
 
Taking SharePoint to the Cloud
Taking SharePoint to the CloudTaking SharePoint to the Cloud
Taking SharePoint to the CloudAaron Saikovski
 
Oracle DB In-Memory technologie v kombinaci s procesorem M7
Oracle DB In-Memory technologie v kombinaci s procesorem M7Oracle DB In-Memory technologie v kombinaci s procesorem M7
Oracle DB In-Memory technologie v kombinaci s procesorem M7MarketingArrowECS_CZ
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016Łukasz Grala
 
SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4Gianluca Hotz
 
SQL Server 2016 New Features and Enhancements
SQL Server 2016 New Features and EnhancementsSQL Server 2016 New Features and Enhancements
SQL Server 2016 New Features and EnhancementsJohn Martin
 
ORACLE 12C-New-Features
ORACLE 12C-New-FeaturesORACLE 12C-New-Features
ORACLE 12C-New-FeaturesNavneet Upneja
 

Similaire à Sql Server 2014 In Memory (20)

Novedades SQL Server 2014
Novedades SQL Server 2014Novedades SQL Server 2014
Novedades SQL Server 2014
 
SQL Server 2014 Mission Critical Performance - Level 300 Presentation
SQL Server 2014 Mission Critical Performance - Level 300 PresentationSQL Server 2014 Mission Critical Performance - Level 300 Presentation
SQL Server 2014 Mission Critical Performance - Level 300 Presentation
 
In-memory ColumnStore Index
In-memory ColumnStore IndexIn-memory ColumnStore Index
In-memory ColumnStore Index
 
SQL Server It Just Runs Faster
SQL Server It Just Runs FasterSQL Server It Just Runs Faster
SQL Server It Just Runs Faster
 
Sql server 2016 it just runs faster sql bits 2017 edition
Sql server 2016 it just runs faster   sql bits 2017 editionSql server 2016 it just runs faster   sql bits 2017 edition
Sql server 2016 it just runs faster sql bits 2017 edition
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
 
Reshape Data Lake (as of 2020.07)
Reshape Data Lake (as of 2020.07)Reshape Data Lake (as of 2020.07)
Reshape Data Lake (as of 2020.07)
 
SQL Server In-Memory OLTP Migration Overview
SQL Server In-Memory OLTP Migration OverviewSQL Server In-Memory OLTP Migration Overview
SQL Server In-Memory OLTP Migration Overview
 
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endSPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
 
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
 
Hekaton introduction for .Net developers
Hekaton introduction for .Net developersHekaton introduction for .Net developers
Hekaton introduction for .Net developers
 
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
Pass chapter meeting dec 2013 - compression a hidden gem for io heavy databas...
 
VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right
 
Design Principles for a Modern Data Warehouse
Design Principles for a Modern Data WarehouseDesign Principles for a Modern Data Warehouse
Design Principles for a Modern Data Warehouse
 
Taking SharePoint to the Cloud
Taking SharePoint to the CloudTaking SharePoint to the Cloud
Taking SharePoint to the Cloud
 
Oracle DB In-Memory technologie v kombinaci s procesorem M7
Oracle DB In-Memory technologie v kombinaci s procesorem M7Oracle DB In-Memory technologie v kombinaci s procesorem M7
Oracle DB In-Memory technologie v kombinaci s procesorem M7
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016
 
SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4SQL Server 2019 CTP2.4
SQL Server 2019 CTP2.4
 
SQL Server 2016 New Features and Enhancements
SQL Server 2016 New Features and EnhancementsSQL Server 2016 New Features and Enhancements
SQL Server 2016 New Features and Enhancements
 
ORACLE 12C-New-Features
ORACLE 12C-New-FeaturesORACLE 12C-New-Features
ORACLE 12C-New-Features
 

Plus de Ravi Okade

Preparing for AWS certified solutions architect associate exam (saa-c02)
Preparing for AWS certified solutions architect associate exam (saa-c02)Preparing for AWS certified solutions architect associate exam (saa-c02)
Preparing for AWS certified solutions architect associate exam (saa-c02)Ravi Okade
 
Azure blockchain service
Azure blockchain serviceAzure blockchain service
Azure blockchain serviceRavi Okade
 
Are you writing acceptance test yet?
Are you writing acceptance test yet?Are you writing acceptance test yet?
Are you writing acceptance test yet?Ravi Okade
 
License plate detection using cloud api's
License plate detection using cloud api'sLicense plate detection using cloud api's
License plate detection using cloud api'sRavi Okade
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor appRavi Okade
 
ZeroMq ZooKeeper and FlatBuffers
ZeroMq ZooKeeper and FlatBuffersZeroMq ZooKeeper and FlatBuffers
ZeroMq ZooKeeper and FlatBuffersRavi Okade
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Ravi Okade
 
Dot Net Application Monitoring
Dot Net Application MonitoringDot Net Application Monitoring
Dot Net Application MonitoringRavi Okade
 

Plus de Ravi Okade (8)

Preparing for AWS certified solutions architect associate exam (saa-c02)
Preparing for AWS certified solutions architect associate exam (saa-c02)Preparing for AWS certified solutions architect associate exam (saa-c02)
Preparing for AWS certified solutions architect associate exam (saa-c02)
 
Azure blockchain service
Azure blockchain serviceAzure blockchain service
Azure blockchain service
 
Are you writing acceptance test yet?
Are you writing acceptance test yet?Are you writing acceptance test yet?
Are you writing acceptance test yet?
 
License plate detection using cloud api's
License plate detection using cloud api'sLicense plate detection using cloud api's
License plate detection using cloud api's
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
 
ZeroMq ZooKeeper and FlatBuffers
ZeroMq ZooKeeper and FlatBuffersZeroMq ZooKeeper and FlatBuffers
ZeroMq ZooKeeper and FlatBuffers
 
Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)Optimizing Application Architecture (.NET/Java topics)
Optimizing Application Architecture (.NET/Java topics)
 
Dot Net Application Monitoring
Dot Net Application MonitoringDot Net Application Monitoring
Dot Net Application Monitoring
 

Dernier

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 

Dernier (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 

Sql Server 2014 In Memory

  • 2. Agenda  Why do you need it ?  How it is done  Benefits  Limitations
  • 3. Why do you need a new architecture ?  In-Memory  Memory is cheap  Servers have HUGE memory  Some data is hot  Traditional page based architecture has limitations, even when all pages are in memory  Native Compilation, Lock-less architecture  Individual cores are not getting any faster  While number of cores is increasing, Parallel processing has its limits due to lock contention  You cannot scale linearly by adding more cores
  • 4. Comparable Products and Technologies  Similar Products  Oracle TimesTen  Sybase ASE  Other technologies with some similarities  Distributed Cache ○ Oracle Coherence is one of many distributed cache’s that support query language (CQL). It can also persist to Oracle. Another example with similar capabilities is Gigaspaces  NoSQL Databases ○ Most NoSQL databases support distributed querying and aggressively cache data (e.g. MongoDB)
  • 5. What it all means..
  • 6. Use Cases  Hot tables – frequent inserts and updates, but queried heavily e.g:  Stock Trading applications  Patient Vital Stats  Flight information (live)  Transient data e.g.:  Web Session data  Stock Market data  Need for High speed OLTP queries
  • 7. In-memory Architecture  Main Concepts  In-memory  Lock free (row versions)  Native compiled stored procedures  Data storage optimizations  Memory optimized data structures  Transaction log optimization (block writes, no undo)  Data file Optimization (Sequential writes, Merging)  Index optimization (Only in-memory, Not persisted to disk, no tx logging)  No TempDB  Garbage collection optimization (huh?)  Non-durable option (Not persisted to disk)
  • 8. In Memory – Myths and Realities  Myth: In-Memory OLTP is the same as DBCC PINTABLE  Reality: In-Memory OLTP uses a completely new design built from the ground up.  Myth: If SQL Server crashes all data is lost  Reality: No – it is persisted to disk and is fully recoverable.
  • 9. SQL Server 2014 In-Memory Architecture SQL Server Integration • Same manageability, administration & development experience • Integrated queries & transactions • Integrated HA and backup/restore Main-Memory Optimized • Optimized for in-memory data • Indexes (hash and range) exist only in memory • No buffer pool, B-trees • Stream-based storage T-SQL Compiled to Machine Code • T-SQL compiled to machine code via C code generator and VC • Invoking a procedure is just a DLL entry-point • Aggressive optimizations @ compile-time High Concurrency • Multi-version optimistic concurrency control with full ACID support • Core engine uses lock-free algorithms • No lock manager, latches or spinlocks
  • 11. Memory Management  Table data resides in memory at all times.  No paging.  Must configure SQL box with sufficient memory to store memory-optimized tables. Max supported 512GB  Failure to allocate memory will fail transactional workload at run-time
  • 12. In-Memory Data Structures  Rows  New row format ○ Structure of the row is optimized for in-memory residency and access.  One copy of row ○ Indexes point to rows, they do not duplicate them.  Indexes  Hash Index for equality search  memory-optimized B-tree for range and equality search (In CTP2)  Do not exist on disk – recreated during recovery.
  • 13. In Memory – Table DDL: Need filestream filegroup FILEGROUP [Hekaton_DB_hk_fs_fg] CONTAINS MEMORY_OPTIMIZED_DATA (NAME = [Hekaton_DB_hk_fs_dir], FILENAME = 'C:Hekaton_testsqlservrdataHekaton_DB_hk_fs_dir')
  • 14.
  • 15. Table creation internals CREATE TABLE DDL Code generation and compilation Table DLL produced Table DLL loaded
  • 16. Table Storage  Filestream is the underlying storage mechanism  Data files  Store inserted records  Data written only upon Tx commit  Delta files  Store deleted records (updates are an insert/delete pair)
  • 17. Transaction Logging  Uses SQL transaction log to store content  All logging is logical  No log records for physical structure modifications.  No index-specific / index-maintenance log records.  No UNDO information is logged
  • 18. Native Compiled Stored Procedures  Compiled to C language and compiled into a dll using VC  Optimized aggressively at compile time  Can only access In-memory tables  Not all T-SQL constructs and functions supported  No alter procedure – must drop and recreate
  • 19. Procedure Creation CREATE PROC DDL Query optimization Code generation and compilation Procedure DLL produced Procedure DLL loaded
  • 20.
  • 21. Using Row Versions for Lock free architecture  SQL Server 2014 In Memory DB has no locks (period).  Row versions are used to maintain updates  No TempDB  Row Versions which are no longer referenced are garbage collected.  Supports Snapshot, Repeatable Read and Serializable Isolation levels
  • 22. Transaction Isolation Levels  SNAPSHOT  Reads are consistent as of start of the transaction  Writes are always consistent  REPEATABLE READ  Read operations yield same row versions if repeated at commit time  SERIALIZABLE  Transaction is executed as if there are no concurrent transactions – all actions happen at a single serialization point (commit time)
  • 24. Benefits  Uses Commodity Hardware  Works seamlessly with current SQL Server objects  Yes, it is still ACID compliant  Yes, you can mix in-memory and disk based tables in the same database  Yes, your transactions can span in-memory and disk based tables  No, you cannot have partial in-memory tables  Yes, it has to fit in-memory 100%, forever.  Yes, you can limit how much memory is used by the in-memory tables (think resource pools) (not in CTP1)  Yes, you can have high availability
  • 25. Limitations  Row Sizes can’t be larger than 8060 bytes (incl. Variable Length Columns)  LOB, XML Data Types are not supported  No Foreign Key and Check Constraints  No IDENTITY, SEQUENCE  No DML Triggers  No ALTER Table (Need to recreate table)  No Add/Remove Index (Need to recreate table)  No diff backups  Indexes are rebuilt (consider startup time)  Disk files are merged while being loaded  Running out of memory
  • 26. CTP1 Limitations  No B-Tree index (used for range search)  No Resource Pools  No always on
  • 27. Demo  Performance against disk based table  Performance with native sproc  Number of Tx records written disk vs memory  Northwind example  [TBD] Dealing with transactions  [TBD] Performance of T-SQL/Interop sprocs with In memory tables  [TBD] Disk files and merging ?  [TBD] Backup, Tx log backup; no diff backups
  • 28. More information  Tech-ed SQL Server 2014 Videos  Microsoft SQL Server In-Memory OLTP: Overview of Project “Hekaton”  Microsoft SQL Server In-Memory OLTP Project “Hekaton”: App Dev Deep Dive  Microsoft SQL Server In-Memory OLTP Project “Hekaton”: Management Deep Dive  Microsoft SQL Server 2014 In-Memory OLTP: Overview  SQL Server In-Memory OLTP: DB Developer Deep Dive  SQL Server In-Memory OLTP: DBA Deep Dive  SIGMOD 2013 article by Microsoft  Hekaton Whitepaper by Kalen Delaney  High-Performance Concurrency Control Mechanisms for Main-Memory Databases, Microsoft Research  SQL Server 2014 - MSDN Online Documentation  Blog articles by Bob Beauchemin  Getting Started with SQL Server 2014 In-Memory OLTP (SQL Server Team blog)  Additional links  Oracle TimesTen FAQs  SQL Server In Memory Set up and Demos (My Blog)