免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2210 | 回复: 2
打印 上一主题 下一主题

想请高手看看这样简单的方案是否可行 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-18 20:54 |只看该作者 |倒序浏览
小弟菜鸟,想请高手看看这样简单的方案是否可行:

1.大表数据分别存储在3个实例(分布在3台主机上),各节点设为S1,S2,S3
2.小表以及一些编码表存储在第四个数据库实例(设为MAIN)上
3.客户端只访问MAIN实例,而MAIN实例通过DBLINK访问另外3个数据库(将一个表的数据(分布在3个数据库中)封装成一个视图供客户端访问)
4.客户端的应用(如联合查询)基本上是一个实例之间的关联查询,或者是将一个节点数据运算结果存储在MAIN数据库中的一张表中。
(各节点之间很少有数据联合查询,但节点与MAIN主机的小表或编码表与关联查询)
           如:
create view bigtab as
        select * from bigtab@s1
   union all
        select * from bigtab@s2
   union all
        select * from bigtab@s3;
insert into m.t1(c1, c2)
select b.name cname, count(1)
   from bigtab a, m.stab b where a.c1=b.c1         --m.stab 为MAIN数据库上一张小编码表
  group by b.name

高手说说这样可行吗?

如果场景不变(后端各节点之间数据交互没有或较少),有必要用RAC吗

论坛徽章:
0
2 [报告]
发表于 2011-10-19 17:34 |只看该作者
性能上有问题
当然并不绝对,要看具体应用的条件和优化的方法
可以比较一下,bigtab在远程和在本地的执行计划的差异

论坛徽章:
0
3 [报告]
发表于 2011-10-20 17:02 |只看该作者
可以通过这样把DB打散,然后通DBLINK来访问,性能取决于访问其他节点的次数

RAC在这种场景中并不会有什么性能好处。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP