自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MVP黄钊吉(發糞塗牆)

博學多才謙虛謹慎,不學無術目中無人

  • 博客(34)
  • 资源 (29)
  • 收藏
  • 关注

原创 Azure SQL DB/DW 系列(14)——使用Query Store(3)——常用场景

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(13)——使用Query Store(2)——报表介绍(2)本文继续如何使用Query Store的常用场景前言  Query Store有很多用途,基于它的收集功能,很适合作为服务器的性能基线。性能基线是一个标准,用来后续判断服务器是否存在性能问题。所以专业的数据库及服务器运维,都应该制定合理的性...

2020-03-31 21:57:11 1262 1

原创 Azure SQL DB/DW 系列(13)——使用Query Store(2)——报表介绍(2)

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(12)——使用Query Store(1)——报表介绍(1)本文继续介绍Query Store的报表带有强制执行计划的查询  显示已经被强制使用特定执行计划的查询。可以看到用了多少执行计划,也可以用于回顾。  由于这个报表本人用的比较少,所以就不做过多介绍。具有高度差异的查询  这个报表可以...

2020-03-31 11:54:42 959

原创 Azure SQL DB/DW 系列(12)——使用Query Store(1)——报表介绍(1)

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(11)——重新认识Query Store(4)——Query Store维护本文开始介绍Query Store的输出——各种报表                                          下一文:Azure SQL DB/DW 系列(13...

2020-03-30 21:08:20 1114

原创 Azure SQL DB/DW 系列(11)——重新认识Query Store(4)——Query Store维护

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(9)——重新认识Query Store(2)——工作原理本文介绍Query Store的配置,包括PaaS平台和非云版本P73...

2020-03-30 16:33:47 977

原创 Azure SQL DB/DW 系列(10)——重新认识Query Store(3)——配置查询存储

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(9)——重新认识Query Store(2)——工作原理本文介绍Query Store的配置,包括PaaS平台和非云版本默认设置  和其他功能一样,要最大化它的潜在用处,需要按需配置。Query Store在非云版本中(托管实例除外,因为托管实例非常接近非云版本)默认是不开启的,如果你需要使用,当然...

2020-03-29 20:54:55 1022

原创 Azure SQL DB/DW 系列(9)——重新认识Query Store(2)——工作原理

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(8)——重新认识Query Store(1)——简介本文介绍Query Store的技术内幕数据来源  Query Store中的数据由三个部分的数据来源组成:查询和计划的信息:有关查询本身的数据以及查询优化器从该查询派生的执行计划的数据。查询的运行时信息:查询运行得多快,被调用了多少次,以及...

2020-03-29 18:39:07 920

原创 Azure SQL DB/DW 系列(8)——重新认识Query Store(1)——简介

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(7)——Query Store案例(4)——查找参数化问题本文开始整理和总结Query Store的技术要点,以更详细的方式简介Query StoreQuery Store优势  Query Store默认是关闭的,一旦开启,它就会收集数据库中查询的汇总信息和工作负载的统计信息。这些数据可以用来处理...

2020-03-29 12:59:45 1053

原创 Azure SQL DB/DW 系列(7)——Query Store案例(4)——查找参数化问题

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(6)——Query Store案例(3)——查看等待信息本文演示如何用Query Store查看参数化带来的性能问题,但是跟前面3篇案例不同,这次使用纯T-SQL而不是GUI。前言  Query Store提供了一个全新的方式用于协助数据库用户处理性能问题甚至其他故障,本文演示如何使用Query S...

2020-03-29 11:12:34 949

原创 Azure SQL DB/DW 系列(6)——Query Store案例(3)——查看等待信息

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(5)——Query Store案例(2)——计划回归本文演示如何用Query Store查看等待信息前言  关于等待信息的查看和使用方式有很多种,本文用全新的方法也就是Query Store来查看等待信息。  我们知道,等待信息几乎可以说是常规应对性能问题甚至其他异常时的首要切入点。其实回顾过去的...

2020-03-27 20:37:19 942

原创 Azure SQL DB/DW 系列(5)——Query Store案例(2)——计划回归

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(3)——Query Store简介本文演示如何使用Query Store来找到计划回归并处理https://www.sqlpassion.at/archive/2016/01/18/performance-troubleshooting-with-the-query-store-in-sql-serv...

2020-03-26 21:35:08 996

原创 Azure SQL DB/DW 系列(4)——Query Store案例(1)——缺失索引

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(3)——Query Store简介本文演示如何使用Query Store来找到Missing Index环境搭建  本文以AdventureWorks2017作为演示,使用SQL Server 2019的兼容级别(150)。  首先需要启用Query Store,可以在SSMS中实现,不过如果你已...

2020-03-26 21:34:02 1003

原创 Azure SQL DB/DW 系列(3)——Query Store简介

本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(2)——入门级监控性能的工具简介  从名字来看,Query Store就是查询存储,存储了查询(不仅限于SELECT,还包括 DML 语句如 SELECT、INSERT、UPDATE、DELETE、MERGE 和 BULK INSERT的计划。)的执行信息,供后续分析。它可用于SQL Server(本...

2020-03-25 16:31:12 1292

原创 Azure SQL DB/DW 系列(2)——入门级监控性能的工具

关于性能监控,目前常用的有3种:Azure的控制台提供了服务器的资源使用情况。Azure控制台有专门的Performance的部分,特别是Performance Insight。在SSMS种可以查看的Query Store。接下来将简介一下这三种,然后优先介绍Query Store,因为这个功能可能更加有用。当然,还有一些其他方式可以使用,比如Extended Events。...

2020-03-25 11:57:36 1301 1

原创 Azure SQL DB/DW 系列(1)——首次使用感受

由于不同的云供应商有自己的封装,加上本人目前公司的项目使用国际版的微软云Azure,所以我的环境只集中在国际版的Azure平台。前言  云计算已经不再是什么新鲜事,作为IT人员更加如此。                                                      ...

2020-03-25 11:53:48 2004

原创 SQL Server 列存储索引性能总结(12)——RESOURCE_SEMAPHORE 等待

在SQL Server 列存储索引性能总结(10)——行组的大小影响一文中,实验过程当把服务器的max server memory(MB)值调到300MB并创建聚集列存储所以时,整整跑了5个小时都还没完成,然后查看对应的会话阻塞情况,发现了这个我过去很少见到过的等待状态,所以找了一些资料了解一下。当然,光从行为上,我大概能猜出是内存不够的原因,但是还是需要了解一下具体情况。背景  在 “S...

2020-03-23 11:56:19 1276

原创 SQL Server 列存储索引性能总结(11)——列存储的维护

接上文:SQL Server 列存储索引性能总结(10)——行组的大小影响索引需要维护,这个不多说,而维护通常就是两种:重建和重组。在一些可控的环境下(比如自己的机房),我选择使用Ola Hallengren的一整套维护脚本。非常好用。不过对于类似PaaS平台的SQL Server,可控性很弱,可能需要自己开发。但是这个不是本文的主题。本文介绍并演示重组和重建。如何选择重组和重建重组  ...

2020-03-23 09:57:21 1062 1

原创 SQL Server 列存储索引性能总结(10)——行组的大小影响

我们知道,为了更好的性能,行组(row group)的大小最好是1045678行,或者小于10万行。如果没有办法达到最佳大小,在读取大量数据的时候,就很难用到列存储的优点。在列存储索引中,最重要的概念就是行组和片段,它们分别代表了数据存储在行存储和列存储中。在片段中,不管你存了1行还是100万行数,读取的时候都是每个页或者区来读取,所以如果行数太少,是挺浪费的。如果对未排序的列使用筛选条件,那...

2020-03-22 18:49:45 1421 1

原创 SQL Server 列存储索引性能总结(9)——重建和重组聚集列存储索引所需的内存

接上文SQL Server 列存储索引性能总结(8)——列存储中的Dictionary,本文演示一下创建或重建及重组列存储索引时所需要的内存,因为在SQL Server 列存储索引性能总结(5)——列存储等待信息中我们也看到了如果内存不足,会出现不少等待。背景   在数据导入列存储索引后,通常还会有不少行组没有被压缩,甚至全部没有被压缩,这个时候除了Tuple Mover之外,还可以通过...

2020-03-21 23:07:15 1268

原创 SQL Server 列存储索引性能总结(8)——列存储中的Dictionary

接上文:SQL Server 列存储索引性能总结(7)——导入数据到列存储索引的Delta Store,前面提到了几次Dictionary,本文快速介绍一下它到底是什么,以便更好地理解列存储。不过这部分不会讲太深入,因为这个功能只能用于SQL Server而不适用于SQL DB和SQL DW(现在称为Azure Synapse Analytics)环境  本文继续使用ContosoRe...

2020-03-20 10:13:26 1216

原创 SQL Server 列存储索引性能总结(7)——导入数据到列存储索引的Delta Store

列存储索引有推荐的最佳导入行数,过小会导致数据先进入Delta Store(行组,row group),这个是行存储的B 树结构,然后通过Tuple Mover对数据进行编码和压缩最终成为片段(segment),这时候才能说进入了真正的列存储索引中,才能真正发回去列存储索引的优势。在我目前的项目中,导入数据是个头痛的事情,数据量不是非常大,但是表的列很多,4~500列。...

2020-03-19 16:16:48 1220

原创 SQL Server 列存储索引性能总结(6)——聚集和非聚集列存储索引的压缩

接上文:SQL Server 列存储索引性能总结(5)——列存储等待信息,前面的文章主要集中在聚集列存储上,下面也是时候引入一下费聚集列存储索引的内容。   这篇文章集中在不同列存储索引的“压缩”上面。还是使用ContosoRetailDW库做演示。对比一下两种列存储索引的压缩效率,其实我们应该已经知道结论了,不过不妨再看看过程。   本文选择四个不同数据量,列也不相同的表做对比,尽可能覆...

2020-03-18 20:41:53 1078

原创 SQL Server 列存储索引性能总结(5)——列存储等待信息

接上文:SQL Server 列存储索引性能总结(4)——列存储压缩,本文介绍列存储相关的锁   上周六,我在加班,为公司的Azure SQL DB测试聚集列存储索引,按照网上的说法,对堆表建立聚集列存储索引应该很快的,何况我使用的是SQL DB中最高I/O的Pricing Tier——Business Critical vCore 80,号称IOPS 可达204800,Log的吞吐量也可以...

2020-03-18 20:18:23 1185

原创 SQL Server 列存储索引性能总结(4)——列存储压缩

接上文:SQL Server 列存储索引性能总结(3)——列存储的锁,列存储的其中一个强项在于非常高的压缩率,如果没有这个压缩功能,列存储不可能有极大的性能提升。本文就来演示一下压缩方面的内容。案例测试   压缩率高不高直接看大小的变化已经足够了,这次我们使用ContosoRetailDW库的FactOnlineSales表,这个表有1200万数据,可以作为一个借鉴,我们先把数据挪到一个堆...

2020-03-14 16:41:52 1174

原创 SQL Server 列存储索引性能总结(3)——列存储的锁

接上文:SQL Server 列存储索引性能总结(2)——获取元数据信息,本文介绍列存储相关的锁   现在在TempDB中重新建表:IF OBJECT_ID('dbo.CCTest', 'U') IS NOT NULL drop table dbo.CCTest;create table dbo.CCTest( id int not null, name varchar(50) ...

2020-03-12 16:28:36 583

原创 SQL Server 列存储索引性能总结(2)——获取元数据信息

接上文:SQL Server 列存储索引性能总结(1)——环境准备及简介, 本文介绍怎么获取和解读元数据信息,以便后续演示过程能知道内幕技术,也可以方便在日常工作中的TroubleShooting。环境准备   我们先创建一些环境,然后一边演示一边介绍,为了不受示例数据库的影响,这次在TempDB上面运行。   创建测试表加聚集列存储索引,然后循环插入240万行数据:--use Tem...

2020-03-12 16:26:12 555

原创 SQL Server 列存储索引性能总结(1)——环境准备及简介

列存储是从SQL 2012引入,并在后面发挥非常大性能提升的功能,因为当前工作过程需要使用,并且已经出现了很多问题,所以这里我打算把这两个月的经验总结和分享一下。这个系列跟前面的有些类似,但是我希望能够把零碎的知识点合在一个系列中,最起码方便自己以后搜索。环境准备   本文会使用SQL Server On Linux环境,不过这个问题不大,SQL Server 使用2019版本。   ...

2020-03-12 16:22:03 792

原创 SQL Server On Linux(27)——SQL Server on Linux 性能(11)——列存储索引案例

本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》接上文:SQL Server On Linux(26)——SQL Server on Linux 性能(10)——列存储索引简介这次来做一个简单的实操演示  这次我们使用WideWorldImportersDW库来演示。  首先查一下哪些表用了聚集列存储索引:USE [wideworl...

2020-03-10 15:33:28 364

原创 SQL Server On Linux(26)——SQL Server on Linux 性能(10)——列存储索引简介

本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》本文介绍SQL On Linux上的性能提升功能,列存储索引,实际上这个并不仅仅是Linux上才有,所有平台的SQL Server包括windows、linux和云平台都有,而且在本人工作中用了不少,所以做个技术分享。前言  在SQL 2012之前,我们能用到的所有索引都是“行存储索引”...

2020-03-09 11:58:42 353

原创 SQL Server On Linux(25)——SQL on Linux 备份和还原(2)——还原

本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》接上文 SQL Server On Linux(24)——SQL on Linux 备份和还原(1)——备份, 本文演示“备份”的配套工作——还原。  还原操作在两个平台上都类似,可以使用SQL命令或者SSMS图形界面操作,比较常见的差异在于你需要还原的数据库来自于别的地方(如别的服务器或...

2020-03-07 17:39:41 750

原创 SQL Server On Linux(24)——SQL on Linux 备份和还原(1)——备份

本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》简介  备份和还原的重要性这里就不多说了,但是需要额外提醒一下,备份和还原应该总是“一个”操作,不考虑还原的备份不能认为是有价值的备份。  本文重点在Linux上的SQL Server备份,关于Windows上的SQL Server备份,网上已经有很多成熟的资料,这里就不累赘了。  备份的...

2020-03-06 13:58:23 854

原创 SQL Azure工作积累(2)——Hyperscale 简介

工作需要,要评估Azure SQL DB的配置,所以整理一下网上搜集的信息,由于云产品更新迭代很快,所以今天的内容可能在不久的将来就会变更,但是这个不影响本质。本文归属:SQL Azure 工作积累(1)——添加用户到Azure SQL DB简介  截止发文之时, Azure SQL DB有两种付费模式,一种是vCore,一种是DTU,但是由于公司使用vCore为主,所以先考虑vCore...

2020-03-05 14:55:07 1614

原创 SQL Server导入性能对比(3)——In-Memory搭配聚集列存储索引

接上文SQL Server导入性能对比(2)——非聚集列存储索导入,本文测试In-Memory搭配聚集列存储索引的导入性能。环境准备  先创建测试表,in-memory需要数据库开启“MEMORY_OPTIMIZED_DATA”并且添加专用文件组:use master;GOALTER DATABASE [ContosoRetailDW] ADD FILEGROUP [Conto...

2020-03-03 10:24:19 612

原创 SQL Server导入性能对比(2)——非聚集列存储索导入

接上文 SQL Server导入性能对比(1)——并行导入, 这次使用非聚集列存储索引来测试性能。环境  首先说明一下这里使用的还是SQL 2016以上的非聚集列存储索引,也就是可更新的列存储索引,在2012的时候已经出现但是是不可更新的。  首先先创建测试表,然后对全部列进行索引化。注意这个时候表实际上是堆表,因为没有任何聚集索引在上面。CREATE TABLE [dbo].[Fac...

2020-03-02 14:15:23 519

原创 SQL Server导入性能对比(1)——WITH TABLOCK并行导入

随着大数据和大量数据系统的出现,数据的加载变得越来越重要,很多岗位甚至只需要ETL技能,不过今时今日数据加载已经不再是单纯的ETL,还有ELT,甚至不需要进行数据移动的计算等等。本文先把精力放在传统的ETL上。介绍几种数据加载的过程和对比。常规数据加载方式  数据加载的本质就是把数据插入特定的地方,通常我们关注的是性能,说白了就是插入完成的时间,及引起的空间消耗。  本文及后面两篇文章...

2020-03-02 11:37:39 1561

Test file 123

Test file 123

2024-07-04

Tectia client

Tectia client

2024-06-05

make_big_adventure.sql

用来创建AdventureWork上测大型测试表,由于国外网站需要某些方式才能获取,所以我共享出来。

2020-03-28

Windows性能计数器列表

可用于监控服务器及数据库的性能问题。通过配置数据收集器集长时间运行,可以了解整个服务器的性能趋势和资源利用情况

2018-05-07

Microsoft Big Data Solutions

微软最新大数据解决方案神作。大数据时代微软从业人员必读书籍

2014-05-04

SQLServer安全性文档

关于SQLServer的安全性白皮书,写的很好

2013-05-17

使用DMV对SQLServer进行性能调优

原名:《Performance Tuning With SQL Server Dynamic Management Views》,本资源为英文清晰原版PDF。从2005以后引入了DMO(DMV+DMF)作为SQLServer管理工具,本书通过使用DMO,专注于SQLServer的性能优化。性能优化的手段有多种,但是DMO具有便捷的特性,使其在SQLServer的管理中具有不可替代并越来越重要的作用,精度本书将会对DBA甚至数据库开发人员的水平带来很大的提升。

2013-05-02

数据库对比工具ASQLDiff

高效对比数据库对象的结构,且生成差异脚本,虽然是试用版,但是目前用了2年都还能用

2013-03-25

AdventureWorks2012

AdventureWorks2012mdf文件,至于LDF让SQLServer自动生成。但是要在SQLServer 2012上才能附加。

2013-03-08

Inside Microsoft SQL Server 2008:T-SQL Querying

2008 技术内幕原版教材,带有源代码、高清

2012-12-13

Microsoft SQL Server 2005技术内幕:T-SQL查询

技术内幕第一本要读的书,由于之前那些好像有点问题,现在免费上传。

2012-11-27

RedGate.SQL.Prompt.v.5.1.8.2

代码格式化工具,非常好用,记得在破解时使用管理员身份

2012-11-06

SQL编程风格

良好的编程规范比技术更加重要,但是如何去做到规范?本文也许能提供一些思路。清晰中文版。

2012-08-13

SQLServer2008企业级平台管理实践01

SQLServer2008企业级平台管理实践,本人读过最有实践性的SQL SERVER书籍。书中绝大部分的问题都是现实中遇到的。很有意义。值得拥有。由于上传大小受限,所以要分成2个文件上传。

2012-05-07

SQLServer2008企业级平台管理实践02

SQLServer2008企业级平台管理实践,本人读过最有实践性的SQL SERVER书籍。书中绝大部分的问题都是现实中遇到的。很有意义。值得拥有。由于上传大小受限,所以要分成2个文件上传。

2012-05-07

SQL.Server.DMVs.实战

自2005以来DMV占据了性能监控的主导地位,所以如果想做DBA或者一个优秀的数据库开发人员,就要熟读这本书

2012-04-25

SQL Server 2005 Administrator's Companion

2005的DBA书籍。有意愿成为DBA的要熟读。

2012-04-25

Microsoft SQL Server 2005技术内幕:T-SQL查询.02

Microsoft SQL Server 2005技术内幕:T-SQL查询.02

2012-04-24

Microsoft SQL Server 2005技术内幕:T-SQL查询.01

Microsoft SQL Server 2005技术内幕:T-SQL查询,经典书籍,上传受限,所以分开两个文件

2012-04-24

Microsoft SQL Server 2005技术内幕: T-SQ程序设计.01

经典书籍,由于上传受限所以分开两个文件上传。

2012-04-24

Microsoft SQL Server 2005技术内幕: T-SQ程序设计.02

2005技术内幕丛书之一,上传受限,所以只能分开两个文件上传

2012-04-24

Microsoft SQL Server 2005技术内幕.存储引擎

SQL Server 经典书籍。值得一看

2012-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除