前面写了两篇了,其实不光是说sys.dm_os_waiting_tasks的应用,研究了挺长时间的并行,自己有了一些理解,所以分享出来希望有什么理解错误的地方大神们及时纠正!! 给出前两篇的连接: 上篇 中篇 废话不多说,直接开整. 前面两篇的编写有一个疑惑...最初认为的并行比如这个语句: select * from t1 inner join t2 on t1.a = t2.a ) 在我的理解并行是开几个线程去获取T1数据,另外几个线程获取T2 数据,然后关联结果形成最后结果集.可是试验了才…
上一篇我们说了一下sys.dm_exec_requests 和 sys.dm_os_waiting_tasks 在获取并行等待的时候得不同结果,这一篇我们谈论下我的第二个疑问:为什么一个并行计划(4线程)却一下出现了那么多等待,SQL的并行到底是怎么执行的!!!! 先贴以下上篇sys.dm_os_waiting_tasks 的结果图: 我们分析一下这个结果的task_address 可以看出去掉重复其实只有9个,也就是说一个并行(4线程,配置不同,情况也不同)会有9个task. 又是线程,又是t…
很多人在查看SQL语句等待的时候都是通过sys.dm_exec_requests查看,等待类型也是通过wait_type得出,sys.dm_os_waiting_tasks也可以看到session的等待那么有什么区别呢.... 废话不多说直接开整. 测试版本2012 sys.dm_os_waiting_tasks 的字段说明: waiting_task_address varbinary(8) 等待任务的地址. session_id smallint 与任务关联的会话的 ID. exec_con…
<Replication的犄角旮旯>系列导读 Replication的犄角旮旯(一)--变更订阅端表名的应用场景 Replication的犄角旮旯(二)--寻找订阅端丢失的记录 Replication的犄角旮旯(三)--聊聊@bitmap Replication的犄角旮旯(四)--关于事务复制的监控 Replication的犄角旮旯(五)--关于复制identity列 Replication的犄角旮旯(六)-- 一个DDL引发的血案(上)(如何近似估算DDL操作进度) Replication的…
因为dblink的创建和删除只能是它的所属用户来操作,所以我们无法直接使用sys用户创建其他用户下的dblink,当遇到有这样的需求时,可以先建立该用户下存储过程,再通过调用这个存储过程来间接实现. 举例来说: 1.使用sys用户创建JY2用户下的dblink "TO_11G_JY1",连接远端"WINORA"的jy1用户: --Create other user's dblink --grant create database link to jy2; creat…
通过/proc/sys/net/ipv4/优化Linux下网络性能 /proc/sys/net/ipv4/优化1)      /proc/sys/net/ipv4/ip_forward该文件表示是否打开IP转发.0,禁止1,转发 缺省设置:02)      /proc/sys/net/ipv4/ip_default_ttl   该文件表示一个数据报的生存周期(Time To Live),即最多经过多少路由器.   缺省设置:64 增加该值会降低系统性能. 3)      /proc/sys/ne…
1,前几天学习一个项目的时候,遇到了PasswordBox这个控件,由于这个控件的Password属性,不是依赖属性,所以不能和ViewModel层进行数据绑定. 2,但是要实现前后端彻底的分离,就需要绑定,那么下面我的本文的主角"附加属性"就要出场了. 3,附加属性的概念,就是类(控件类)本身没有这个属性,我们给它一个我们定义的属性.那是怎么给的呢? 4,怎么给的,刚开始我也很迷惑,其实就是在xmal文件中,在控件属性中,直接写上我们定义的附加属性就好(放心,编辑器是不会报错的).…
一 公司有同事部署出错,然后查日志,找时间,从k8s得到的时间是  2017-06-16T09:38:48.580 +0000,然后他就纳闷了,因为他根本不会在9点部署好吧,而且9点大多数程序员都没开始进入状态呢.所以,咱们一群弱鸡就一起找原因了. 二 说真的一群程序员,靠猜都能猜得出大概意思是什么,但是,我们总要知道个为什么把? +0000 我一开始就猜这是个时区之类的玩意,结果这是UTC时间格式(世界协调时)区分时区的. +0000 代表着时区,而我们所在的时区是+0800,东8区. 三 2…
expdp \"/as sysdba\" directory=my_dir logfile=expdp.log dumpfile=expdp_scott.dmp schemas=scott impdp \"/as sysdba\" directory=my_dir logfile=expdp.log dumpfile=expdp_scott.dmp schemas=scott…
前面三篇通过CPU.内存.磁盘三巨头,讲述了如何透过现在看本质,怎样定位服务器三巨头反映出的问题.为了方便阅读给出链接: SQL SERVER全面优化-------Expert for SQL Server 诊断系列 通过三篇文章的基本介绍,可以看出系统的语句如果不优化,可能会导致三巨头都出现异常的表现.所以本篇开始介绍系统中的重头戏--------------SQL语句! 开篇前的啰嗦 什么是SQL 语句 ?   这就是SQL 语句! 帅气吧!还有呢! 这也是SQL语句! 博主真能骗人,我读书…
改装有顺序------常开的爱车下手 你的系统中有成千上万的语句,那么优化语句从何入手呢 ? 当然是系统中运行最频繁,最核心的语句了.废话不多说,上例子: 这是一天的语句执行情况,里面柱状图表示的是对应执行时间段内语句的次数,总体看起来长时间语句非常多. 下面看一下具体的语句执行情况: 排位第一的语句执行次数38508次,是一个存储过程(RPC:Completed 表示存储过程结束,不知道这个的请看profiler的使用说明).其中的一条语句(SP:StmtCompleted)也就是排在第二位的…
以下是一些您应该熟悉的更有用的DMV: 1.sys.dm_exec_cached_plans - 可用于SQL Server的缓存查询计划 2.sys.dm_exec_sessions - SQL Server中的会话 3.sys.dm_exec_connections - 连接到SQL Server 4.sys.dm_db_index_usage_stats - 搜索,扫描,查找每个索引 5.sys.dm_io_virtual_file_stats - 数据库和日志文件的IO统计信息 6.sy…
上一篇我们简单的介绍了,语句优化的三板斧,大部分语句三板斧过后,就算不成为法拉利也能是个宝马了.为了方便阅读给出系列文章的导读链接: SQL SERVER全面优化-------Expert for SQL Server 诊断系列 本篇主要讲述几个常见的系统等待,透过这些等待,看看系统存在什么问题,怎么样解决这些问题.结合系统三巨头(CPU,内存,磁盘)综合展现系统问题和这些元素的联系. 首先我们举个例子:前文提到了,一个好的SQL语句就好比一辆时速180的好车,好的系统硬件(CPU,内存,磁盘)…
原本只是部署作业获取数据库中阻塞语句,中午测试汇集阻塞数据,发现某一服务器写入386行,而其他服务器只写入几行.登录对应服务器查看详细信息,发现有四个时间点分别写入100来行记录对于第一行:会话183被会话221阻塞,阻塞时长1887ms,会话221持有18:1:4311755上的U锁,会话183等待18:1:4311755上的U锁.查看BlockedBatch/BlockingBatch列,此处的阻塞与被阻塞对应的存储过程是相同的,只是传递的参数不同.存储过程定义如下 CREATE PROCE…
动态管理视图  sys.dm_os_wait_stats 返回执行的线程所遇到的所有等待的相关信息.可以使用该聚合视图来诊断 SQL Server 以及特定查询和批处理的性能问题. 列名 数据类型 说明 wait_type nvarchar(60) 等待类型的名称. waiting_tasks_count bigint 该等待类型的等待数.该计数器在每开始一个等待时便会增加. wait_time_ms bigint 该等待类型的总等待时间(毫秒).该时间包括 signal_wait_time_m…
sys.dm_tran_locks 返回有关当前活动的锁管理器资源的信息.向锁管理器发出的已授予锁或正等待授予锁的每个当前活动请求分别对应一行. 列名 数据类型 说明 resource_type nvarchar(60) 表示资源类型.该值可以是下列值之一:DATABASE.FILE.OBJECT.PAGE.KEY.EXTENT.RID.APPLICATION.METADATA.HOBT 或 ALLOCATION_UNIT. resource_subtype nvarchar(60) 表示 re…
<Replication的犄角旮旯>系列导读 Replication的犄角旮旯(一)--变更订阅端表名的应用场景 Replication的犄角旮旯(二)--寻找订阅端丢失的记录 Replication的犄角旮旯(三)--聊聊@bitmap Replication的犄角旮旯(四)--关于事务复制的监控 Replication的犄角旮旯(五)--关于复制identity列 Replication的犄角旮旯(六)-- 一个DDL引发的血案(上)(如何近似估算DDL操作进度) Replication的…
sys.dm_db_wait_stats 返回在操作期间执行的线程所遇到的所有等待的相关信息. 可以使用此聚合视图来诊断 Azure SQL Database 以及特定查询和批处理的性能问题. 执行查询期间的特定等待时间类型可以说明查询中存在瓶颈或失效点. 同样,如果服务器级的等待时间较长或等待计数较多,说明服务器实例内交互查询交互中存在瓶颈或热点. 例如,锁等待指示查询争用数据:页 IO 闩锁等待指示 IO 响应时间较慢:页闩锁更新指示表示文件布局不正确. 列名 数据类型 说明 wait_ty…
锁分区技术使得SQL Server可以更好地应对并发情形,但也有可能带来负面影响,这里通过实例为大家介绍,分析由于锁分区造成的死锁情形. 前段时间园友@JentleWang在我的博客锁分区提升并发,以及锁等待实例中问及锁分区的一些特性造成死锁的问题,这类死锁并不常见,我们在这里仔细分析下.不了解锁分区技术的朋友请先看下我的锁分区那篇实例. Code(执行测试脚本时请注意执行顺序,说明) 步骤1 创建测试数据 use tempdb go create table testdlk ( id ,) p…
在锁与事务系列里已经写完了上篇中篇,这次写完下篇.这个系列俺自认为是有条不紊的进行,但感觉锁与事务还是有多很细节没有讲到,温故而知新可以为师矣,也算是一次自我提高总结吧,也谢谢大伙的支持.在上一篇的末尾写了事务隔离级别的不同表现,还没写完,只写到了重复读的不同隔离表现,这篇继续写完序列化,快照的不同隔离表现,事务隔离级别的总结.最后讲下事务的死锁,事务的分布式,事务的并发检查. 一. 事务隔离不同表现 设置序列化 SET TRANSACTION ISOLATION LEVEL SERIALIZA…
Windows 实现TCP/IP 协议也是建立在上一篇博客的OSI 基础之上的. 用户态是由ws2_32.dll 和一些其他服务提供者的 dll 共同实现,当中ws2_32.dll 是一个框架.能够容纳非常多的服务提供者,这些服务提供者事实上就是各种协议的实现者,如比較常见的有 TCP/IP 协议,IPX 协议.而 TCP/IP 协议的服务实现是由 msafd.dll 和 mswsock.dll 来完毕. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\S…
HelloWDM例子编译完成之后,在win7下安装显示 查看setupapi.dev看到如下信息 这个C:\MyDriver_Check目录完全不是我指定的,我放到c盘根目录下 查看inf [SourceDisksFiles] HelloWDM.sys = 1,MyDriver_Check, 把该字段修改为 HelloWDM.sys = 1 即可在win7下正确安装,这里“MyDriver_Check”指定了子目录,不过笔者试过在XP下面,没有修改inf安装的话,会弹出一个选择框让你重新选择.s…
#!/usr/bin/python # Filename: using_sys.py import sys print 'The command line arguments are:' for i in sys.argv: print i print '\n\nThe PYTHONPATH is', sys.path, '\n' 输出结果如下 它如何工作 首先,我们利用 import 语句 输入 sys 模块.基本上,这句语句告诉 Python,我们想要使用这个模块.sys 模块包含了与 Py…
离线状态下,设置按钮的不可用.通过改变资源字典的值. App.xaml 文件下添加如下 xmlns:sys="clr-namespace:System;assembly=mscorlib" <sys:Boolean x:Key="IsOnline1">true</sys:Boolean> App.xaml.cs 下添加 public App() { //StartIsOnlineCheck(); this.Startup += App_Sta…
Oracle中如果不知道system,sys用户的密码后可用如下方法找回: 首先以一个普通用户等入数据库: 在SQL*Plus中执行如下命令: SQL>connect/as sysdba (也可以以如下方式连接:SQL>connect internal) SQL>alter user sys identified by sys; (回车后用户sys的密码会更改为sys) 同理可以更改system密码 SQL>alter user system identified by syste…
转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统信息不是针对某个特定进程的,而是能够在整个系统范围的上下文中使用.可以使用的文件随系统配置的变化而变化.命令procinfo能够显示基于其中某些文件的多种系统信息.以下详细描述/proc下的文件. /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内…
Python退出程序的方式有两种:os._exit(), sys.exit() 1)os._exit() 直接退出 Python程序,其后的代码也不会继续执行. 2)sys.exit() 引发一个 SystemExit异常,若没有捕获这个异常,Python解释器会直接退出:捕获这个异常可以做一些额外的清理工作.0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获. exit() 跟 C 语言等其他语言的 exit() 应该是一样的. os._exit() 调用 C 语言的 _exit…
Python退出程序的方式有两种:os._exit(), sys.exit() 1)os._exit() 直接退出 Python程序,其后的代码也不会继续执行. 2)sys.exit() 引发一个 SystemExit异常,若没有捕获这个异常,Python解释器会直接退出:捕获这个异常可以做一些额外的清理工作.0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获. exit() 跟 C 语言等其他语言的 exit() 应该是一样的. os._exit() 调用 C 语言的 _exit…
解决fedora下一些使用问题 一 解决fedora下无法使用Fn+功能键来调整亮度的问题 在fedora下,背光的配置参数在/sys/class/backlight文件夹下,根据不同的显卡,有不同的子文件夹,我的电脑时A卡,所以是radeon_bl0文件夹,在此文件夹下找到一个brightness这个文件内的数字最大值为250,可以根据需要设置不同的数值来手动修改亮度.具体的文件位置视不同的电脑硬件和系统版本不同,但是基本都在brightness文件内. 二 解决fedora笔记本触摸板不能点…
Sys模块函数之多,我只能选取自己认为比较实用的一些函数列在此处.借马云找员工的说法,"找最合适的而不是最天才的",这句话,我个人觉得在很多方面都能适应,学习也不在话下.Sys模块功能的确很多,但我们应该将重点放在那些功能才是最适合我们的,为此,我列的这些函数,就是我认为比较适合我以后开发的函数. (1)sys.argv 很多人会想,我如何给我的程序在外部传递参数呢?这个,就可以实现.如: Tesy.py Import sys Print sys.argv[number] 一般情况下,…