免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: la19850302
打印 上一主题 下一主题

mysql cluster纯属招摇撞骗(结贴) [复制链接]

论坛徽章:
0
11 [报告]
发表于 2010-02-23 16:54 |只看该作者
本帖最后由 la19850302 于 2010-02-24 09:20 编辑

回复 9# 5sky


可以, 篇幅有限,我针对几个比较严重的问题列出测试结果,也是我正在力图解决的问题

1 稳定性和可靠性:平均无故障时间等指标是说明系统的可靠性的。

cluster的核心宗旨是为了解决高可用问题,所以这稳定可靠性对cluster是最高准则.要让系统稳定可靠,就应该对系统的出错机率、性能劣化趋势有足够的了解.


具体问题:

测试原因

a

mysql-cluster 重启非常慢的问题

随着数据量的增大,数据节点的重启时间随着数据量的增大而增加,这个特性影响以下方面:
1 重新配置数据节点参数
2 需重启数据节点的其他重要操作

b

ndbd进程消耗巨大内存,大量内存
目前未知用途,回收困难

NDB数据全部存放在内存中,如果在上线前无法估算系统使用的内存,而任其无法预测的增长,那么系统毫无稳定性可言,实际因为内存问题导致系统crash的各类bug层出不穷

c

各类目前无法解决的bug

测试这段时间,极少的数据量情况下Mysql节点自重启多次,单个数据节点失败每周一次,错误日志抽象深涩,严重bug举例: Bug#

下面是内存超额分配的测试, 系统内存越大超支使用表现越严重


初始化 ndbd --initial

[config]

noofreplicas=2

DataMemory=500M

IndexMemory=250M

ndbd进程实际分配内存1.0g

疑点一 DataMemory+IndexMemory=750M< 实际使用1.0g

插入总量在140M的数据后(根据原理估算到的所有节点DataMemory+IndexMemory总量,这个有做过测试,估算结果基本正确),进程使用内存增加到1.1g

疑点二:已经预分配DataMemory+IndexMemory的还没用完,这么小的数据量为何还需分配100M的内存.用到哪里了?


   2 性能

这里我不将测试方案贴出来,主要从数据量,访问类型(查询或更新),并发这3个方面做的对比测试,在粗放的参数配置下(即只针对cluster的主要参数做调整配置,不可能精细的测试每个参数不同值下的性能),相同的硬件配置,性能不及innodb1/10.

当然,性能测试不是重点,这项任务弹性很大,需要投入更多的时间.同时,软硬件环境不同,这个结果的参考性意义也不大,但纵观讨论cluster性能的文章,其性能情况一点也不乐观,话说到这里,想到cluster用了这么多内存,我又忍不住想骂了.

3 管理成本:

1 文件系统:数据节点空间消耗非常大,同样不可预测的文件大小.对于cluster的文件系统结构和作用,只在NDB API5章中简单的介绍了下,实际情况下空间使用多的过分,完全不知道为什么这么的文件空间.

2 备份方式:NDB有自己的备份命令,简单测试过,备份时间较长,备份文件较大,恢复方式更加恶心,居然要对每个数据节点进行恢复操作.

3 自带管理工具使用文档简陋.对这些工具命令参数和输出内容的说明很少,使用不便

总结:在一个以高可用为最高目标的系统里,如此贫乏的技术支持,以及尚不成熟的产品质量,实在难以让人接受.

论坛徽章:
0
12 [报告]
发表于 2010-02-23 17:04 |只看该作者
回复 8# yueliangdao0608


    当初希望使用mysql-cluster的时候,就是希望利用这个产品的高可用性

    我们计划使用的仅仅就是它的这个特性,希望用到部分支付业务上,数据量不大,对性能要求也不高,只希望他高可用,稳定可靠,这个应该是符合cluster的宗旨的.

    而至于他的复制特性,分区特性,自带备份,磁盘数据等等特性都不会使用到.

论坛徽章:
0
13 [报告]
发表于 2010-02-24 08:45 |只看该作者
看了你总结的几点,我觉得你还是应该认认真真的读手册

论坛徽章:
0
14 [报告]
发表于 2010-02-24 09:12 |只看该作者
回复 13# justlooks


    英文手册我是有点走马观花,中文手册通读下来,不知道哪里可以回答下面几个问题,楼上提点下就可以了

   1  NDBD节点上ndbd进程的内存如何使用规划,我希望可以详尽到oracle内存结构的程度

   2  NDBD重启时间过长是在7.0.9才改正的特性,不知道哪里有错

   3  NDBD的文件空间之巨,我插入不到1G的数据居然在ndb_nodeid_fs达到20G,这如何解锁

希望楼上详解,无论是非,我希望客观详尽的答案

论坛徽章:
0
15 [报告]
发表于 2010-02-24 09:35 |只看该作者
留贴等精彩的“论剑”

论坛徽章:
0
16 [报告]
发表于 2010-02-24 09:35 |只看该作者
围观。

论坛徽章:
1
白银圣斗士
日期:2015-11-23 08:33:04
17 [报告]
发表于 2010-02-24 09:53 |只看该作者
具体的还需要看看测试方案与细节啦。

虽然不就很如意,但也没有如此差啦。

论坛徽章:
0
18 [报告]
发表于 2010-02-24 09:55 |只看该作者
我以前看过一本书。是网易出的。

mysql集群没有浮动IP的理念,当一个节点挂了,得手工修改php程序,把链接数据库的IP改成其他节点的IP。

这样就做不到7*24*365。很不方便。

论坛徽章:
0
19 [报告]
发表于 2010-02-24 10:01 |只看该作者
回复 18# 小木虫子


    这个用lvs+keepalive倒是可以实现其可靠性

    本贴的重点是想探讨NDB的高可用性,至于性能和管理方式,解决方式很多,可以不用追究

论坛徽章:
0
20 [报告]
发表于 2010-02-24 10:06 |只看该作者
回复  小木虫子


    这个用lvs+keepalive倒是可以实现其可靠性

    本贴的重点是想探讨NDB的高可用 ...
la19850302 发表于 2010-02-24 10:01


oracle就不存在这个问题吧,自身就解决了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP