惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
V
Vulnerabilities – Threatpost
C
Cisco Blogs
A
Arctic Wolf
L
LINUX DO - 热门话题
P
Proofpoint News Feed
Security Latest
Security Latest
AWS News Blog
AWS News Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Cisco Talos Blog
Cisco Talos Blog
L
Lohrmann on Cybersecurity
W
WeLiveSecurity
爱范儿
爱范儿
Last Week in AI
Last Week in AI
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
Security Affairs
PCI Perspectives
PCI Perspectives
C
Cybersecurity and Infrastructure Security Agency CISA
Spread Privacy
Spread Privacy
IT之家
IT之家
月光博客
月光博客
云风的 BLOG
云风的 BLOG
宝玉的分享
宝玉的分享
J
Java Code Geeks
美团技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
I
Intezer
博客园_首页
博客园 - 司徒正美
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
P
Palo Alto Networks Blog
NISL@THU
NISL@THU
Recent Commits to openclaw:main
Recent Commits to openclaw:main
有赞技术团队
有赞技术团队
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
量子位
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 聂微东
N
News and Events Feed by Topic
Webroot Blog
Webroot Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Security @ Cisco Blogs
罗磊的独立博客
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
V
V2EX
Jina AI
Jina AI

博客园 - 留不住的时光

怎样才能将XML文件导入SQL Server 2000? ERP系统模块完全解析──物料编码分章(二) ERP系统模块完全解析──主生产计划MPS MS Project 2003 安装手记 Asp中一些FSO方面的函数 我为Delphi着迷——Danny Thorpe访谈录 (转贴) 企业的含义 ERP系统模块完全解析──工作中心 『数据库系统概论』学习笔记之七 ERP中MRP运算基本名词解析 如何使MSSQL的日志文件不再增大? ERP系统模块完全解析──物料编码分章(一) [旧瓶装新酒]XML在ASP中的应用 《发布专题》发布我的WEB ERP预览 SQL语言高级技法演练 ERP系统模块完全解析──BOM分章 ADO.net 中数据库连接方式 文 档 编 制 步 骤 汉字编码知识了解
『数据库系统概论』学习笔记之六
留不住的时光 · 2005-04-16 · via 博客园 - 留不住的时光

第四章关系系统及其查询优化

摘要:
        这一章主要讲述两个内容,一是关系系统(关系数据库系统),二是关系系统的查询优化。
        关键词:关系系统、查询、优化

4.1关系系统

4.1.1关系系统的定义
        当且仅当一个系统:(1)支持关系数据库(关系数据库结构);(2)支持选择、投影和(自然)连接运算,对这些运算不必要求定义任何物理存取路径。

4.1.2关系系统的分类
        1、表式系统(不能算是关系系统)
        2、(最小)关系系统,如FoxBase、FoxPro等
        3、关系完备的系统,20世纪90年代初的多种关系数据库管理系统都属于这一类
        4、全关系系统

4.1.3全关系系统的十二条基本准则
准则0:一个关系型的DBMS必须能完全通过它的关系能力来管理数据库。这是基础。
准则1:信息准则。关系型DBMS的所有信息都应在逻辑一级上用一种方法即表中的值显式地表示。
准则2:保证访问准则。依靠表名、主码和列名的组合,保证能以逻辑方式访问关系数据库中的每个数据项(分量值)。
准则3:空值的系统化处理。全关系型的DBMS应支持空值的概念,并用系统化的方式处理空值。
准则4:基于关系模型的动态的联机数据字典。数据库的描述在在逻辑级上应该和普通的数据采用同样的表示方式,使得授权用户可以使用查询一般数据所用的关系语言来查询数据库的描述信息。
准则5:统一的数据子语言准则。
准则6:视图更新准则。所有理论上可更新的视图也应该允许由系统更新。
准则7:高级的插入、修改和删除操作。
准则8:数据物理独立性。无论数据库的数据在存储表示或存取方法上作任何变化,应用程序和终端活动都保持逻辑上的不变性。
准则9:数据逻辑独立性。当对基本关系进行理论上信息不受损害的任何改变时,应用程序和终端活动都保持逻辑上的不变性。
准则10:数据完整性的独立性。关系数据库的完整性约束条件必须是用数据库语言定义并存储在数据字典中的,而不是在应用程序中加以定义的。
准则11:分布独立性。
准则12:无破坏准则。

4.2关系数据库系统的查询优化
        注意:这里所讲的查询优化是指RDBMS自身的查询优化技术,而不是我们平常写SQL语句时的查询优化。
        关系数据库查询优化的总目标是:选择有效的策略,求得给定关系表达式的值。
一、查询优化的一般步骤:
        1、将查询转换成某种内部表示,通常是语法树。
        2、根据一定的等价变换规则把语法树转换成标准(优化)形式。
        3、选择低层的操作算法。对于语法树中的每一个操作需要根据存取路径、数据的存储分布、存储数据的聚簇等信息来选择具体的执行算法。
        4、生成查询计划。
        集中式数据库中查询的执行开销主要包括:总代价=I/O代价+CPU代价
        多用户数据库的查询的执行开销主要包括:总代价=I/O代价+CPU代价+内存代价

4.2.3查询优化的一般准则
        1、选择运算应尽可能先做。
        2、在执行连接前对关系适当地预处理。分为两种:在连接属性上建立索引和对关系排序,然后执行连接。
        3、把投影运算和选择运算同时进行。
        4、把投影同其前或其后的双目运算结合起来。
        5、把某些选择同在它前面要执行的笛卡尔积结合起来成为一个连接运算。
        6、找出公共子表达式。

4.2.4关系代数等价变换原则
        1、定义:所谓关系代数表达式的等价是指用相同的关系代替两个表达式中相应的关系所得到的结果是相同的。
        2、常用的等价变换规则:
        (1)连接、笛卡乐积交换律
        (2)连接、笛卡乐积结合律
        (3)投影的串连定律
        (4)选择的串连定律
        (5)选择与投影的交换律
        (6)选择与笛卡尔积的交换律
        (7)选择与并的交换
        (8)选择与差运算的交换
        (9)投影与笛卡尔积的交换
        (10)投影与并的交换

4.2.5关系代数表达式的优化算法
        (略)

4.2.6优化的一般步骤
        (1)把查询转换成某种内部表示
        (2)把语法树转换成标准(优化)形式
        (3)选择低层的存取路径
        (4)生成查询计划,选择代价最小的

小结:
        查询处理是数据库管理系统的核心(注意是数据库管理系统而不是我们平时写的那些查询语句哟),而查询优化技术又是查询处理的关键技术。

上山砍柴去 2005-04-16 于 博客园