千万级数据,数据库优化方向有哪些 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cnbattle
V2EX    问与答

千万级数据,数据库优化方向有哪些

  •  
  •   cnbattle 2020-04-03 08:12:15 +08:00 via Android 5174 次点击
    这是一个创建于 2084 天前的主题,其中的信息可能已经有所发展或是发生改变。

    情况说明:目前使用 MySQL, 四个字段,低频短时间大量写入百万到千万,中等更新需求两分钟左右一次几十条数据,正常的范围查询需求

    分库分表 ,但范围查询会有些不方便

    或使用别的啥数据库更适合这种场景

    第 1 条附言    2020-04-03 13:52:34 +08:00
    再具体说下场景:

    类似一物一码,盒码箱码关联,批量出货这样,防伪溯源这样
    26 条回复    2020-04-07 10:07:17 +08:00
    ebony0319
        1
    ebony0319  
       2020-04-03 08:15:31 +08:00 via Android
    hbase,但是灵活性下降一点。
    MiaRunis
        2
    MiaRunis  
       2020-04-03 08:18:15 +08:00 via iPhone
    钱多要省事直接上 aws aurora/polardb,疼逊云的 cynosdb 没人用过不知道啥情况。这几个都读写分离,阿里直接上了 rdma,操作层面不改靠性能硬撑,大多数情况不需要再分表
    aec4d
        3
    aec4d  
       2020-04-03 09:07:35 +08:00 via iPhone
    如果查询语句很简单,没有事务要求可以上 ES, clickhouse 这些
    virusdefender
        4
    virusdefender  
       2020-04-03 09:32:02 +08:00   1
    tidb 加队列异步写入
    opengps
        5
    opengps  
       2020-04-03 09:33:40 +08:00
    如果必须用关系型,看下我的这篇分享: https://www.opengps.cn/Blog/View.aspx?id=284&from=v2ex
    线上业务实际承载到过每秒 1500 写入,表分区单表总行数 15 亿。没到瓶颈不过后来改 nosql 了
    dalibaxiaoliba
        6
    dalibaxiaoliba  
       2020-04-03 09:42:36 +08:00
    支持一下 TiDB,兼容 Mysql,加上最新的 Tiflash,速度可以的
    xyjincan
        7
    xyjincan  
       2020-04-03 10:16:04 +08:00 via Android
    现在有啥存在的问题
    idblife
        8
    idblife  
       2020-04-03 10:24:41 +08:00
    oracle 分区表
    这数据量太小了
    xsm1890
        9
    xsm1890  
       2020-04-03 11:00:29 +08:00
    千万级别 mysql 压力应该也不算特别大吧。按时间分区,索引合理的话应该不会很慢
    fancy111
        10
    fancy111  
       2020-04-03 11:04:37 +08:00
    亿级再说吧
    gz911122
        11
    gz911122  
       2020-04-03 11:04:56 +08:00
    千万级别 mysql 也没太大压力
    正常用就行了
    optional
        12
    optional  
       2020-04-03 11:12:54 +08:00
    放队列慢慢写呗。 或者来个 cssandra hbase
    tairan2006
        13
    tairan2006  
       2020-04-03 11:14:05 +08:00
    你这写的啥,时序数据的话,可以用时序数据库
    bnm965321
        14
    bnm965321  
       2020-04-03 12:39:04 +08:00
    放队列,然后 batch insert/batch update
    cnbattle
        15
    cnbattle  
    OP
       2020-04-03 13:50:04 +08:00
    @fancy111 有个表已经 17 亿了 2333...
    cnbattle
        16
    cnbattle  
    OP
       2020-04-03 13:53:29 +08:00
    @xyjincan 查询慢
    hbolive
        17
    hbolive  
       2020-04-03 14:05:54 +08:00
    确实,千万级别 mysql 其实没啥压力的。。
    zclzhangcl
        18
    zclzhangcl  
       2020-04-03 14:12:23 +08:00
    千万?没有复杂查询,到 5 亿也没问题
    cnbattle
        19
    cnbattle  
    OP
       2020-04-03 14:20:17 +08:00
    @zclzhangcl
    @hbolive
    大佬 ,你们 mysql 架构大概什么样的自己搞得还是用云的, 公司这样目前是用阿里云 rds mysql 4c8g 的高可用版上
    meeop
        20
    meeop  
       2020-04-03 14:45:15 +08:00
    千万级别 mysql 都不用分表
    我司规范是 mysql 单表最大 10 亿
    另外 tidb 是最多快好省的方法
    qq976739120
        22
    qq976739120  
       2020-04-03 14:58:45 +08:00
    @meeop 单表 10 亿?????
    hbolive
        23
    hbolive  
       2020-04-03 22:44:12 +08:00
    @cnbattle 是我们内网的刀片服务器,几千万数据,表结构比较简单,感觉没啥问题。。
    hooopo
        24
    hooopo  
       2020-04-04 00:56:30 +08:00
    千万就不用什么特别的方法了,升级下硬件就行
    noparking188
        25
    noparking188  
       2020-04-04 07:46:38 +08:00
    我们公司是 mysql 操作全部走 Kafka 队列,数据量很大的表,数据产品会研究垂直拆表,一般表通过独有的业务 ID 做水平分库分表,以上前提是数据库操作全部走接口,压力丢给中间件,这样各业务方不用关心底层数据库,调接口请求资源就行
    zclzhangcl
        26
    zclzhangcl  
       2020-04-07 10:07:17 +08:00
    你这个场景是多写少读。先上 mysql 单表再说,等数据量到了上索引也慢(预估单表数据量不小于 5 亿)的情况下, 再考虑分库分表
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2997 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 13:19 PVG 21:19 LAX 05:19 JFK 08:19
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86