Michael Chen's Blog
World in my view is a word of my view

努力随流水,心沉比泰山

10 May 2004

早在4月份就预料到这个结局。

4月份拿到了一千二百万条的一个数据库,在那个时候我的技术探索已经做的差不多,开发计划已经确定,预计在8月底结束整个项目。这个巨型的数据库(2G)结束了我的美梦。按照需求,系统允许最长的操作响应时间是一分钟。我花了半夜的时间把这个庞然大物放入数据库,建立索引。系统初始化的时间都都花掉了30多分钟,中间任何一个步骤的操作都在几分钟的范围……真是……郁闷透底。

我开始尝试各种优化策略。比如Oracle的实体视图。能够优化的也不过是将时间减少一半或者更少而已。优化虽然提高了50%以上的性能,但是对于需求还差得很远。对于那些不具备Matirial View的数据库,我的系统该如何优化?难道要求客户换数据库?

最终我不得不痛苦的承认,项目的基础都是错的。将所有的运算保存到内存中而不是文件中,一开始就是错的。如果继续做下去,项目将只能是一个脆弱的、不堪一击的小东西。

我想到了重新实现存贮层。很认真的考虑之后,决定放弃了。设计一个新的多用户的、并发的、事务安全的、大容量的存贮结构就等于重新做一个数据库。我再怎么意气风发也不至于不知道一个数据库应该由多少个什么层次的人完成。

承认失败是一件很痛苦的事,我未能免俗。从去年9月到现在,8个月时间里,每天工作十几小时,很少享受周末。从对数据分析一无所知到准备开发,我学习了大量的资料、规范,做了大量的技术探索。有一段时间居然像《指环王》中的Froto,在接近魔多的路上说,我已经记不起夏尔的花香,记不起食物的味道……

现在,我站在北极点上

哪里都是南方,却没有任何方向

blog comments powered by Disqus
Loading

All right reserved, 2004 - 2012

Powered by Github

关于我 | 全部文章 | Atom Feed