V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
acbot
V2EX  ›  云计算

大厂的对象存储都是基于什么实现的呢?

  •  
  •   acbot · 2021-09-01 15:18:27 +08:00 · 7817 次点击
    这是一个创建于 929 天前的主题,其中的信息可能已经有所发展或是发生改变。
    腾讯云 COS,阿里云 OSS,HW OBS 这些对象存储服务是独立自主实现的,还是基于什么开源项目(比如 :MinIO )实现的呢?
    34 条回复    2021-10-09 08:32:49 +08:00
    Ianchen
        1
    Ianchen  
       2021-09-01 15:48:28 +08:00
    盲猜一个 Ceph
    acbot
        2
    acbot  
    OP
       2021-09-01 16:11:12 +08:00
    @Ianchen 最早我感觉也是 Ceph 但是后来我发现 MinIO 更像 特别是 Rest Api 和 微服务结合方面
    ccde8259
        3
    ccde8259  
       2021-09-01 18:36:07 +08:00 via iPhone
    Ceph……
    自研一套 API 不用几个钱
    dynastysea
        4
    dynastysea  
       2021-09-01 18:50:05 +08:00   ❤️ 1
    明确的告诉你,这三家都是自研的,ceph 这东西当当玩具可以,真正大规模的实践坑很多。存储是云计算的根基,在这块上各家都是重金投入,而且不存在兼容性的问题,自研好处多多。
    moult
        5
    moult  
       2021-09-01 19:29:55 +08:00 via iPhone
    腾讯和阿里有历史技术沉淀在,肯定自研的。像 HW,七牛这类厂商就不好说了。。。不过,感觉 ceph 和 minio 自用还可以,拿来卖服务还差口气儿。
    tongz
        6
    tongz  
       2021-09-01 19:58:03 +08:00   ❤️ 1
    各位大佬, OSS 的话, 海量小文件存储靠谱吗, 单个文件平均在 1KB-10KB 之间, 每天产生 1 千万个左右, 还在持续增长, 写多读少
    locoz
        7
    locoz  
       2021-09-01 20:00:02 +08:00 via Android
    底层可能部分用了 ceph,但是主体肯定是自己搞的,大厂又不差那点钱。
    plko345
        8
    plko345  
       2021-09-01 20:32:39 +08:00 via Android
    @acbot 对象存储好像都是有标准的,api 和协议方面都差不太多,aws s3 也是,底层不一样,但提供给用户的接口一样,所以会有这种错觉
    gstqc
        9
    gstqc  
       2021-09-01 21:19:32 +08:00 via Android
    主要是 s3 协议已经是事实上的业界标准了,不兼容就没人用
    ospider
        10
    ospider  
       2021-09-01 21:53:55 +08:00
    ceph 确实支撑不了多大的场景,但是也不至于到玩具的地步。头条 2017 年才从 ceph 切换到自研的。
    boyhailong
        11
    boyhailong  
       2021-09-01 22:08:52 +08:00
    了解的成都好几个做云存储的都是 ceph 。。。。 而且也都商用了
    dongqihong
        12
    dongqihong  
       2021-09-01 22:28:04 +08:00
    大体都分三层,接入层( API 、各种业务逻辑),索引层(基于 LSM ),持久化存储层(分部署存储,类似 HDFS )
    阿里腾讯华为都大致如此,S3 早期也一样
    WebKit
        13
    WebKit  
       2021-09-01 22:30:45 +08:00 via Android
    @moult 七牛也是 go 开发,自研的
    gstqc
        14
    gstqc  
       2021-09-01 22:40:00 +08:00
    AWS S3 这种,一个 bucket 放百亿量的文件,如何做检索的
    opengps
        15
    opengps  
       2021-09-01 23:10:20 +08:00
    参考 aws 的对象存储
    henvm
        17
    henvm  
       2021-09-02 01:31:35 +08:00 via Android
    对象存储不是基于对象的吗?
    imbushuo
        18
    imbushuo  
       2021-09-02 07:56:01 +08:00
    https://dl.acm.org/doi/10.1145/2043556.2043571

    scalable table as index + scalable persistent layer (stamp),跟 SSD 的内部存储组织类似但是 scale 被放大了
    acbot
        19
    acbot  
    OP
       2021-09-02 08:30:34 +08:00
    @boyhailong 曾经我看一个 私有云的商用产品存储方案也是用的 ceph
    acbot
        20
    acbot  
    OP
       2021-09-02 08:32:02 +08:00
    @moult 也就是 一个中型公司自己服务用的话 ceph 和 minio 都没有问题是不?
    acbot
        21
    acbot  
    OP
       2021-09-02 08:33:24 +08:00
    @ospider 是什么原因造成 ceph 不能支撑大的场景呢?如果自用只是存储量比较大的情况 ceph 能胜任不呢?
    swulling
        22
    swulling  
       2021-09-02 09:57:18 +08:00 via iPhone
    说底层用 ceph 的可能对数据量缺乏想象力
    dynastysea
        23
    dynastysea  
       2021-09-02 10:30:19 +08:00   ❤️ 1
    @moult 如果你是个存储行业的,你就知道 HW 的存储实力有多强了(软硬层面全栈都有自研,腾讯现在还停留在软件层面,阿里也在涉及存储硬件开发),互联网公司在华为面前就是跟玩似的,特别是腾讯,虽然是自研但基本也是跟着开源的节奏来(华为在国外都有专门的研究所,比如俄罗斯有专门的存储算法研究团队,存储部门内的博士更是一大堆,阿里也有美国研发团队,博士也不少。腾讯投入小很多,基本都是国内招本科生、研究生,存储行业好的博士基本不会选择腾讯,多数都是选择华为、阿里,很多在华为的挖都挖不动,对于那些深研技术的,目前国内差不多只有华为、阿里有更高的平台可以让他们接触到最前沿的存储技术)。华为存储做的很早,腾讯、阿里存储组里面很多华为跳槽过来的。
    zmxnv123
        24
    zmxnv123  
       2021-09-02 12:19:14 +08:00 via iPhone
    hdfs+hbase 目前对象数大概几十万亿。
    armyHcz
        25
    armyHcz  
       2021-09-02 16:06:46 +08:00
    @moult 七牛用的是阿里云包了一层
    hemingway
        26
    hemingway  
       2021-09-02 19:07:20 +08:00
    除了 ceph 和 minio 还有其他选择么?对于小厂来说,不自研的话
    henvm
        27
    henvm  
       2021-09-02 22:08:53 +08:00
    @dynastysea 这点比较赞同,我记得我公司之前一个客户买了一台华为的存储设备 15 万吧,他们用起来很舒服,
    kerro1990
        28
    kerro1990  
       2021-09-03 09:01:27 +08:00
    用 AWS S3
    yuyuko
        29
    yuyuko  
       2021-09-05 05:20:48 +08:00 via iPhone
    对象存储是存储中难度最小的了吧。。。协议层召点人怼一下,元数据层用开源方案,存储层随便搞搞就行,反正不要 iops,不要时延,吞吐大力出奇迹
    yuyuko
        30
    yuyuko  
       2021-09-05 05:25:09 +08:00 via iPhone
    @dynastysea 哈哈,国内不还有 emc 嘛,我们这边好多 emc 出来的人😂
    my3157
        31
    my3157  
       2021-10-08 23:34:36 +08:00
    恰好做过对象存储, 对象存储确实看起来是 块 /文件 /对象 三个存储里面实现难度最小的, 前提是实现个玩具, 如果要做一个真正严肃意义上生产可用, 甚至提供公有云服务的商业产品, 工程细节上需要下大力气, 而且在中大规模场景下(100PB 以上), 会有一个量变到质变的过程, 有很大难度的, 反而在三个存储里面, 块存储相对来说是复杂度比较可控的
    my3157
        32
    my3157  
       2021-10-08 23:40:39 +08:00
    至于性能, 谁不想性能好一点呢? 为了压榨性能, 存储内部走 RDMA , 绕过本地文件系统, 直接管理裸设备已经是基本操作了, 各种 offload 优化商业产品都前几年就开始做了, 总体来说, 开源产品技术上不差, 但是动力上稍微欠缺, 需要自身有维护能力
    Sunmxt
        33
    Sunmxt  
       2021-10-09 01:49:39 +08:00
    没有一个开源项目撑得住公有云的数据规模
    acbot
        34
    acbot  
    OP
       2021-10-09 08:32:49 +08:00
    @Sunmxt 据我观察公有云也是不同域部署多个对象存储 不是一个对象存储服务全域
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5592 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 582ms · UTC 05:50 · PVG 13:50 · LAX 22:50 · JFK 01:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.