詹姆斯·尼古拉·格雷 - 简介
詹姆斯·尼古拉·格雷(James Nicholas "Jim" Gray,1944年-),美国资讯工程学家。
他就读于柏克莱加州大学,1966年取得工程数学学士,1969年取得计算机科学博士。他曾于IBM、天登电脑公司和迪吉多工作。 1995年成为微软研究员。他有份开发的资料库和交易处理系统有IBM的System R、微软的Terraserver和Skyserver。他提出了资料方块、锁定颗粒等概念。他亦有份开发Windows Live Local。
詹姆斯·尼古拉·格雷 - 研究开发
格雷生于1944年,在著名的美国加州大学伯克利分校计算机科学系获得博士学位。其博士论文是有关优先文法语法分析理论的。学成以后,他先后在贝尔实验室、IBM、Tandem、DEC等公司工作,研究方向转向数据库领域。
在IBM期间,他参与和主持过IMS、System R、SQL/DS、DB2等项目的开发,其中除System R仅作为研究原型,没有成为产品外,其他几个都成为IBM在数据库市场上有影响力的产品。
在Tandem期间,格雷对该公司的主要数据库产品ENCOMPASS进行了改进与扩充,并参与了系统字典、并行排序、分布式SQL、Nonstop SQL等项目的研制工作。
在DEC,他仍然主要负责数据库产品的技术。格雷进入数据库领域时,关系数据库的基本理论已经成熟,但各大公司在关系数据库管理系统(RDBMS)的实现和产品开发中,都遇到了一系列技术问题,主要是在数据库的规模愈来愈大,数据库的结构愈来愈复杂,又有愈来愈多的用户共享数据库的情况下,如何保障数据的完整性(Integrity)、安全性(Security)、并行性(Concurrency),以及一旦出现故障后,数据库如何实现从故障中恢复(Recovery)。这些问题如果不能圆满解决,无论哪个公司的数据库产品都无法进入实用,最终不能被用户所接受。正是在解决这些重大的技术问题,使DBMS成熟并顺利进入市场的过程中,格雷以他的聪明才智发挥了十分关键的作用。
目前,各DBMS解决上述问题的主要技术手段和方法如下:
1.把对数据库的操作划分为称之为“事务”(或“事务元”,transaction)的一个个原子单位。事务是事务处理(transaction processing)的基本执行单位,即一个事务中的操作要么全部被执行,要么全部都不执行,即实行所谓all or none的原则。一个事务一般以一个“开始”语句(begin)开始,先从数据库中取出一些数据,然后进行所需的处理,最后以“提交”语句(commit)结束。如事务中发生异常,则用“异常终止”语句(abort)或“回退”语句(rollback)撤销本事务执行过程中对数据库已做的所有更新(即所谓undo),将数据库恢复到事务开始时的正确状态,以保障数据的完整性、一致性。
Jim Gray(1978年) 2.用户在对数据库发出操作请求时,系统对有关的不同粒度(granularity)的数据元素(字段、记录以至整个文件)“加锁”(10cking),加锁的数据将被暂时禁止其他用户访问(我们这里仅是一种简化的解释,实际上,根据用户对数据请求的不同性质,加锁的数据如何对待另一用户的请求,呈现复杂的情况,例如,如果加锁的数据将被修改,那是绝对禁止其他用户访问的;而如果加锁的数据只用于读出,则其他用户的读出请求还将是允许的。这由所谓“锁相容性矩阵”——lock compatibility matrix管理和控制)。操作完成后“解锁”(unlocking)。这一机制用以既保持事务之间的“并发性”,又保证数据的“完整性”。
3.建立系统运行日志(10g),记载各事务的始点、终点以及在事务中被更新过的页面的改前和改后状况(before image和afterimage),以便在系统出现散障使数据库遭到破坏时,能根据定期或不定期为数据库所作的备份(backup)加上日志中的信息将数据库恢复到系统故障前的正确状态,同时又能保留最后一次备份以来对数据库所作的修改。
4。对数据库的任何更新分两阶段提交(two-phase commit)。这是基于一个事务可能同时涉及两个不同的数据库系统而必需的,这在分布式系统中尤为重要。
上述及其他各种方法可总称为“事务处理技术”(transaction processing technique)。格雷在事务处理技术上的创造性思维和开拓,使他成为该技术领域公认的权威。他的研究成果反映在他发表的一系列论文和研究报告之中,最后结晶为一部厚厚的专著Transaction Processing:Concepts and Techniques(Morgan Kaufmann Publishers,1993,另一作者为德国斯图加特大学的A.Reuter教授)。事务处理技术虽然诞生于数据库研究,但对于分布式系统,client/server结构中的数据管理与通信,对于容错和高可靠性系统,同样具有重要的意义。
詹姆斯·尼古拉·格雷 - 著作
Jim Gray 格雷的另一部著作是The Benchmark Handbook:for Database and Transaction Processing Systems,第1版于1991年,第2版于1993年出版,也是Morgan Kaufmann出版社出版的。格雷还是该出版社“数据管理系统丛书”的主编。
格雷在数据库学术界十分活跃。国际上定期或不定期举行的一些重要的数据库学术会议如VLDB、SIGMOD上,都能见到他的身影,听到他的声音。除了在公司从事研究开发外,他还兼职在母校伯克利、斯坦福大学、布达佩斯大学从事过教学和讲学活动。1992年,VLDB杂志(The VLDB Journal)创刊,他出任主编。
格雷是ACM于1988年授予IBM的System R以软件系统奖的6位得奖人之一,其他5人是Donald Chamberlin、Raymond Lorie、Gianfranco Putzolu、Patricia Selinger和Irving Traiger。正是由于格雷在数据库技术方面的声誉,软件业中的“巨无霸”微软公司在1993年决定进入大型关系数据库市场时,才不惜用种种手段把格雷从DEC公司挖过来。因格雷不喜欢微软总部所在的多雨的西雅图,愿意留在阳光灿烂的旧金山,微软特地在旧金山开辟第二个微软研究院海湾区研究中心BARC(Bay Area Research Center),安排格雷任该研究院主管。格雷果然不负所望,领导一个研制小组开发出了MS SQL Server 7.0,成为微软历史上一个里程碑式的版本,而且也成为当今关系数据库市场上的佼佼者。
格雷是在1999年5月4日于亚特兰大举行的ACM全国会议上接受图灵奖的。格雷发表了“信息技术今后的目标”的演说(What Next一A dozen remaining IT problems),纵论了信息技术发展中有关的几个方向性问题。后来,该文经修改后在SIGMOD的会上以What Next一A dozen IT Research Goals为题再次发表。格雷的演说在对计算技术的发展作总结性回顾时认为,英国数学家巴贝奇(Charles Babage,1791—1871)在19世纪所梦想和追求的计算机今天已经基本实现;美国数学家布什(Vannevar Bush,1890—1974,曾任罗斯福总统的科学顾问)20世纪40年代所设想的“梅米克斯”MEMEX即“记忆延伸器”(MEMory EXtender)当前已接近实现;而图灵所提出的智能机器离实现还有一段距离,目前的计算机还难以通过“图灵测试”。
詹姆斯·尼古拉·格雷 - 对IT技术的研究
关键
为了完全实现上述3位科学巨人的理想,格雷呼吁美国政府要重视支持对IT技术的长期研究,认为其重要意义不亚于200年前杰弗逊(Thomas Jefferson,1743—1826,“独立宣言”的起草者,美国第三任总统,1801—1809在位)决定用1 500万美元从法国政府手中买回路易斯安娜领地(Louisiana Territory,这是位于密西西比河和洛矶山脉之间,北至加拿大,南达墨西哥湾的大块土地,面积达2 070 000km2)这一被称为Louisiana Purchase的著名历史事件,然后又派出以刘易斯上尉(Captain Meriwether Lewis)和克拉克(William Clark)为首的“发现军团(Corps for Discovery)到西部探险直至太平洋海岸,为最终形成美国如今的版图奠定了基础。格雷认为,一个好的IT长期目标应具有以下5个关键性:
Jim Gray 1.可理解性 目标应能简单表述并被人理解。
2.有挑战性 如何达到目标不是很明显的。
3.用途广泛 不只对计算机科学家有用,而是对大多数人有用。
4.可测试性 以便检查项目进展并知道目标是否已经达到。
5.渐进性 中间有若干里程碑,以检查项目进展并鼓舞研究人员干下去。
目标
在以上论点支持下,格雷提出的几个IT技术的长期研究目标如下:
1.规模可伸缩性(scalability)。
2.通过图灵测试。
3.语音到文本的转换(Speech to Text)。
4.文本到语音的转换(Text to Speech)。
5.机器视觉,能像人一样识别物体和运动。
6.个人的“梅米克斯”,可记录人所看到和听到的一切,需要时快速检索出来。
Jim Gray 7.世界的“梅米克斯”,即建立文本、音乐、图像、艺术、电影的“全集”(corpus),可回答有关的任何提问,像人类专家那样快而好地做索引,做文摘。
8.虚拟现实(格雷用了TelePresenee这个词,参见对1969年图灵奖获得者明斯基的介绍)。
9.无故障系统(Trouble-Free Systems)。
10.安全系统(Secure Systems)。
11.高可用系统(AlwaysUp)。
12.自动程序设计(Automatic Programming)。
詹姆斯·尼古拉·格雷 - 失踪
Jim Gray 但是这个一生都致力于把人与人连通起来的技术天才却在驾船出海后与所有人失去了联系。美国海岸警卫队经过几天搜索仍一无所获。
2007年1月28日早上,格雷独自驾驶一条长40英尺的游艇,驶往位于旧金山金门大桥以西25英里的费拉隆岛。他告诉家人,他要为去年过世的97岁的老母亲撒骨灰,并打算当晚返回。
早上10点左右,他的妻子和女儿接到他的电话,当时一切如常,他赞叹天气很好,有海豚在船周围游来游去,还说接下来有几个小时他将收不到电话信号。
然后,格雷消失了。到31日为止,海岸警卫队沿着太平洋沿岸,搜索了从蒙特里海湾到俄勒冈的金1.6万平方英里的海域,既没有发现格雷,也没有找到他的船。令救援人员想不透的是,格雷究竟遭遇了什么?
据说,28日天气很好,海上风小浪缓,而且能见度极佳。格雷的航程来回只有60英里,他从一条商用运河出发,穿过金门大桥后就是宽阔的海面,只需一两小时就能抵达目的地。
如果说他在路上突然出现健康问题,比如心脏病,那么他的船也应该被发现。
如果说游艇遇到水下暗礁或与鲸鱼相撞而翻船沉没,格雷在此前也应该有足够时间发出求救信号,只要附近有一条船在22至23英里的范围内,就能接受到。然而,格雷就这么消失了,没有留下任何线索。