新足迹

 找回密码
 注册

精华好帖回顾

· 我家的后院-Decking and paving (2009-1-28) 518may · 新移民租房记 (2007-8-10) zhanglei
· 我最近读的一本书-《活法》 (2010-5-9) liyuefu · 墨尔本快沙学车心得 (2004-12-10) 神奇的快沙
Advertisement
Advertisement
查看: 888|回复: 8

[IT] 关于数据库集群 [复制链接]

发表于 2008-10-8 10:57 |显示全部楼层
此文章由 wil 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 wil 所有!转贴必须注明作者、出处和本声明,并保持内容完整
我对数据库集群(cluster)不是很了解,想有个大概的概念。我知道oracle有提供cluster,不过Oracle太贵,mysql也有,但据说不成熟,完全在内存里实现,需要16个G的内存。还有微软的数据路由数据库技术。我想知道如果我有一个应用,表单的数目会随着产品的运行大幅增加(动态建新表),考虑到技术门槛和资金问题,哪种数据库集群方案可以选用?还有一个物理机器上运行几个mysql服务,每个服务对应一个数据库表集合,或者一个物理机器一个mysql服务,但运行所有的数据库表集合,哪个运行效能更好?谢谢了。
Advertisement
Advertisement

发表于 2008-10-8 11:33 |显示全部楼层
此文章由 hlzhan 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 hlzhan 所有!转贴必须注明作者、出处和本声明,并保持内容完整
my idea: if you are a expert of mysql and opensource area, you can use mysql: because you know how to find out the resource to resolve the problem, i do not say mysql has not warranty: but if you choice a open source database, your boss may like you to treat everyting.
if you are not a expert and your business is critical: Oracle or a business database is better, you can get the services from vendor and dont need to worry about anything

as your situation, for redundance: each physical machine for each mysql is better, for management: single machine for all mysql is better.

BTW: I sure know my English is in progress but i can not type Chinese on working.

[ 本帖最后由 hlzhan 于 2008-10-8 12:34 编辑 ]

退役斑竹 2007 年度奖章获得者 2008年度奖章获得者 特殊贡献奖章 参与宝库编辑功臣

发表于 2008-10-8 11:35 |显示全部楼层
此文章由 黑山老妖 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 黑山老妖 所有!转贴必须注明作者、出处和本声明,并保持内容完整
If your project has money definitely go oracle.
If no money go mysql.

退役斑竹

发表于 2008-10-8 11:45 |显示全部楼层
此文章由 月亮 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 月亮 所有!转贴必须注明作者、出处和本声明,并保持内容完整
sql server

退役斑竹

发表于 2008-10-8 11:51 |显示全部楼层
此文章由 月亮 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 月亮 所有!转贴必须注明作者、出处和本声明,并保持内容完整
还有一个物理机器上运行几个mysql服务,每个服务对应一个数据库表集合,或者一个物理机器一个mysql服务,但运行所有的数据库表集合,哪个运行效能更好?谢谢了。

-- 我没用过mysql,只用过sql server,但道理应该是相通的。不能说那种更好,只能取决于你的需要。
1个server上运行很多instance,或者1个server上运行一个instance,他们所能用的内存,CPU都是一样的。
但是,在一个instance上运行所有的DB,当一个DB需要占用大量资源时,别的DB速度会变慢,因为要排队等资源。
而多个instance,可以分配资源,也就是每个数据库用自己的资源,如果DB 1 需要大量资源的时候,哪怕别的instance很空,也不能用别的instance的资源,保证不影响别的DB正常运行。。。

发表于 2008-10-8 11:58 |显示全部楼层
此文章由 Bessy 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Bessy 所有!转贴必须注明作者、出处和本声明,并保持内容完整
postgresql也可以。
在大数据量的情况下, 像opensource的东东,3-4台与一台Oracle差不多。
Advertisement
Advertisement

发表于 2008-10-8 11:58 |显示全部楼层
此文章由 wil 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 wil 所有!转贴必须注明作者、出处和本声明,并保持内容完整
谢谢大家回复,可惜好像我不够加分资格

google了一圈:
MySQL Cluster is a technology which provides shared-nothing clustering capabilities for the MySQL database management system.

Shared Nothing Clusters
In pure shared nothing architectures, database files are spread across the various database instances (running executable programmes) running on the nodes. Each instance or node has ownership of a distinct subset of the data and all access to this data is performed exclusively by this “owning” instance (Figure 2). In other words, a pure shared nothing system uses a partitioned or restricted access scheme to divide the work among multiple processing nodes.

A transaction executing on a given node must send messages to other nodes that own the data being accessed. It must also co-ordinate the work done on the other nodes to perform the required
read/write. IBM DB2 uses this model.

Advantages
• This works fine in environments where the data ownership by nodes changes relatively infrequently. The typical reasons for changes in ownership are either database reorganizations or node failures.
• There is no overhead of maintaining data locking across the cluster

Disadvantages
• The data available data depends on the status of the nodes. Should all but one system fail, then only a small subset of the data is available.
• Data partitioning is a way of dividing your tables etc across multiple servers according to some set of rules. However this requires a good understanding of the application and its data access patterns (which may change).

这个Shared Nothing Clusters好像比较适合项目需要,不算是business critical项目,而且也没钱。。

[ 本帖最后由 wil 于 2008-10-8 13:05 编辑 ]

发表于 2008-10-8 12:05 |显示全部楼层
此文章由 Bessy 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Bessy 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Cluster Cache database也可以,速度快。还是找个咨询公司问问比较好,业务要求不同,方案不同。

发表于 2008-10-8 14:01 |显示全部楼层
此文章由 hlzhan 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 hlzhan 所有!转贴必须注明作者、出处和本声明,并保持内容完整
seems MySQL Cluster like the db partition of Oracle/DB2, that is for high performance and capacity purpose, anyway it's a good pratice of database administration.........just try, you have nothing lose :)

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部