美文网首页007-2271-不出局
互联网架构模板之『存储层』技术

互联网架构模板之『存储层』技术

作者: 短暂瞬间 | 来源:发表于2019-05-21 21:56 被阅读4次

    第87篇

    极客时间《从0开始学架构》课程笔记。

    标准技术框架

    互联网的标准技术架构

    存储层技术

    1、SQL

    • SQL即关系数据,NoSQL不是No SQL,而是Not Only SQL,是SQL的补充
    • 关系数据不可能被抛弃,所以需要考虑在业务发展后期如何将数据拆分到多个数据库实例,并且保证业务性能需求
    • 数据库拆分满足了性能要求,但同样引入了复杂度问题,如何拆?如何组合?
    • 流行做法是将这部分功能独立成中间件,即把分库分表做到自动化和平台化,小公司建议使用开源方案,如 MySQL Router、360 Atlas
    • 规模扩大到一定程度后一般会在SQL集群构建SQL存储平台,以对业务透明的形式提供资源分配、数据备份、迁移、容灾、读写分离、分库分表等一系列服务

    2、NoSQL

    • NoSQL数据结构与传统SQL不同,典型NoSQL数据结构:Memcache的key-value结构、Redis的复杂数据结构、MongoDB的文档数据结构
    • NoSQL的性能表现比传统SQL更好,可以弥补关系数据库的不足
    • NoSQL方案一般自带集群功能,应用起来比SQL分库分表更简单
    • NoSQL发展到一定规模后会在集群基础上再实现统一存储平台,统一存储平台主要实现资源动态按需分配、资源自动化管理、故障自动化处理,一般在NoSQL服务器规模达到千台以上才有更大收益

    3、小文件存储

    • 小文件数据主要是用于展示的数据,如淘宝商品图片、微博内容等,存在3个典型特征,数据小、数量巨大、访问量巨大
    • 小文件存储不一定需要业务规模很大,在业务起步阶段就可以做小文件统一存储
    • 在开源方案基础上封装小文件存储平台比较常见,如 HBase、Hadoop、Hypertable、FastDFS都可以作为小文件存储底层平台
    • 典型的小文件存储:淘宝的TFS、京东的JFS、Facebook的Haystack

    4、大文件存储

    • 互联网行业的两类大文件:一是业务上的大数据,如Youtube视频文件、电影文件;二是海量的日志数据,如访问日志、操作日志等
    • 大文件的特点与小文件相反,数量不多,但每个文件都很大,几百MB、几个GB很常见,可能还有几十GB、几TB的数据
    • 大数据起源于Google的3篇大数据论文(Bigtable\Map-Reduce\GFS),开源界大数据处理方案是Yahoo开源的Hadoop系列(HDFS\HBase等)
    • 大数据存储和处理一般都是选用开源方案,如Hadoop、HBase、Storm、Hive 等,只有大公司会基于开源方案封装自己的大数据平台,如淘宝的云梯系统、腾讯的TDW系统
    Hadoop生态圈

    相关文章

      网友评论

        本文标题:互联网架构模板之『存储层』技术

        本文链接:https://www.haomeiwen.com/subject/zduszqtx.html