中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> IBM专区 > DB2 > 性能
专家访谈: Shawn Bay
作者:佚名 时间:2005-08-10 17:30 出处:互连网 责编:小渔
              摘要:专家访谈: Shawn Bay

Shawn Bay

2003 年 10 月
有关 Shawn Bay的采访。在本文中他阐述了有关数据库行业的一些观点以及如何将 DB2 用作商业智能解决方案。

Photo: Shawn Bay

DB2DD:能否谈谈您的工作经历以及如何开始参与 DB2 方面的工作吗?

Bay:我从事数据库驱动的商业智能系统的开发已经超过 15 年,曾经参与了一些最早的大型数据仓库和数据挖掘项目。在这些项目中,我们要求速度、可靠性以及效率。因此,我经常与 DB2 打交道。自从 DB2 率先提供对象—关系功能,我们就使用它来开发 Yamaha Global Jukebox。鉴于我在商业智能方面的丰富经验,IBM 请我来配合他们的商业智能策略。

在过去的几年中,我一直通过 eScholar LLC 将商业智能方面的功能提供给美国的学校。eScholar LLC 是一个综合数据仓库,学校通过使用它分析一些复杂数据来帮助学生学习。DB2 是它的开发平台。在拥有 eScholar 使用权的 600 多个学区中,大部分学校是基于 DB2 运行该应用。学校使用 eScholar 分析学生的综合评分、出勤、等级、纪律及其他 20 多种收集的关于学生表现的数据。这使老师能够确定每个学生需要哪种类型的帮助。现在,通过使用 eScholar,教育工作者们正为学生提供更加个性化的教育。

DB2DD:您必须将 DB2 的优点“推销”给那些并非很懂技术的购买者。您会如何向他们介绍呢?

Bay:我发现向商业智能方面的顾客介绍 DB2 的优点更容易些。因为这类应用程序给数据库带来很多困难,却唯独使 DB2 大放异彩。

数据管理任务的连续性
事务的执行

执行事务一直以来就是现代数据库工作的核心。毕竟,如果不能保持数据的更新及可靠性,那谁会关心数据库的其他功能呢?在传统领域中,90% 以上的数据库工作都是执行事务,IBM 一直致力于 DB2 优化器的高级智能性。虽然在实际环境中,许多人都对 DB2 的优化不以为然,但是考虑到更智能的优化器确实可以使事务更快地执行,并且可以减少程序员和 DBA 的工作量,我对这种表现出来的不以为然感到很惊讶。对于这种态度,我认为至少有两个原因:

  • 在事务环境中,非智能优化器的不足可由额外的硬件来弥补(无巨大代价)。
  • 将智能优化器与非智能优化器并行比较十分困难,也很少有人这样做(不可见)。

在事务环境中,IBM 非常强大,然而经验告诉我很少有客户真正欣赏到了 DB2 的与众不同。

 

数据仓库与即席查询

在客户越来越频繁使用的决策支持环境中,智能优化器与非智能优化器的差异日益清晰。因为即席查询原本就是不可预测的,也不可能采用手工优化或全部通过“仅仅增加硬件”来解决。

15 年前,也就是实施数据仓库系统的时候,我就认为每个人都应该推崇有效的优化器。那个时候,我开始意识到数据仓库的创建并不标准,大多数人都不关心优化问题。随着时间发生了改变。现在,大多数公司都拥有数据仓库,而且他们都很关心速度问题。我觉得有趣的是很多客户仍然没有意识到速度来自于优化。

在过去数据仓库发展的几年中,产生了许多提高速度的新方法,如位图索引、显形图、聚合导航以及 OLAP 数据结构。现在逐渐清楚的是,优化是连接这些技术的关键。为了充分利用显形图、聚合感知以及新的索引类型,优化器必须要理解它们,或者由应用程序开发者来了解如何及何时使用它们(这样做就抹杀了数据库的一大优点)。IBM 确信优化结构可以包含所有新的数据库技术。这意味着特征都在那里并且易于使用。

