uleone
V2EX  ›  问与答

全库遍历速度哪家强?

  •  
  •   uleone · Nov 10, 2014 · 4906 views
    This topic created in 4381 days ago, the information mentioned may be changed or developed.
    业务中需要对数据库中4000万条数据进行逐条遍历,数据总量20多G,要求1分钟内能取出所有数据。
    目前使用的是MongDB,一主一丛,16G内存。并发查询最快3分钟多钟完成。且并发数多了会变慢。
    有没有其他更好的方案可以提升全库遍历的速度?比如哪种内存数据库?
    13 replies  •  2014-11-11 10:09:29 +08:00
    kingwkb
    kingwkb
    Nov 10, 2014❤️1
    1
    redis
    ipconfiger
    ipconfiger
    Nov 10, 2014❤️1
    2
    文件
    uleone
    uleone
    OP
    Nov 10, 2014
    3
    @kingwkb redis的全库遍历怎么做?SCAN命令吗?速度怎么样?
    uleone
    uleone
    OP
    Nov 10, 2014
    4
    @ipconfiger 文件会比MongoDB快吗?
    ipconfiger
    ipconfiger
    Nov 10, 2014
    5
    @uleone 直接下载啊,当然快啦
    ziyuan
    ziyuan
    Nov 10, 2014❤️1
    6
    理论上,内存数据库+网格计算是最快的了,成熟的产品有oracle exdata,如果不考虑成本的话
    vietor
    vietor
    Nov 10, 2014❤️1
    7
    可以考虑使用 ElasticSearch
    msg7086
    msg7086
    Nov 10, 2014❤️1
    8
    数据20G,内存16G,你是怎么放进内存里的……

    如果是读写硬盘的话,你们用了SSD RAID了吗?
    uleone
    uleone
    OP
    Nov 10, 2014
    9
    @msg7086 目前MongoDB是16G,肯定不是全在内存中。其他方案的话内存可以加,SSD用不上。
    msg7086
    msg7086
    Nov 10, 2014
    10
    @uleone 没有SSD,内存也不够全放的话,势必会受到机械磁盘读写速度的影响,每秒只能随机寻找100次数据,最多了。
    Kabie
    Kabie
    Nov 10, 2014❤️1
    11
    ....不是全内存肯定会慢吧。。。

    你先试试能完全放在内存里的数据……
    charlestang
    charlestang
    Nov 10, 2014
    12
    楼主是不是应该介绍一下数据的类型,比如4000万行数据,有几个字段,分别什么类型的,全是整数,还是全是字符串,或者别的。为什么需要的不是查询,而是全部遍历?这个需求本身比较奇怪吧……
    hiddenman
    hiddenman
    Nov 11, 2014
    13
    真羡慕有这么多数据的环境。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   563 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 22:10 · PVG 06:10 · LAX 14:10 · JFK 17:10
    ♥ Do have faith in what you're doing.