Book Image

SQL Server 2017 Developer???s Guide

Book Image

SQL Server 2017 Developer???s Guide

Overview of this book

Microsoft SQL Server 2017 is a milestone in Microsoft's data platform timeline, as it brings in the power of R and Python for machine learning and containerization-based deployment on Windows and Linux. This book prepares you for advanced topics by starting with a quick introduction to SQL Server 2017's new features. Then, it introduces you to enhancements in the Transact-SQL language and new database engine capabilities before switching to a different technology: JSON support. You will take a look at the security enhancements and temporal tables. Furthermore, the book focuses on implementing advanced topics, including Query Store, columnstore indexes, and In-Memory OLTP. Toward the end of the book, you'll be introduced to R and how to use the R language with Transact-SQL for data exploration and analysis. You'll also learn to integrate Python code into SQL Server and graph database implementations as well as the deployment options on Linux and SQL Server in containers for development and testing. By the end of this book, you will be armed to design efficient, high-performance database applications without any hassle.
Table of Contents (25 chapters)
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Preface
Free Chapter
1
Introduction to SQL Server 2017
Index

Columnar storage and batch processing


Various researchers started to think about columnar storage in the 80s. The main idea is that a relational database management system (RDBMS) does not need to store the data in exactly the same way we understand it and work with it. In a relational model, a tuple represents an entity and is stored as a row of a table, which is an entity set. Traditionally, database management systems store entities row by row. However, as long as we get rows back to the client application, we do not care how an RDBMS stores the data.

This is actually one of the main premises of the relational model—we work with data on the logical level, which is independent of the physical level of the physical storage. However, it was not until approximately 2000 when the first attempts to create columnar storage came to life. SQL Server added columnar storage first in version 2012.

Columnar storage is highly compressed. Higher compression means more CPU usage because the data must be...