我已经不止一次听人说O-R Mapping的技术已经很成熟了,事情真的是这样的吗?
以前我跟人说,我要优化现有的O-R Mapping引擎,提高速度,朋友告诉我,O-R Mapping是一种很成熟的技术了,没什么好研究的。我没有反驳,当我找到更好的方法把现有的O-R Mapping优化,提高数倍的性能后,另外一个朋友知道这件事后,跟我说,O-R Mapping是一个很成熟的技术,你能够提高数倍的速度,原来的设计一定很烂。
在我看来,他们的想法都不正确。O-R Mapping一直以来存在一个难题,就是速度,这个问题没有解决之前,就不能说O-R Mapping的技术已经成熟了。O-R Mapping还存在另一个问题,就是使用的方便性。Entity Bean在性能和易用性方面都做得很差,Hibernate也做得不好,听说TopLink性能不错,但应该也不会太好。我看过TopLink的一些例子,觉得其接口不直观。
现在O-R Mapping的产品处于战国时代,群雄无首。用徐少春的话来说,所有的都是小猴子,还没有出现一个大金刚,。。。
我希望能够在这个方面有所突破,最终造就一个大金刚!!

文章来源:
http://www.cnblogs.com/jobs/archive/2004/12/24/81643.html
Hibernate 3作了一些改进,改进了一些原来很显而易见的缺点。例如加了抽象语法树,但是在Hibernate 3.0 Beta1中,感觉还是有些不大成熟。从代码可以看出,Hibernate 3.0 Beta1的HQL AST使用了antlr,我向来不大喜欢这种使用yacc、antlr等生成的文法分析和AST。
ast部分的代码是josh提供的,看来gavin并不熟悉文法分析等编译技术,ast是否能够很好发挥作用,现在还难说...
在ObjectSpaces中,提出了两种查询分类:Object Query和Data Query。这种提法很好的,Object Space的一些思路是很好的,可惜这个项目不知道为什么取消了。
我认为HQL,抽象得不好,他引入了一种无需写连接条件的连接NATURAL JOIN,其实连接条件在元数据中描述了。我认为这种做法是很不好的!

文章来源:
http://www.cnblogs.com/jobs/archive/2004/12/23/80812.html
最近安装了My Sql 5.0.1,完全是图新鲜而安装的。发现原来的程序跑不了了,追查的结果是,MySql在5.0中修改了Show Table Status的返回结果。
原来Show Table Status返回的数据中包含一个列TableType,在5.0中没有了这一个列,郁闷啊。

文章来源:
http://www.cnblogs.com/jobs/archive/2004/11/10/62422.html
今天安装了PostgreSQL 8.0.0 Beta 4,感觉似乎不错。PostgreSql 7.x需要安装模拟器才能够在Windows上运行的,在8.0中,直接支持Windows了。
下载地址:
http://www.postgresql.org/news/235.html
他的JDBC驱动程序从这里可以获得:
http://jdbc.postgresql.org/
postgresql的JDBC驱动程序似乎写得挺不错的,有专门针对大对象的接口。
PostgreSQL本身就附带图形管理工具,不是很好用,但也不算太差。如下面的截图:


文章来源:
http://www.cnblogs.com/jobs/archive/2004/11/01/59428.html
大数据量迁移的一些心得
最近迁移了一个大约30G的SQL SERVER 2000的数据库到DB2 8.1。以下为迁移的工作心得:
1、在大表的迁移中,不要因为图快而先迁移数据然后建立主键索引。因为很有可能系统没有足够的资源完成这样的操作。我在迁移超过400万行记录的表时,等迁移完数据后,再建立Primary Key时,提示资源不足而出错。
2、插入数据可以使用DB2的一个特色功能,一个Insert语句,可以带多个Values。
INSERT INTO T (F1, F2) VALUES (?, ?), (?, ?) , (?, ?), (?, ?), (?, ?)
这样的方式,要比addBatch的方式要快。
3、主表和从表的外键关联问题
例如主表为A,从表为B。
TABLE A (
A1 VARCHAR(50)
)
TABLE B (
B1 VARCHAR(40),
CONSTRAINT Fk_B FOREIGN KEY (B1) REFERENCES A (A1)
)
外键 Fk_B (B1) REFERENCES A (A1)
其中A表数据:
A1
'aa'
'bb'
B表
'Aa'
'bB'
这在SQL Server中,缺省的建库不区分大小写,它是合法的。迁移到DB2中时,由于库是大小写区分,出现错误。
建议:在SQL Server中,我们直接使用区分大小的选项建立数据库,与所有的支持的数据库一致。这样我们的程序更容易发现多数库支持的错误。
4、海量数据库的迁移工作耗时很长,建议以后规划这类工作时,给予更多的时间,否则很容易出现延迟或者无法完成任务的情况。

文章来源:
http://www.cnblogs.com/jobs/archive/2004/10/03/48683.html