Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Double 11を支えるApsaraDB for Redis (AliEaters #8)

242 vues

Publié le

Alibaba Cloudで提供しているマネージドのRedisの概要や特徴とTaobao内での利用について少しだけ触れます。元ネタはAlibaba Cloudの国際チームが投稿しているブログです。

Publié dans : Technologie
  • Soyez le premier à commenter

Double 11を支えるApsaraDB for Redis (AliEaters #8)

  1. 1. 1 @mosuke5 AliEaters #8 2018/11/14 Double 11を支える ApsaraDB for Redis
  2. 2. はじめに 本内容はブログ How ApsaraDB for Redis Supports for the November 11 shopping spree の内容を日本語化してまとめたものです。プロダクトの説明について は独自の説明を補足しています。 また、著者に日本語化することを承諾得ているものとなります。 2
  3. 3. 3 Who are you? 名前:森 真也 (@mosuke5) 仕事:  Alibaba Cloud Solutin Architect  以前はWebアプリケーション開発や  インフラ作業の自動化の開発など その他:  待ち遠しいものがね。。
  4. 4. 今年もDouble 11で自己最高記録 4 出典: https://japan.cnet.com/article/35128480/ 開始2分で100億元 (1600億円)突破。 最終結果、約3.5兆円 達成。
  5. 5. Double 11を支える技術シリーズ ● How ApsaraDB for Redis Supports for the November 11 shopping spree ● Behind Alibaba's Double 11 Mysterious "Dragonfly" Technology ®C PB-Grade Large-File Distribution System ● Double Eleven Technology Series: Replacing Word Segmentation with Regular Expression and Similarity ● DoubleEleven Technology Series: Logistics and Dynamic Path Planning ● DoubleEleven Technology Series: Flash Sales Optimization on PostgreSQL 5
  6. 6. How ApsaraDB for Redis Supports for the November 11 shopping spree 6
  7. 7. ApsaraDB for Redisについて 7
  8. 8. ApsaraDB for Redisの提供している種類 8 ApsaraDB for RedisはAlibaba Cloudが提供しているマネージドRedisのサービスで す。下記の通り5種類のインスタンスタイプを提供しています。 スタンダード型、クラスター型、R/W分離型の違いは次のスライド以降で説明。 シングルコピーとデュアルコピーの違いは、データ保存領域(Partition Cluster)が冗長 構成になっているかどうかの違い。 1. スタンダード型(シングルコピー) 2. スタンダード型(デュアルコピー) 3. クラスター型(シングルコピー) 4. クラスター型(デュアルコピー) 5. R/W分離型
  9. 9. ApsaraCacheというオープンソース 9 https://github.com/alibaba/ApsaraCache ● Redis 4.0ベース ● ApsaraDB for Redisのベース ● 独自のパフォーマンスチューニング(30%の性能向上) ● Memcacheプロトコルのサポート(!???) ○ ApsaraDB for RedisはMemcacheのプロトコルをサポートしていません
  10. 10. スタンダード型 <概要> スタンダード型はいわゆるマスタースレーブ構成で 提供。マスターかスレーブのどちらかを利用するた め、購入できるメモリ容量やパフォーマンスの点で 上限値が小さい。 <ユースケース> 少量のデータ領域を利用したい。 クエリー発行量が少ない。 安価にマネージドRedisを使いたい。 10 出典: https://help.aliyun.com/document_detail/52226.html
  11. 11. クラスター型 <概要> クラスター型は、プロキシサーバ、パーティ ションサーバ、コンフィグサーバの3つで構成 された分散構成。 パーティションサーバの数に比例して、メモリ 容量やQuery per seconds(QPS)が増加す る。 <ユースケース> 大容量のRedisクラスターを利用したい。 クエリー発行量の多いシステムで利用した い。 11 出典: https://help.aliyun.com/document_detail/52228.html
  12. 12. 12 256GBのRedisインスタンスは16台のパーティ ションサーバで構成されている。
  13. 13. 13 例) パーティションサーバの数 に比例して増える。 80,000 * 16 = 1,280,000 ※1台で80,000QPSの性能
  14. 14. R/W分離型 <概要> Read用とWrite用の2つのタイプのパーティ ションサーバが用意されている。プロキシ サーバ層で、R/Wを判断して振り分けてく れる。 ※現在中国サイトのみで提供 <ユースケース> WriteよりReadのQueryが多い場合に向い ている。 14 出典: https://help.aliyun.com/document_detail/62870.html LoadBalancer
  15. 15. Taobaoの中で利用されている例 15
  16. 16. 1. ソーシャル情報のストレージとして Taobaoの中には買い手と売り手のソーシャルネットワークがあ ります。Twitterなどのタイムライン生成でもRedisが使われてい ることが有名ですね。 1. AさんとBさんはフォロー関係にあるか 2. Aさんがフォローしている商品タイムライン 16
  17. 17. Taobao内のソーシャルネットワークの簡略図 17
  18. 18. RDBでやるとどうなるか 18 id product seller_id 1 product_1 2 2 product_2 4 3 product_3 4 4 product_4 3 5 product_5 3 6 product_6 2 7 product_7 3 id following followed 1 1 2 2 1 4 id user_name 1 mori 2 tanaka 3 nakai 4 murata 規模が大きくなると パフォーマンス面で問題が発生してくる。 id 1のmoriがフォローしてい る人のプロダクトタイムライ ンを作ると仮定
  19. 19. Redisでタイムラインを作る 19 user:1:product_timeline (sorted sort) 1542173893 123456789(product_id) 1542173894 234567890(product_id) 1542173895 345678901(product_id) product 123456789 name description price … 234567890 name description price … 345678901 name description price ... unixtimeとproduct_idで timelineを管理。
  20. 20. 2. Tmall内のライブストリーミングのコメント表示 Tmallでは、売り手が商品の宣伝をするためにライブストリーミン グで製品紹介をしたりする機能があるらしいです。そのコメント欄 は50,000TPSにもおよぶとのことで、その処理にApsaraDB for Redisが活用されている。 ● ページスクロールダウンした時のコメント取得 ● ページスクロールアップした時のコメント取得 ● リフレッシュした時のコメント取得 20
  21. 21. まとめ 1. Alibaba CloudのApsaraDB for Redisはアリババが独自で改善を行ったオープン ソースベースで開発。 2. ApsaraDB for Redisでは様々なタイプのインスタンスを用意。自前でクラスターを 組むことなく簡単に利用できるメリットがある。 3. 紹介されていた利用方法は標準的なものであったが、アリババも自社のサービス を支えるためにユースケースがうかがえた。 4. (おまけ) 最近Alibaba Cloudの国際チームは英語ベースで技術情報を頻繁に投 稿するようになっている。非常に嬉しいこと。 21

×