代码改变世界

随笔分类 - 数据库

【原】StreamInsight 浅入浅出(六)—— Debugger

2010-12-20 11:11 by 拖鞋不脱, 1806 阅读, 收藏, 编辑
摘要: 对于 StreamInsight 系统,由于对事件的处理查询都是异步进行的,输入输出很难进行时序上的对应监测,所以普通的基于代码的 Debug 和 Watch 显得不那么有意义。于是微软随 StreamInsight 系统提供了一个好用的图形化调试工具 StreamInsight Event Flow Debugger。 这一工具的主要特点在于: 图形化界面,足够直观。有点类似 SQL Server 的查询计划界面,将一个复杂的查询拆分成多个基本查询,并以列表形式展现每个查询中事件的状态与取值。 支持跟踪、回溯,可以查看一个事件的初始状态以及演变过程。 支持即时调试,也支持日志调试。日志调试能 阅读全文

【原】StreamInsight 浅入浅出(五)—— LINQ 语法

2010-11-23 16:29 by 拖鞋不脱, 2264 阅读, 收藏, 编辑
摘要: 在上一篇文章中说过,在构建查询模板时,用的语言框架是 LINQ 语言框架,关于 LINQ 的基本概念,可以参看 MSDN http://msdn.microsoft.com/zh-cn/library/bb397926.aspx,总之就是采用了一种类似 SQL 的方便快捷的语法,用于对数据集进行查询、筛选等一系列操作的语言框架。 关键词 虽然 LINQ 语法总体上是类似的,但在不同的系统下,还... 阅读全文

【原】StreamInsight 浅入浅出(四)—— 例子

2010-10-29 14:07 by 拖鞋不脱, 2566 阅读, 收藏, 编辑
摘要: 对于StreamInsight这种不是很线性的架构,最好还是直接拿出来一个例子,简单但完整的把流程走过一遍,更能看清所谓“流”、“事件”、“适配器”之类到底是什么东西,有什么关系。 官方例子下载地址:http://go.microsoft.com/fwlink/?LinkId=180356,这里就理一遍其中最简单的例子:TrafficJoinQuery 场景描述 这个例子的场景可以描述为:有... 阅读全文

【原】StreamInsight 浅入浅出(三)—— 适配器

2010-09-08 13:56 by 拖鞋不脱, 2016 阅读, 收藏, 编辑
摘要: 适配器,顾名思义,就是将一种格式的数据转换成另一种格式符合操作需求的数据。在 StreamInsight 程序中,适配器起着举足轻重的作用,它们掌管着系统的入口和出口,控制着事件流的运动。没有适配器, StreamInsight 系统只是由查询模板支起来的空骨架,是适配器让整个系统运动起来的。 适配器的分类 适配器可以以多种方式分类: 1.以适配器功能分类: 输入适配器:将外部的数据转换成... 阅读全文

【原】StreamInsight 浅入浅出(二)—— 流与事件

2010-09-06 14:52 by 拖鞋不脱, 2726 阅读, 收藏, 编辑
摘要: 传统数据库的基本单位是数据行,而在 StreamInsight 或者说 CEP 架构中,基本数据单位是事件(Event)。在传统数据库中,数据行集合成为数据表,而在 StreamInsight 中,相对应的集合就是流(Stream),所有的查询都是针对流的。其实流中的每个基本数据其实并不是一个完整的事件,只是包含了构成一个事件的基础信息,需要经过打包才能成为一个标准的事件。 流 在 Strea... 阅读全文

【原】StreamInsight 浅入浅出(一)—— 基本概念

2010-08-23 20:01 by 拖鞋不脱, 3902 阅读, 收藏, 编辑
摘要: 最近才小小研究了下 StreamInsight 这一新鲜玩意儿,发现其中很多理念和之前接触的针对数据行的数据库操作有很大不同,鉴于相关资料实在不多,中文的更少(MSDN上的根本惨不忍读),摸索了半天也只能算是刚刚入门,写此系列文章和大家探讨。 简介 StreamInsight 是 SQL Serve 阅读全文