集成的数据挖掘与统计功能

除了新的数据类型和索引带来的挑战,现在数据库正执行更加复杂的操作。DB2 现在能执行数据挖掘及适合于数据库的统计函数。例如,DB2 开发者园地中 Bob Lyle 关于 OLAP 函数的文章就说明了这一点。目前,优化器需要发展全新层次的智能化来跟上这些功能。有些公司根据当前客户交易的执行情况,使用 DB2 来实时地 计算客户未来行为发生的可能性。这要求数据库分析历史数据并能足够快速地执行复杂计算以跟上交易流。那就需要优化。

返回 Shawn Bay 的 Q & A

DB2DD:您为何认为商业智能应用程序会不同呢?

Bay:我来谈谈我是如何看待数据库的总体作用以及商业智能和其他高级数据库用户又是如何改变其工作本质的。

首先,看看为何要使用数据库。数据库是驱动许多日常事务的引擎,它们处理命令,存储 web 页面并响应我们的请求。既然 SQL 数据库的几乎所有单个功能都可以在一个数据库中实现,为何还要开发那么多的数据库呢?

SQL 数据库有以下两个无法比拟的优点:

  • SQL 是一种描述任务的公共语言。
  • 优化,内在智能可识别有效存取路径及执行数据操纵。

 

公司看中上述两点而使用数据库的同时,又增加了分析、操纵及集成数据的需求。他们希望在不牺牲标准化和速度的条件下,增加许多新东西。

DB2DD:您认为客户最忽视 DB2 的哪个方面?

Bay:恐怕是优化。遗憾地讲,除了开发精英之外,许多人甚至包括一些数据库销售商都没有考虑优化问题。由于应用朝着处理更复杂和涵盖内容更丰富的方向发展,使得优化比在初级的事务处理系统中更加重要也更加难于实现。

DB2DD:DB2 是如何的与众不同呢?

Bay:为了满足增长的各类需求,数据库销售商竭力从语言和优化两方面扩展产品。这实际给他们制造了一个窘境:如果他们仅仅加强优化功能,似乎不足以提升产品;但如果他们扩充 SQL,又可能危及兼容性问题,这种结果在销售情况中更易反映。有些情形下,那些扩充 SQL 的销售商就意识到了其负面影响。IBM 致力于为优化构建一个坚实基础,并在为此花费资金。虽然并非对所有人都具吸引力,但这样做是必要的也是有效的。

DB2DD:您指的是什么?有什么花费呢?

Bay:通过提高优化器的智能化就可以增强数据库功能而无需改变 SQL。因此,产品一经安装,客户就可以从中受益。IBM 从一开始就致力于为优化构建最坚实的结构,而基于成本的优化就是关键基础之一。他们还致力于构建越来越巧妙的优化器。现在,这些成果已在基准和原始性能中体现。在出售产品的同时也给客户带来了不可估量的价值。当数据库执行涉及到高级内容和复杂数据操纵的任务时,优化的优势就体现出来了。

DB2DD:对于高级内容和复杂数据操纵,优化为何变得如此重要呢?

Bay:优化器一直就是人们在应用程序中使用数据库而非文件系统的一个关键原因。SQL 数据库做两件事:1)通过规定用标准符号( SQL )书写命令,从而理解程序员的请求。2)无需程序员来确定最佳存取路径。过去,对于少数几个表中的数据操纵,由程序员来确定最佳路径似乎是合理的。但 SQL 数据库中的优化器能使这一切足够快速且更加容易。因此,这个任务就留给了数据库。这种做法或许不能算是对优化的一个巨大支持,但却足够产生一个数万亿美元的产业。

随着数据库包含的内容的演变,程序员能够确定最佳存取路径的可能性已经减小了。如果您能够优化几个表的连接,且这些表包含了从 XML 到长文本的所有数据类型,那么您很可能是在 IBM 的优化器小组中工作。即使您没有,也应该加入。

