V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
90928yao
V2EX  ›  程序员

TiDB 现在发展到什么程度了,相比 sharding 的方案有什么劣势呢

  •  
  •   90928yao · 2020-09-27 10:38:23 +08:00 · 11741 次点击
    这是一个创建于 1554 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近看了点分库分表的方案,什么 shardingshapre (目前所在公司就是用的 sharding-jdbc ),mycat,谷歌的 vitess 等等若干方案。

    自己没有在生产使用过 TiDB,但是关于他的各种文章说得天花乱坠的,现在 TIDB 有足够的能力取代这些分库方案了吗? 但是感觉 TiDB 在中小型的公司并不流行(哪怕这些公司有分库分表的需求),是数据量不够大采用 TIDB 会增加的使用成本,运维成本吗?我个人感觉 对使用着来说 TiDB 比这些分库分表的方案是要方便一点

    50 条回复    2020-11-20 11:27:27 +08:00
    jamesxu
        1
    jamesxu  
       2020-09-27 11:58:10 +08:00 via iPhone
    defage
        2
    defage  
       2020-09-27 12:09:18 +08:00
    主要还是黑盒的问题。
    mysql 使用了这么多年,团队、人员上对它很熟悉的人很多,sharding 也是。对于有能力的团队来说,能掌控住的话,失控的风险就比较低。
    tidb 就另说了,有很多业务也很适用,也有很多公司在用了。还是比较成熟的了,OLTP 和 OLAP 之间感觉它啥都想干,貌似都不是特别突出。
    realpg
        3
    realpg  
       2020-09-27 13:27:47 +08:00
    TiDB 的硬件要求就注定小公司玩不起啊……
    MinQ
        4
    MinQ  
       2020-09-27 14:56:16 +08:00
    看了一下 TiDB 的硬件需求,需要的服务器也太多了吧,感觉大部分业务给两个 MySQL 整个一主一从就完活了,分库分表方案都是自己想一个就完了
    tulumu
        5
    tulumu  
       2020-09-27 14:57:13 +08:00
    tidb 已跪, 已经转 gp
    zoharSoul
        6
    zoharSoul  
       2020-09-27 15:48:54 +08:00
    @tulumu gp 是啥?
    popoer
        7
    popoer  
       2020-09-27 15:51:46 +08:00
    目前只用了 mysql 分区,分库分表和 TiDB 也研究过但没有使用,感觉对我们几千万数据量杀鸡用牛刀了
    wangyzj
        8
    wangyzj  
       2020-09-27 15:56:33 +08:00
    @realpg #3 +1
    StarUDream
        9
    StarUDream  
       2020-09-27 16:08:46 +08:00   ❤️ 1
    小公司,tidb 、tikv 、pd 单节点放在一个机器上就行了啊,后面业务增长了,横向扩设备就行。
    Erroad
        10
    Erroad  
       2020-09-27 16:20:40 +08:00
    90928yao
        11
    90928yao  
    OP
       2020-09-27 16:43:15 +08:00
    @tulumu 能说说吗
    mahone3297
        12
    mahone3297  
       2020-09-27 16:43:17 +08:00
    所以,大家讨论 tidb 的时候,都没谈买商业服务是吗???
    那,确实,出了问题,mysql 网上搜或许还能搜到,tidb 资料应该少

    当然,买商业服务,应该确实贵
    服务器当然也要的多,也贵
    huntcool001
        13
    huntcool001  
       2020-09-27 17:11:01 +08:00
    等阿里,腾讯云出了 managed TiDB 再说吧. 中小公司运维 DBA 也搞不定这玩意.
    realpg
        14
    realpg  
       2020-09-27 18:04:09 +08:00
    @MinQ #4
    硬件要求高不是需要的服务器太多

    TIDB 不是应对大数据行数,而是应对高 IOPS

    除了 IDC 这类公司,基本小公司哪有拿得出来三五台全高 IOPS ( NVME 盘最合适)做存储节点的

    基本都停留在阿里云的破机器呢
    dzdh
        15
    dzdh  
       2020-09-27 18:06:05 +08:00
    @huntcool001 阿里有对标产品 OceanBase
    dzdh
        16
    dzdh  
       2020-09-27 18:06:53 +08:00
    @zoharSoul Greenplum 基于 PostgreSQL 的 OLAP 方案 不适合 OLTP
    dzdh
        17
    dzdh  
       2020-09-27 18:07:53 +08:00
    同类产品 CockroachDB 没人提一下吗

    PostgreSQL 系的还有 Citus 也是 shardingnothing 啊
    dzdh
        18
    dzdh  
       2020-09-27 18:19:20 +08:00
    小微企业小几千万的几台 PostgreSQL+citus 免费版足够了
    joesonw
        19
    joesonw  
       2020-09-27 18:19:29 +08:00
    @huntcool001 腾讯之前和 PingCAP 合作过, 有 managed TiDB. 然后合作终止了, 腾讯云推出了自己的分布式 SQL. 你懂的.
    haohappy
        20
    haohappy  
       2020-09-27 18:54:04 +08:00
    小几千万的索引建好 mysql 足够了
    andyangyu
        21
    andyangyu  
       2020-09-27 18:58:31 +08:00
    我们公司在生产用 TIDB 集群, 4.0 以后支持机械盘部署了, 用 k8s 部署还是挺方便的.
    MinQ
        22
    MinQ  
       2020-09-27 19:03:09 +08:00
    MinQ
        23
    MinQ  
       2020-09-27 19:11:24 +08:00
    @realpg 五台虚机本身就不少了,我司的项目抠抠搜搜就给两台 MySQL 虚机。之前搞过一次用来计算兴趣点的项目,最高峰搞了 24 台 16C/32G 的 PG 来做查询,现在要求压缩掉 2/3,TPS 还不能下降,所以打算用 Solr+MySQL 来处理了
    Narcissu5
        24
    Narcissu5  
       2020-09-27 19:21:52 +08:00
    我们穷逼公司硬件没给够,三天两头倒地不起,还不如 mysql 加个从库
    594duck
        25
    594duck  
       2020-09-27 20:11:50 +08:00 via iPhone
    @StarUDream 然后在运行的飞机上换引擎么
    594duck
        26
    594duck  
       2020-09-27 20:19:14 +08:00 via iPhone
    我兄弟是达梦数据库的,达梦对标 oracle9i 。

    TIDB 也好 oceanDB 也好在他们眼里就是弱鸡。

    这里说一下上海地区有需要达梦的可以找我兄弟。一律有优惠。

    我就这么说如果 oracle 11i 降价到 5 万元一整台服务器授权,保证企业用户立刻

    “啊呀真香”

    顶配 dell R740xd 512 内存,全 ssd 才多少钱。15 万一台好了,来三台,加上 EMC 两鸡头 4 盘柜,加上三套达梦。齐活了才多少钱。

    mysql 商业版本差不多这点钱,还要折腾什么直接上啊。


    oracle 一个 rman 就让人口水
    Lighfer
        27
    Lighfer  
       2020-09-27 20:45:48 +08:00   ❤️ 5
    @594duck 达梦可别吹了,我们公司用了一年(政府项目,不得不用),给达梦都不知道排出了多少个 bug,最夸张一个,一条 insert 会引发数据库崩溃,100%必现,两个月前出现的。包括配套的产品,管理工具、迁移工具、ETL,都是 bug 一堆。,不可否认达梦服务态度很好,也是国产化必要的存在,但数据库确实没多强。
    以上发言仅从使用者角度出发
    leeg810312
        28
    leeg810312  
       2020-09-27 20:51:38 +08:00 via Android
    @594duck 达梦面向 zf 机构和国企,用 MySQL 的群体都是中小企业、个人或互联网公司,从没有听说这些群体有用达梦的
    realpg
        29
    realpg  
       2020-09-27 21:01:26 +08:00
    @MinQ #23
    这玩意的设计应用 都不是跑在 VM 里面的
    是跑在物理机里……

    我这有测试玩的集群 性能真心彪悍
    三个节点,每个节点 4 块 3DWPD 的 1.6TB NVME 盘
    realpg
        30
    realpg  
       2020-09-27 21:03:11 +08:00
    @594duck #26
    达梦,没问题时候无敌
    有问题时候就是垃圾中的战斗机

    曾经遇到过简单查询爆卡,工程师专业的折腾了两个小时给解决了,然后开票收了 8000 块钱服务费……合同名义是买了一个什么扩展……
    realpg
        31
    realpg  
       2020-09-27 21:03:59 +08:00
    实际上,跟工程师私下沟通,其实是他们程序的 bug,以前没发现过的,现场代码级修复的。
    kerro1990
        32
    kerro1990  
       2020-09-27 22:23:45 +08:00
    用的蟑螂 CockroachDB,TiDB 的话很多 mysql 函数不兼容或者返回结果不一致,已放弃
    xiaoyangsa
        33
    xiaoyangsa  
       2020-09-27 22:43:55 +08:00   ❤️ 1
    对于生产环境,还是要选熟悉的,搞得定的,别去当小白鼠帮别人排雷了
    dzdh
        34
    dzdh  
       2020-09-28 00:00:02 +08:00
    @kerro1990 用多久了 生产环境吗?多大量?求分享。免费版不支持 Geo 分区吧?
    594duck
        35
    594duck  
       2020-09-28 03:08:43 +08:00 via iPhone
    @Lighfer 老哥用的辛苦了,我不在国内所以也没用过他们的,但是听朋友讲起来比起其他国产数据库,他还是最靠谱的那个。
    @leeg810312 可不是这么说的,如果 150 万买齐核心数据库对国内互联网动则上亿的流水来说简直不值钱。一般创新公司必须拿出企业利润 30%来对技术进行升级。而且我认为只有付费才会有良性发展,比如一个互联网公司用了 30 个 mysql,那买 1/10 的 mysql 企业版用来作为支持不过分的。不然哪里来的发展。
    @realpg 只能说老哥辛苦了,毕竟哪怕 cisco 这种底层东西,都会出 bug 要开 case 。但是想你说的一条 inster 都崩溃也是难言了。

    谢谢各位老哥的回复,我好好敲打一下我朋友去。叫他下次和我吹的时候谨慎一点。
    kerro1990
        36
    kerro1990  
       2020-09-28 09:39:55 +08:00
    @dzdh 生产环境,用的 AWS,跨机房数据同步,日落地数据 8000W 左右,总数据量 10T 左右,稳定运行 2 年多了,没有档级重启过
    kerro1990
        37
    kerro1990  
       2020-09-28 09:42:13 +08:00
    @594duck 达梦闭门造车的玩意,维护成本很高,而且很多核心部件不开源,因为用了很多开源组件
    dzdh
        38
    dzdh  
       2020-09-28 10:11:20 +08:00
    @kerro1990 如果没有真的强区域化业务比如按大区拆分的业务组、子母公司啥的,是不是官方的 Geo-Partition 就有点鸡肋了。
    kerro1990
        39
    kerro1990  
       2020-09-28 10:39:20 +08:00
    @dzdh 应该有吧,我们暂时没用到这块
    specita
        40
    specita  
       2020-09-28 10:56:18 +08:00
    sharding 的方案优缺点还是比较明显的,我现在接手的就是用的 sharding,主要是按 sharding 的方式跑数据处理,提高效率,但是数据量上来后,需要扩容再多 sharding 点表成本就很高了。另外报表查询也是个突出的问题。所以最近也在选型,我目前倾向于用 spark-sql 批处理,汇总数据再导入 mysql 或者 hbase 吧。tidb 不敢用的原因还是因为不了解,怕当小白鼠。
    dzdh
        41
    dzdh  
       2020-09-28 11:10:52 +08:00
    @kerro1990 对 Yugabyte 评价如何?
    StarUDream
        42
    StarUDream  
       2020-09-28 11:14:25 +08:00
    @594duck #25 扩容又不停机,又不停止线上业务。何来在运行的飞机上换引擎的说法?
    stephenxiaxy
        43
    stephenxiaxy  
       2020-09-28 12:18:58 +08:00
    小公司玩不起
    kerro1990
        44
    kerro1990  
       2020-09-28 12:28:26 +08:00
    @dzdh OLTP 的话比 cockroachDB 性能差一点,另外事物的粒度和隔离级别不一样
    dzdh
        45
    dzdh  
       2020-09-28 13:05:31 +08:00
    @kerro1990 cockroach 同机多盘支持怎么样? 会不会分布不平均。感谢大佬科普
    tulumu
        46
    tulumu  
       2020-09-30 16:09:41 +08:00
    @zoharSoul GreenPlum , pg 协议, OLAP +OLTP 数据库
    tulumu
        47
    tulumu  
       2020-09-30 16:10:34 +08:00
    @90928yao 就是一个分布式的 pg, 里面全部放大宽表, 甚至可以基于 GP 做数仓
    lance6716
        48
    lance6716  
       2020-10-01 20:07:25 +08:00 via Android
    可以免费试用一下 tidb cloud

    https://en.pingcap.com/products/tidbcloud/trial/
    simuhunluo
        49
    simuhunluo  
       2020-11-20 11:25:27 +08:00
    @kerro1990 贵司用 cockroach 的场景大概是啥呢,可否简单分享下
    simuhunluo
        50
    simuhunluo  
       2020-11-20 11:27:27 +08:00
    @zoharSoul greenplum
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2847 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 14:20 · PVG 22:20 · LAX 06:20 · JFK 09:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.