数据库管理
文章平均质量分 80
idber
这个作者很懒,什么都没留下…
展开
-
DB2数据库查询过程(Query Processing)----概述
引言我们知道,目前通用的数据库查询语言是SQL语言(Structured Query Language)。SQL语言也是一种编译型语言,需要SQL编译器编译后才能执行,但它与C、C++、Java等语言不同,SQL语言是一种非过程化语言,这意味着使用SQL进行操作的时候,你只需要指定你要达到什么目的,而无需指明要怎样达到目的。比如要查询EMPLOYEE的所有行,使用语句“Select * F原创 2012-11-10 14:26:45 · 8732 阅读 · 1 评论 -
DB2数据库查询过程(Query Processing)----多索引访问(Multiple Index Access)
引言考虑下面的情况:一张表T,有列C1,C2,C3,C4,C5。其中C1上有索引C1X,C2上有索引C2X,C3,C4,C5上有索引C345X。表中有100000000行数据。查询语句:Select * From T Where C1=20 And C2=5 And C3=11;前面介绍过,对于一张表,只能使用它的一个索引进行索引扫描,上面查询的三个谓词都是可索引谓词,假设这三原创 2012-11-17 15:42:15 · 3954 阅读 · 0 评论 -
DB2数据库查询过程(Query Processing)----复合索引的匹配索引扫描(Matching Index Scans with Composite Indexs)
在《DB2数据库查询过程(Query Processing)----简单索引访问(Simple Indexed Access)》一文中已经对索引访问的各种形式作了详细介绍,本文重点讨论匹配索引扫描对于复合索引的种种情况应该如何进行索引的选择。复合索引(Composite Index)索引列(搜索码)由多个表列共同组成的索引称为复合索引,相对的,索引列仅是单个表列的索引称为单列索引。原创 2012-11-17 12:58:39 · 6877 阅读 · 0 评论 -
DB2数据库查询过程(Query Processing)----简单索引访问(Simple Indexed Access)
索引对于数据库的性能有着举足轻重的作用。上一篇文章已经介绍了没有索引的情况下表扫描访问相关知识,本文讨论有索引的情况下数据库系统如何使用索引进行数据访问,内容会比较复杂,强烈建议参看《深入理解DB2索引(Index)》,理解DB2索引的结构,特别是B+树后再阅读本文,否则看起来可能会比较吃力。由于“基于索引的访问”内容比较庞杂,现在只准备介绍对于一张表使用索引的情况,不考虑多表连接的问题。分三原创 2012-11-13 16:07:43 · 5889 阅读 · 2 评论 -
DB2数据库查询过程(Query Processing)----统计信息与过滤因子(Statistics and Filter Factors)
关于统计信息和过滤因子在《DB2数据库查询过程(Query Processing)----概述》一文中已经作了大致介绍。本文再详细讨论一下。过滤因子(Filter Factor)过滤因子是一个间接参数,表示满足特定条件的行占表中所有行的比例,,记作FF(P),P表示条件谓词。过滤因子的值可以根据系统编目中的统计信息计算得出,它的主要作用是在存在多种数据访问方式的时候提供选择参考。考原创 2012-11-14 14:54:38 · 4181 阅读 · 0 评论 -
在 DB2 优化器中使用分布统计信息
在 DB2 优化器中使用分布统计信息简介为了执行查询或 DML 语句(INSERT、UPDATE、DELETE),DB2 必须创建一个访问计划(access plan)。访问计划定义按什么顺序访问表,使用哪些索引,以及用何种连接(join)方法来关联数据。好的访问计划对于 SQL 语句的快速执行至关重要。DB2 优化器可以创建访问计划。这是一种基于成本的优化转载 2012-11-17 12:50:49 · 3389 阅读 · 0 评论 -
DB2数据库查询过程(Query Processing)----表扫描与I/O(Table Scan and I/O)
表扫描开销在《DB2数据库查询过程(Query Processing)----概述》一文中已经介绍过,表扫描是数据访问方式中最简单,最低效的一种。在所有的关系型数据库中都会有这种数据访问方式,不同系统中叫法可能不同(如direct search 、 data scan 、 tables scan),由于存在不同的表共用同一个Extent的情况,有时候人们认为将这种扫描方式称为表空间扫描(T原创 2012-11-11 20:59:19 · 4897 阅读 · 0 评论 -
Linux(Ubuntu)环境下安装DB2 V10和Data Studio V3图文详解
本文详细介绍一下DB2数据库在Linux环境下的安装过程。所使用的Linux发行版是Ubuntu 12.04。DB2版本是DB2 Express-C V10.1 Linux 32位版,即DB2 V10的社区版(免费版本)。装前准备获取DB21.到IBM官网:http://www-01.ibm.com/software/data/db2/express/download.html下载原创 2012-10-26 15:45:22 · 12167 阅读 · 2 评论 -
使用Explain分析SQL
第一篇概述 如果您发现某一条 SQL 语句的运行情况比较糟。那么您该怎么做呢?DB2 提供了很多不同的工具,用来确切地发现是什么妨碍了性能。每个工具都略有不同,但是它们都会研究解释 SQL 正在执行什么的 Explain。SQL 的 Explain 通过图形化或基于文本的方式详细说明了 SQL 语句的每个部分是如何执行以及何时执行转载 2012-11-05 14:51:20 · 12146 阅读 · 1 评论 -
IBM Data Studio使用----窗口显示所有行
问题描述在使用Data Studio浏览DB2表中的数据或者查询结果时,默认都是只显示前500行:解决办法怎样才能显示所有行或者显示指定的行数呢?可以在"首选项->数据管理->SQL开发->SQL结果视图选项“中设置:如上图,默认显示的SQL查询结果集中的行数为500。在自定义设置之前先来解释一下“最大行计数”和“最大显示行计数”这两个参数。原创 2012-10-28 15:12:28 · 10199 阅读 · 0 评论 -
IBM Data Studio使用----对象创建的双引号/大小写问题以及表/列重命名
问题描述使用Data Studio进行表的创建后,对该表使用查询语句总是会出现“XXX是一个未定义的名称”的错误。如图:使用Data Studio的默认设置创建的表(非手动SQL脚本创建),无论是在Data Studio脚本编辑器还是命令行中都会出现这种错误,原因在于使用Data Studio自动建表时自动生成的DDL中会对所有的对象名添加双引号。如图:也就是说原创 2012-10-28 16:26:31 · 2974 阅读 · 0 评论 -
Ubuntu 14.04 (32位)上搭建Hadoop 2.5.1单机和伪分布式环境
一直用的Ubuntu 32位系统(准备下次用Feroda)转载 2014-10-22 18:00:42 · 7052 阅读 · 7 评论