V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dingyaguang117
V2EX  ›  问与答

3 亿行数据库数据的最便宜的云服务器解决方案是啥?

  •  
  •   dingyaguang117 · 2014-12-03 10:11:40 +08:00 · 3728 次点击
    这是一个创建于 3676 天前的主题,其中的信息可能已经有所发展或是发生改变。
    3亿行数据,4、5 个字符串型字段;导出为文本有12G左右,存储到MongoDB大概占用38G(未建立索引),Mysql还没试。
    现在想放到云上,有几种方案:
    1. 存储到MongoDB,索引估计几十G,64G的主机一个月估计上万,小内存的主机担心几乎不可用。
    2. 存储到Mysql,未测试,不知道资源占用情况

    问那种方案最省资源? 放到哪个云主机更划算?
    第 1 条附言  ·  2014-12-03 16:56:49 +08:00
    99% 读操作,单表查询
    24 条回复    2014-12-04 09:59:16 +08:00
    em70
        1
    em70  
       2014-12-03 10:13:34 +08:00 via Android   ❤️ 1
    阿里云的RDS
    zealic
        2
    zealic  
       2014-12-03 10:21:24 +08:00   ❤️ 1
    既然都是字符串,那么关系查询需求应该不高。

    推荐使用 AWS DynamoDB,建好对立索引,成本应该 1000~3000/M (根据查询量计算)。

    具体参考 CALC5: http://calculator.s3.amazonaws.com/index.html
    dingyaguang117
        3
    dingyaguang117  
    OP
       2014-12-03 10:37:11 +08:00
    @em70 选多大内存合适呢?
    em70
        4
    em70  
       2014-12-03 12:30:38 +08:00
    阿里云RDS磁盘也是SSD的,IO性能很好,不一定非要大内存,1200M应该就差不多了,我们几百G的数据每小时做一次汇总操作,这个配置都够了,稳定工作1年了.如果不够,还能随时无缝升级
    heamon7
        5
    heamon7  
       2014-12-03 12:39:26 +08:00
    存到LeanCloud呢,好像没有用户之前,是不收费的吧?
    webflier
        6
    webflier  
       2014-12-03 12:41:52 +08:00
    你得说一下使用场景吧,读多还是写多?并发连接最多有多少?
    > show dbs;
    admin (empty)
    local 19.20KB (uncompressed), 128.00KB (compressed)
    xxx 75.89GB (uncompressed), 23.82GB (compressed)

    > db.stats()
    {
    "db" : "xxx",
    "collections" : 4,
    "objects" : 455000240,
    "avgObjSize" : 85.60531012906718,
    "dataSize" : 38950436654,
    "storageSize" : 9460703232,
    "indexes" : 9,
    "indexSize" : 42531098792,
    "indexStorageSize" : 16119214080,
    "ok" : 1
    }
    我这个库4.5亿行数据,99%的读操作,在一台256M的vps上
    dingyaguang117
        7
    dingyaguang117  
    OP
       2014-12-03 13:29:05 +08:00 via iPhone
    @webflier 和你一样,几乎只有读操作,mongodb在内存装不下索引的情况下,查询性能没问题吗?
    dingyaguang117
        8
    dingyaguang117  
    OP
       2014-12-03 13:29:40 +08:00 via iPhone
    @webflier 你买的哪家主机?
    dingyaguang117
        9
    dingyaguang117  
    OP
       2014-12-03 13:37:42 +08:00
    @em70 单表多少行? 需要手工做分表吗?
    webflier
        10
    webflier  
       2014-12-03 13:53:26 +08:00
    @dingyaguang117
    "connections" : {
    "current" : 132,
    "available" : 19868,
    "totalCreated" : NumberLong(59412)
    },
    我不知道你对性能的期望是什么,对我来说,这个数量的连接,基本没有100ms以上的查询,我满足了。
    重要的一点就是所有用到的查询都要有索引。
    另外,我用的是tokumx,mongodb的变种。
    我的主机 https://clientarea.ramnode.com/aff.php?aff=315
    cevincheung
        11
    cevincheung  
       2014-12-03 13:55:26 +08:00
    postgresql
    dingyaguang117
        12
    dingyaguang117  
    OP
       2014-12-03 13:57:44 +08:00
    @webflier 你买的这个?
    256MB CVZ 256 / 128 MB 1 Core 1 /64 120 GB 1000 GB $8 / qtr
    dingyaguang117
        13
    dingyaguang117  
    OP
       2014-12-03 13:58:32 +08:00
    @cevincheung 有占用资源举例吗?
    webflier
        14
    webflier  
       2014-12-03 14:10:15 +08:00
    em70
        15
    em70  
       2014-12-03 14:13:03 +08:00
    @dingyaguang117 大表分区是必要的,我的一个表几亿记录,分100个区
    aru
        16
    aru  
       2014-12-03 16:11:22 +08:00
    表结构,查询场景写出来呀。
    都在这里空对空有个屁用
    dingyaguang117
        17
    dingyaguang117  
    OP
       2014-12-03 16:56:57 +08:00
    @aru 99% 读操作,单表查询
    aru
        18
    aru  
       2014-12-03 17:56:08 +08:00
    @dingyaguang117 根据什么条件查询?
    单一主键查询还是所有字段都有可能模糊查询?
    dingyaguang117
        19
    dingyaguang117  
    OP
       2014-12-03 18:24:16 +08:00
    @aru 多个字段分别索引,没有模糊查询
    aMR
        20
    aMR  
       2014-12-03 20:35:47 +08:00
    aru
        21
    aru  
       2014-12-03 21:07:08 +08:00
    digitalocean 的1G plan,mysql和postgresql都可以
    aru
        22
    aru  
       2014-12-03 21:08:30 +08:00
    @dingyaguang117 DO和linode的机器都是按小时收费的,尝试成本不高,自己实践下
    aru
        23
    aru  
       2014-12-03 21:15:38 +08:00
    @dingyaguang117 刚才忘记算索引占用的空间了,磁盘空间至少要40G以上才行。加上txt文件占用的空间,还是用这两家的4G plan吧
    dingyaguang117
        24
    dingyaguang117  
    OP
       2014-12-04 09:59:16 +08:00 via iPhone
    @aru 买了ramnode的主机,可以选硬盘大点 的套餐,比do灵活点,不太需要cpu和内存
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1014 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:14 · PVG 06:14 · LAX 14:14 · JFK 17:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.