1. MSSQL12新功能概述
Microsoft SQL Server是一款功能强大的关系型数据库管理系统,被广泛应用于企业数据管理和数据分析等领域。MSSQL 12是SQL Server的最新版本,在此版本中,新增了许多卓越的功能和性能提升,使得MSSQL12成为了一款更加强大的数据库管理系统。
2. 新功能介绍
2.1. In-Memory OLTP 引擎
在之前的版本中,MSSQL并未提供内存优化表的支持,这导致了在高并发的情况下性能衰减的问题。而在MSSQL12中,新增了In-Memory OLTP引擎的支持,该引擎支持将表数据存储在内存中,极大提高了并发性能,同时还支持对此类表的快速查询。
--定义内存优化表
CREATE TABLE [InMemorySales] (
[SaleId] int NOT NULL,
[SaleDate] date NOT NULL,
[SaleAmount] decimal(18,2) NOT NULL,
INDEX cidx ON [InMemorySales]([SaleDate])
) WITH (MEMORY_OPTIMIZED=ON, DURABILITY=SCHEMA_ONLY);
2.2. JSON支持
在MSSQL12中,新增了对JSON格式数据的支持。这使得用户不再需要将JSON格式的数据转换为关系型数据才能进行处理,而是可以直接在数据库中存储和查询JSON数据。此外,MSSQL12还提供了一组新的转换函数,可以方便地在SQL语句中对JSON数据进行处理。
--将JSON字符串转换为键值对
SELECT *
FROM OPENJSON('{"name": "John", "age": 30}')
WITH (Name varchar(50), Age int);
2.3. Stretch Database技术
Stretch Database是一项新技术,它可以将频繁访问的数据存储在本地数据库中,而将不常访问的数据存储在云端。这样一来,用户可以节省本地存储空间,同时也可以保证数据的安全性。MSSQL12直接支持了Stretch Database技术,并提供了相应的管理功能。
3. 性能提升
3.1. 实时操作统计信息收集
MSSQL12新增了实时操作统计信息收集的功能,即Database Console Commands (DBCC)操作可提供持续的可见性和收集统计信息。这个功能可以帮助人们更好的监测并优化数据库运行过程中的性能问题。
3.2. PolyBase增强
在MSSQL12中,PolyBase得到了一系列的增强,包括与Azure HDInsight之间的连接,更好的Hadoop分布式文件系统的支持以及为大规模的数据集提供数据加载和索引增强等。这些增强可以帮助人们更好的利用海量数据,并提高MSSQL12的查询性能。
3.3. ColumnStore索引优化
MSSQL12在ColumnStore索引方面做出了一系列的优化,如能够自适应数据存储与查询处理,采用更高效的字典压缩算法等,这些优化使得MSSQL12能够更加高效地处理列存储数据。
--创建列存储索引
CREATE NONCLUSTERED COLUMNSTORE INDEX ix CS_IDX ON Sales(Col1,Col2,Col3);
4. 总结
通过对MSSQL12的介绍,我们可以看出它新增的一系列功能和性能优化,使得其成为了一款更加高效、更加强大的数据库管理系统。通过MSSQL12的不断升级和更新,我们可以预见其在未来的数据库领域中一定会发挥更加重要的作用。