DB2 与 PostgreSQL 与 SQL Server
有人用过这三个数据库吗?你和他们有什么经验?PostgreSQL 对于一个项目来说看起来很诱人,但我很想了解更多关于它的信息(我们是 .NET 商店).我还听说很多人对 DB2 感到满意.
Has anyone used all three of these databases? What are your experiences with them? PostgreSQL looks pretty tempting for a project but I'm curious to learn more about it (We're a .NET Shop). I've also heard of quite a lot of people being satisfied with DB2.
推荐答案
我在一个非常大的组织工作,该组织主要在 Linux (Red Hat) 上使用 DB2.我们有许多大型数据库,并研究了迁移到其他 RDBMS 解决方案,例如 Oracle 和 SQL Server.我在 SQL 服务器端做了很多工作.
I work in a very large organization that uses DB2 primarily on Linux (Red Hat). We have a number of large databases and have investigated moving to other RDBMS solutions, such as Oracle and SQL Server. I did a lot of work on the SQL server end of that.
我们发现 SQL Server 的性能要好得多,并且比 DB2 需要的调优更少,尤其是当表的记录超过 1M 时.至少可以说,HADR 也很困难且体积庞大.
We found that SQL server performs much better and requires less tuning than DB2, especially when tables frow larger than 1M records. HADR is also difficult and bulky, to say the least.
我们发现了 DB2 和 SQL Server 之间的许多差异,这里不一一列举.我负责从一个平台到另一个平台的代码转换背后的大量工程,不能说我发现 DB2 中的任何东西都优于 SQL Server,但确实发现了很多我更喜欢 SQL Server 的地方.以下是我的一些想法:
We found many differences between DB2 and SQL Server, and too many to list here. I was responsible for doing a lot of the engineering behind code conversion from one platform to another, and can't say I found anything in DB2 to be superior to SQL server, but did find many things I liked better about SQL server. Here are some off the top of my head:
- 更好地选择 SQL Server 中的数据类型,例如 MONEY 和 SMALL MONEY.
- SQL Server 中的混合字符编码.某些列可以是 ANSI,而其他列可以是 UNICODE(分别为 char 和 nchar).在 DB2 中进行设置既不简单也不容易.
- SQL Server 中更好的工具,主要是用于 ETL 的 SSIS(相对于定价过高的 IBM Data Stage).
- SQL Server 的语法更宽松.例如,您不需要处处使用分号.也许只是个人喜好,但我发现用 T-SQL 编码要容易得多.
- 许多高级功能似乎在 SQL Server 中运行得更好.例如,SQL Server 允许您进行页面级压缩,而 DB2 仅限于行级压缩.
- 使用 SQL Server IDE 调整 SQL Server 查询更容易
还有更多,但老实说,我建议任何正在考虑其中一个的人都应该设置两个系统并花一些时间使用这两个系统.现在看来,SQL Server 是一个更好的整体解决方案,但 DB2 有朝一日可能会夺冠.
There are more, but honestly I suggest that anyone who is considering one over the other should set both up and spend some time working with both systems. Right now it seems like SQL server is a better overall solution, but DB2 may one day take the crown.
最后,在处理数据仓库时,SQL、SSIS 和 SSAS 提供了比 InfoSphere、DataStage 和 DB2 更好的解决方案.我可以在上面写一份白皮书,但我在这里的建议是你自己设置它并花一个星期或玩每个解决方案.微软在这里的解决方案比 IBM 的更快、更便宜.我不知道有什么其他依据可以做出决定.
Lastly, when dealing with data warehousing, SQL, SSIS, and SSAS made a much better solution than InfoSphere, DataStage, and DB2. I could write a whitepaper on it, but my suggestion here is to set it up on your own and spend a week or to playing with each solution. Microsoft's solution here was faster and cheaper than IBM's. I don't know of any other basis upon which to make a decision.
平台应该不是问题,因为数据库通常在自己的机器上运行,但总有那些没有微软!"和没有 linux!"周围的商店.真可惜.我会推荐 SQL 服务器.
Platform shouldn't be an issue since databases generally run on their own machines, but there are always those "no microsoft!" and "no linux!" shops around. It's a shame, really. I'd recommend SQL server.
相关文章