此外,现在使用的 B-tree 索引也不能满足新型复杂内容的要求了。一个单表通常有几种不同类型的索引。只有非常智能的优化器才能利用索引的最优组合。

DB2DD:为何 DB2 优化器如此出众?

Bay:IBM 投入了大批的专家用多年时间确定最佳数据存取的规则与过程,并使 DB2 用户透明地使用这一切。正是通过这样,IBM 为客户提供了惊人的服务,从而为他们今天的大放异彩打下了基础。

IBM 永远都是优化方面的领先者并且还正在加速领先的进程。这仅仅是为了赢得基准测试吗?不。是为了让那些有价值的功能发挥作用。空间数据、XML、图像以及文本等等的集成十分有用,但是若没有优化器来理解这些内容,数据库就只能提供一点点价值。IBM 在 DB2 中加入智能化,使得 DB2 率先能够理解数据并对其执行有效的操纵。

IBM 选择将智能化加入优化器使其能处理所有的数据类型。这是唯一确保涉及到多种数据类型的查询能够被合理优化的方法。众所周知,没有什么能阻止用户提出涉及所有数据类型的请求命令。由于 DB2 进行了综合性优化,它就很可能做出正确响应。DB2 一直在改变,它本身及其优化技术都将会比现在更出色。

DB2DD:DB2 的方案与其他的有何不同呢?

Bay:除了给客户提供一个集成的解决方案,一些销售商还将功能拆分到不同的产品中。对于某些拆分的产品,客户身上的负担与日俱增,而非减少。然而在很多情况下,我无意识地就从 DB2 中得到了需要的功能。但对于其他销售商,我就得费力参与整个评估、采购以及迁移——伤脑筋!

DB2DD:您能举例说明优化是如何在不同的数据管理任务中发挥作用的吗?

Bay:时间证明,随着给数据库分配的复杂任务越来越多,智能优化器的价值也以指数形式递增。让我通过介绍包含了从传统的事务到现在的复杂对象及数据库超大工作量的数据管理的 连续性来加以解释。

DB2DD:您似乎一直在关注通用的数据处理。但诸如文本搜索引擎,OLAP-only 数据库等等这些专用的数据库引擎又如何呢?也能提供卓越的性能吗?

Bay:当谈论优化时,我们当然要考虑专用的数据库引擎。针对特殊目标,它们可能提供卓越的性能。我们正看到 DB2 稳步地将这些性能加入自身的引擎。这是一个伟大的策略。DB2 不可能在任意性能上超过所有的专用引擎,但长远地看,它将取得最终的胜利。一般情况下,客户需要一个标准数据库而非专用的。在过去多年中,这种动态像地球引力一样将越来越多的任务拉向 DB2。随着 DB2 功能的不断完善,这种“引力”又将各种应用程序拉向 DB2。

DB2DD:采用专用引擎是智能优化的另一个选择吗?

Bay:某些情形下,答案是肯定的。如果只是进行一维文本搜索,您可以利用一些专用技术。然而,开发者在使用专用的数据库引擎之前就必须明确请求数据的性质。随着业务环境的不断演变,进行这种预测已经越来越不可能了。

DB2DD:您认为广大用户将会在日常工作中了解到优化的重要性吗?

Bay:很可能不会。优化应该是不可见的。客户期待高速性能,并且现在已经从 DB2 中获得了。随着我们的不断发展,从 DB2 中获取高速性能仍然很容易,然而从其他公司获取该性能则可能会更加困难。IBM 中那些让优化器功能卓越的人,走在大街上不会如同运动明星一样被人认出来,但我想他们也并不期待如此。我想他们满足于这样静静地让我们的生活变得更美好。

关于作者
Shawn Bay 目前正致力于通过 eScholar LLC 将商业智能的强大功能提供给 K-12 学校。此外他还从事一些演讲、设计及策略制定方面的工作。可通过 sbay@escholar.com.与 Shawn 联系。
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有