Tag Archives: tom

书评《Oracle 9i & 10g 编程艺术》

Expert_Oracle_Database_Arch.jpg

这是一篇迟到的非标准书评。收到人邮社刘江老师寄来的《Oracle 9i & 10g 编程艺术》好久了,只不过绝大多数时间这本书都不在我手旁,也就没时间读完。好多同事抢去看,此书受欢迎程度可见一斑。

去年我就曾经写过一篇关于这本书的小道消息Thomas Kyte 大叔 早年被引入的 Oracle Expert one-on-one(《Oracle专家高级编程》)可以算得上对国内 DBA 圈子影响最大的一本图书,在市场上也销售得不错。不过那本书的一大问题是翻译质量比较糟糕,副作用是带来了不少辞不达意的翻译术语,比如”封锁”,该书糟糕的装帧质量也让不少读者比较痛苦,好多人都是干脆把书拆开,自动分成上下两册来看。

我曾经给刘江老师出过不少馊主意,其中最馊的一个就是怂恿他干脆重新出版一次《Oracle专家高级编程》(因为那时候 Wrox 的大部分图书都到了 APress 的旗下,版权是能搞定的),但他担心该书出版的时间太久,市场上没有后劲了,也就作罢。因为我一直订阅 Tom 的 Blog, 也算是第一时间知道他在进行新书的写作,就把这个消息通知了刘江,英文版本出版后没多久,刘老师告诉我邮电出版社拿到了 Tom 新作 Expert Oracle Database Architecture 的翻译版权。当时这本书应该也引起了不少国内出版社的注意,但最终”得手”的是邮电社,一本好书会被有眼光的编辑一直盯个好几年。下手的时候果断也是必要的。

说了这么多,还没说到这本书到底内容如何。“这本 Expert Oracle Database Architecture 是 Tom 在 《Oracle专家高级编程》 的基础之上的解构之作,内容上的变动相当大。不但加入了最新的 10g 的内容, 还作了很多技术补充” ,这里我要纠正一下这个”解构”,应该套用现在的流行技术词汇”重构”,完全是一本”重构”的图书,针对图书内容的重构

“锁”与”并行”这两个主题分别独立成章叙述,前一章是后一章必不可少的铺垫。要我推荐章节的话,应该首推 第 8 章 事务,不只是 DBA 要看,开发人员、架构师更要看。要设计一个高可靠、可扩展的应用,架构师甚至都要比 DBA 清楚事务。把复杂的东西用人人可作的代码用例展示出来,这是 Tom 拿手的本事。所以,看起来会让你不那么累。

最大的变化是 第十二章 数据类型,这是完全新增的一个章节,这一章中关于时间相关的数据类型讲述非常精彩。另外一个有趣的话题是 LOB,尽管现在用 LOB 字段的场景可能不那么多了,但是用过的人怕是多少都吃过这东西的亏。

如果非要挑毛病的话,我觉得对 分区表的讲述可能不够那么深入,以 Tom 的功力,应该对分区多讲一点,随着计算环境的变迁,OLTP 怕是都已经纷纷采用分区功能了。

翻译上基本上没啥大毛病,很多细节注意的都比较到位,记得 “Lock” 、”Latch” 翻译做什么,还单独做过讨论来着。甚至 前言中的 “Think different” 应该怎么翻译,也做过仔细推敲。从阅读体验来看,这本书的装帧质量很不错。排版改进非常非常多,虽说没办法和英文原版比,但是相比国内技术类图书,应该是不差的了。

如果你需要一本纸版的Oracle 图书,不妨考虑一下这本《Oracle 9i & 10g 编程艺术》。如果你已经买了这本书,多读几遍。书的价值不是由定价体现出来的,而是由你从这本书里学到多少东西决定的。最后,这些话…一般人儿我不告诉他……

EOF
补充: 下载部分英文章节试读.

Tom 的经验谈

Tom 是怎么成为一个 Oracle 数据库大师的?在这里有所提及:

it took me 16 years of “all about oracle” to be here. started as a programmer/analyst on the mainframe writing PL/I code against SQL/DS and DB2 (PL/I is still by far the coolest language I’ve ever used). That started my SQL career. I bought Oracle version 5.1.5c from Dr. Dobbs Journal for $99.00 in the late 80’s and started building systems with it. Then I was “forced” to use
Sybase, Informix, Ingress, Gupta SQLBase and other “rdbms’s” as well.

阅读/学习基本理论和掌握产品文档是必要的一步:

I also learned all about databases then — read the theory (like Jim Grays Transaction Processing Book, not really light reading but taught me lots of stuff). Then read the practical (the reference manuals).
So I spent six years as a developer/dba. Even though I was a coder — i found doing things in the database to make tons more sense then writing tons of code to do the same. I actually quit my first job after six years soley for the reason that they wouldn’t let me exploit the software they paid so much for (they were so into this “generic database”, the “database is a commidity”
concept that they had me coding our own two phase commit protocol, our own stored procedure language, our own compilers for the same, our own sql parser — it was frightening. Funny thing is — I meet with customers all of the time
still doing just that!)
the first six years is what really did it. on the job training, reading — tech books (egads — the manuals!) lots of magazines (i was a magazine junkie, dr dobbs, the c programmers journal, you name it).

继续阅读

此文作者:, 位于 Web 分类 标签: on .
转载须以超链接形式标明文章原始出处和作者信息及版权声明.