java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3518|回复: 1

《大规模分布式存储系统》第8章OceanBase架构初探【8.1】

[复制链接]
  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2046

    主题

    3704

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66508

    宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2017-3-5 00:34:07 | 显示全部楼层 |阅读模式
    第8章 OceanBase架构初探
    ' V% |( X9 }+ l3 N$ U6 JOceanBase是阿里集团研发的可扩展的关系数据库,实现了数千亿条记录、数百
    6 ]( j2 N2 s8 I4 k: C* ITB数据上的跨行跨表事务,截止到2012年8月,支持了收藏夹、直通车报表、天猫评
    7 E  `$ T$ D8 v9 t0 M4 y& V价等OLTP和OLAP在线业务,线上数据量已经超过一千亿条。
    ! ?% F3 q7 Z' u# @9 g从模块划分的角度看,OceanBase可以划分为四个模块:主控服务器
    % Z# H  a) A, m5 r+ v9 TRootServer、更新服务器UpdateServer、基线数据服务器ChunkServer以及合并服务器
    6 n3 Q  E" ~6 R4 E0 mMergeServer。OceanBase系统内部按照时间线将数据划分为基线数据和增量数据,基
    ' s  h0 h, e+ s2 a: g9 C- c线数据是只读的,所有的修改更新到增量数据中,系统内部通过合并操作定期将增8 ?& y- B2 q4 U3 ]# C1 i
    量数据融合到基线数据中。本章介绍OceanBase系统的设计思路和整体架构。8 z2 {7 }& V3 \9 F! J! H
    8.1 背景简介$ s7 `5 z! q/ c
    淘宝是一个迅速发展的网站。全球网站排名公司Alexa提供的数据显示,2010年
    4 e9 w- N/ k* z& e( f7 _6 d4月27日,Amazon、EBay的用户占全球互联网用户的百分比分别为3.47%和2.68%,
    9 L0 M" `/ h: Y而淘宝的用户占全球互联网用户的百分比则达到了4.1%,淘宝网日独立访问量从此
    . U# d5 u2 @) u超过了Amazon和EBay。
    . x# @7 l+ w- e1 J! _' \. @淘宝的数据规模及其访问量对关系数据库提出了很大挑战:数百亿条的记录、
    9 W, b+ Q! w) Z% A3 G$ n: v4 C) i' y数十TB的数据、数万TPS、数十万QPS让传统的关系数据库不堪重负,单纯的硬件升% w, }) `! v3 @3 S
    级已经无法使问题得到解决,分库分表也并不总是凑效。下面来看一个实际的例' k+ B+ w* Q" i0 k! \2 ]
    子。) F9 i/ d/ v) o3 r. n4 a
    淘宝收藏夹是淘宝线上应用之一,淘宝用户在其中保存自己感兴趣的宝贝(即3 |( H5 x& p4 w/ Y) T$ f! L: W
    商品,此外用户也可以收藏感兴趣的店铺)以便下次快速访问、对比和购买等,用
    , m. u0 a+ Z3 F! j4 C2 l户可以展示和编辑(添加/删除)自己的收藏。3 W7 v4 G  n9 U4 P+ S
    淘宝收藏夹数据库包含了收藏info表(一条一条的收藏信息)和收藏item表(被
    8 K! e) O' B) |- @) a! R( ?收藏的宝贝和店铺)等:
    ! F2 z6 O& ?3 h+ M" e2 _- ]/ g% c/ D●收藏info表保存收藏信息条目,数百亿条。
    1 W9 t: A% u5 u& j# W1 v' D●收藏item表保存收藏的宝贝和店铺的详细信息,数十亿条。
    ; `3 {; `5 ?$ G9 P# @  w$ Q2 e8 B5 t- k●热门宝贝可能被多达数十万买家收藏。
    4 {- C7 q) E& _8 b1 |●每个用户可以收藏千个宝贝。4 q# o1 n2 |, H7 ?
    ●宝贝的价格、收藏人气等信息随时变化。3 Y$ P$ L5 L# d5 Z% |8 y- d7 ^
    如果用户选择按宝贝价格排序后展示,那么数据库需要从收藏item表中读取收藏
    ! E/ C: o; O3 }" i的宝贝的价格等最新信息,然后进行排序处理。如果用户的收藏条目比较多(例如6 Q1 K6 k# A7 \1 \: J
    4000条),那么查询对应的item的时间会较长:假设如果平均每条item查询时间是8 h6 b6 |' b8 U: M* P, c" z
    5ms,则4000条的查询时间可能达到20s,如果真如此,则用户体验会很差。
    ! N' f2 G! F( d' |- B4 D6 Y如果把收藏的宝贝的详细信息实时冗余到收藏info表,则上述查询收藏item表的
    & s5 L7 ~. Q) `( y  K操作就不再需要了。但是,由于许多热门商品可能有几千到几十万人收藏,这些热
    8 H, \9 L# v9 N门商品的价格等信息的变动可能导致收藏info表的大量修改,并压垮数据库。
    2 a) m% M6 H6 B9 C2 [% J; h  I为此,阿里巴巴需要研发适合互联网规模的分布式数据库,这个数据库不仅要
    : q2 g# w( r) k/ V& @能解决收藏夹面临的业务挑战,还要能做到可扩展、低成本、易用,并能够应用到/ n: L% Z9 p* F# t6 \+ C7 y: Q
    更多的业务场景。为此,淘宝研发了千亿级海量数据库OceanBase,并且已经于2011
    8 g# d& d1 B4 E年8月底开源(http://oceanbase.taobao.org/)。虽然距离OceanBase开源已经超过一年
    7 m- ^( y8 O7 W% ~多的时间,但OceanBase系统还有很多的问题,其中以易用性和可运维性最为严重。
    " b# U6 E$ E9 A$ u& HOceanBase团队一直在不断完善着系统,同时,我们也很乐意把设计开发过程中的一
    $ X7 B6 _, J8 j! S5 E些经验分享出来。
    . Y6 M" [+ P% T7 n- |. m/ C9 ^* {/ x! e/ e
    + P- K* z5 V" L5 ~% s3 L
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2021-5-11 14:31
  • 签到天数: 56 天

    [LV.5]渐入佳境

    0

    主题

    157

    帖子

    30万

    积分

    终身VIP

    Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60Rank: 60

    积分
    301273
    发表于 2021-5-11 14:41:14 | 显示全部楼层
    没看到教程啊
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Java自学网

    GMT+8, 2025-2-6 00:06 , Processed in 0.157813 second(s), 26 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

    快速回复 返回顶部 返回列表