【原】Sql Server性能优化——Slide Window

2010-03-29 19:14 by 拖鞋不脱, 3345 阅读, 收藏, 编辑
摘要: 虽然对数据库进行分区本身就能提高查询的性能,结合压缩,也能减少每次查询的IO。但如果数据持续增长,过于久远的历史数据就成了一个包袱,它们从来不在查询结果中出现,却或多或少的影响着每次查询的时间,成了一个挥之不去的阴影。此外,由于一个分区表的分区是有上限的(在2005中这一上限是1000),我们也并不能在一张表上一直分区下去。所以在这种情况下,我们一般需要同时拥有两张表,一张保存了最近的数据,用来应... 阅读全文

【原】Sql Server性能优化——Partition(管理分区)

2010-03-09 10:47 by 拖鞋不脱, 4512 阅读, 收藏, 编辑
摘要: 正如上一篇文章SqlServer性能优化——Partition(创建分区)中所述,分区并不是一个一劳永逸的操作,对一张表做好分区仅仅是开始,接下来可能需要频繁的变更分区,管理分区。 在企业管理器中,虽然有“管理分区”的菜单,里面的内容却可能与你的预想不同,这里并没有提供直接对分区进行操作的方法,所以一些普通的操作,比如“增加分区”、“删除分区”之类的操作就需要通过脚本实现了。 增加分区(Spl... 阅读全文

【原】Sql Server性能优化——Partition(创建分区)

2010-02-23 14:54 by 拖鞋不脱, 14847 阅读, 收藏, 编辑
摘要: 和压缩(Compression)相比,数据库分区(Partition)的操作更为复杂繁琐。而且与Compression一次操作,终身保持不同,分区是一项需要长期维护周期变更的操作。 分区的意义在于将大数据从物理上切割为几个相互独立的小部分,从而在查询时只取出其中一个或几个分区,减少影响的数据;另外对于置于不同文件组的分区,并行查询的性能也要高于对整个表的查询性能。 事实上,在SQL Serve... 阅读全文

【原】Sql Server性能优化——Compression

2010-01-19 17:13 by 拖鞋不脱, 4593 阅读, 收藏, 编辑
摘要: 执行SQL查询时,主要的几个瓶颈在于:CPU运算速度、内存缓存区大小、磁盘IO速度。而对于大数据量数据的查询,其瓶颈则一般集中于磁盘IO,以及内存缓存。那么为了提高SQL查询的效率,一方面我们需要考虑尽量减少查询设计的数据条目数——建立索引,设立分区;另一方面,我们也可以考虑切实减少数据表物理大小,从而减少IO大小。 在SQL Server 2008中,最新提供了一项功能“压缩(Compress... 阅读全文

【随】BIDS 怪异现象

2008-11-19 20:24 by 拖鞋不脱, 438 阅读, 收藏, 编辑
摘要: 使用随SQL Server 2005 附送的 SQL Server Business Intelligence Development Studio, 怪现象层出不穷。 Visual Studio 2005无法启动,停在启动画面假死。 2008是正常的,网上查询,大多是说VMware和VS2005冲突云云,问题是我并没有安装VMware。不过方向确定,大抵是插件的问题,就挨个删除插件,终于在删除... 阅读全文

【转】从第m条开始取n条的MSSQL语句

2008-04-28 18:20 by 拖鞋不脱, 652 阅读, 收藏, 编辑
摘要: 1. select top m * from tablename where id not in (select top n id from tablename) 2. select top m * into 临时表(或表变量) from tablename order by columnname -- 将top m笔插入 set rowcount n select * from 表变量 orde... 阅读全文

【整】char、varchar、nchar、nvarchar的区别

2008-04-14 10:49 by 拖鞋不脱, 21793 阅读, 收藏, 编辑
摘要: 对于程序中的string型字段,SQLServer中有char、varchar、nchar、nvarchar四种类型来对应(暂时不考虑text和ntext),开建立数据库中,对这四种类型往往比较模糊,这里做一下对比。 阅读全文