SlideShare ist ein Scribd-Unternehmen logo
1 von 48
Downloaden Sie, um offline zu lesen
Pegasus:
一个分布式KV系统的设计过程
覃左言@小米
关于我 姓名:覃左言
经历:腾讯/百度/小米
关注:基础架构、分布式系统
爱好:运动、开源
开发过微服务框架
写过RPC框架:https://github.com/baidu/sofa-pbrpc
参与过分布式框架:https://github.com/Microsoft/rDSN
正在做KV存储系统:https://github.com/XiaoMi/pegasus
大 纲 背景
设计
总结
大 纲 背景
设计
总结
Storage Service in Xiaomi
Pegasus
ZooKeeper
HDFS
HBase
FDS
对象存储服务
SDS
结构化存储服务
EMQ
消息队列服务
Storage Service In Xiaomi
上百个业务
10PB级
数万亿行
千万级QPS
>99.95%
5 HBase Committers
数百TB/day
Storage Service in Xiaomi
HBase Is Good, but Not Enough
Weak Data Locality
Layered Structure
Longtime Recovery
JVM Garbage Collection
可用性 性能
高可用
目标用户
高性能 强一致 易使用
What We Want
• 对延迟较敏感的在线业务:广告、支付
• 对可用性要求很高
• 希望提供强一致性的语义
What We Did
Pegasus
一个高可用、高性能、强一致的分布式KV存储系统
大 纲 背景
设计
总结
Many Choices …
数据视图:KV系统 还是 表格系统?
系统架构:Centralized 还是 De-Centralized?
数据分布:Hash 还是 Range?
实现语言:C++、Java 还是 Go ?
存储介质:HDD、SSD 还是 Memory ?
一致性协议:Paxos、Raft 还是其他 ?
… …
围绕需求 先做容易的选择 不要太纠结 留有切换的余地
Basic Choices
实现语言:C++ Java
• Java有GC问题
• C++性能高,风险小
存储介质:SSD HDD Memory
• 性能、成本
单机引擎:RocksDB BDB LevelDB
• LSMT(Log Structured Merge Tree)保证写性能
• 针对SSD和多核优化
性能
开发难度
风险
Model Choices
数据视图:KV系统 Tabular系统
• 关注点在架构可行性
• KV系统更易实现
• 将来可改造为Tabular系统
数据分布:固定Hash分片 一致性Hash Range分片
• 实现简单
• 数据倾斜:合理设计Hash键和Hash函数
• 可伸缩性:预设 Partition Count 远大于 Server Count
• 热点问题:Hash分片和Range分片都不易解决
HashKey SortKey用户数据: Value
Replica
Server
Replica
Server
Replica
Server
Partition
#0
Partition
#1
Partition
#2
Key
hash
route
Partition ID
• 组合主键:HashKey + SortKey
• HashKey用于Hash分片
• 同一个分片(Partition)中的数据
按照 [HashKey + SortKey] 排序
• 利用Table进行空间隔离
• 随着业务需求增加功能
数据模型
简单 灵活
… …
UserID_1
UserID_2
AttrName_1 Value1
AttrName_2 Value2
AttrName_3 Value3
AttrName_1 Value1
AttrName_2 Value2
AttrName_3 Value3
… …
… …
HashKey SortKey Value
get/set/del
multi_get/
multi_set/
scan
scan_all
• get(HashKey, SortKey)  Value
数据接口
• set(HashKey, SortKey, Value, TTL)  Bool
• del(HashKey, SortKey)  Bool
• multi_get(HashKey, SortKey[])  Value[]
• multi_set(HashKey, SortKey[], Value[])  Bool
• scan(HashKey, SortKeyBegin, SortKeyEnd)  Iterator
• scan_all()  Iterator
读单条数据
写单条数据
删单条数据
读相同HashKey的多条数据
写相同HashKey的多条数据
扫描相同HashKey的数据
扫描全部数据
Redis适配
SET SETEX GET DEL INCR INCRBY DECR DECRBY TTL
易使用
Replicated State Machine Architecture
Paxos (1990)
Raft (2013)
PacificA (2008)
Consensus Algorithm Choices
Primary
Secondary
Secondary
replica
replica
replica
Replica group
Configuration
Primary/Backup Paradigm of PacificA
Client
query
response
replicate
replicate
update/
Log
Log
Secondary
Client
prepare
prepare
ack
ack
DB
request
response
Two-Phrase Commit of PacificA
Log
Secondary
Primary
DB
DB
apply
强一致
Architecture Choices
Centralized Vs. Decentralized
Layered Vs. Integrated
Pegasus Architecture
ReplicaServer
ReplicaManager
Replica
RocksDB
Replica Replica
ReplicaServer
ReplicaManager
Replica Replica Replica
RocksDB
ReplicaServer Design Choices
RocksDB RocksDB
• 避免不同Table/Partition的数据相互影响
• 更容易实现 Load Balance 和 Drop Table
• 方便将数据分散到多个SSD盘,提高并发能力
VS
RocksDB: Log-Based Storage System
Make commit log shared by all replicas
- 减少 write compete
- 适合 batch write
ReplicaServer
ReplicaManager
Replica Replica Replica
Commit Log
RPC
Architecture of ReplicaServer
• ReplicaServer管理多个Replica
• 每个Replica 独享 RocksDB
• 所有Replica 共享 Commit Log
RocksDB RocksDBRocksDB
RocksDB
memtable
sstable
Commit Log
Write
Checkpoint
• How to catch up:
• Learn checkpoint
• Learn commit log
Commit Log
is
Shared
Split
Shared Log Private Log+
批量缓存 & 异步写
用于Recovery
Shared Log Private Log
Considering Catch-Up ...
ReplicaServer
Replica
Learner实时追加
用于Learning
ReplicaServer
ReplicaManager
Replica
RocksDB
Shared Log
RPC
Improved Architecture of ReplicaServer
• Shared Log for Recovery
• Private Log for Learning
Private Log
Replica
Private Log
Replica
Private Log
RocksDB RocksDB
■ 只使用Default Column Family
■ 禁用Write Ahead Log
■ 并发控制:写操作在单线程中串行执行,读操作允许多线程并发执行
■ 数据扩展:写操作会额外传入数据在Log中的序号(Decree)
■ 优化快照:同步  异步,避免同步过程阻塞写操作
RocksDB
memtable
sstable
Commit Log
Write
Read
RocksDB as Storage Engine
Failover
Meta
Server
Replica
Server
dblog +
heartbeat
heartbeat
heartbeat
ZooKeeper
Replica
Server
Replica
Server
dblog +
dblog +
• MetaServer和所有的
ReplicaServer维持心跳
• Failure Detection通过心
跳来实现
• Failover有三种类型:
• Primary Failover
• Secondary Failover
• MetaServer Failover
Primary
ZooKeeper
Meta
Server
Secondary
Secondary
dblog + dblog +
Client Primary
dblog +
Primary Secondary
dblog +dblog +
1. 正常读写
2. Primary挂了
3. MetaServer选择一个Secondary
成为新的Primary
4. 补充Secondary
高可用
Primary Failover
Primary
ZooKeeper
Meta
Server
Secondary
Secondary
dblog + dblog +
dblog +
Client Secondary
dblog +
Secondary
dblog +
1. 正常读写
2. 某个Secondary挂了
3. Primary在一主一备状态下
继续提供服务
4. 补充Secondary
高可用
Secondary Failover
Meta
Server
Replica
Server
dblog +
heartbeat
heartbeat
heartbeat
ZooKeeper
Replica
Server
Replica
Server
dblog +
dblog +
Meta
Server
Meta
Server
heartbeat
heartbeat
heartbeat
1. 主MetaServer和所有的
ReplicaServer维持心跳
2. 主MetaServer挂了
3. 某个备MetaServer通过
ZooKeeper抢主成为新
的主MetaServer
4. 从ZooKeeper恢复状态
5. 重新和所有ReplicaServer
建立心跳
Meta
Server
Meta
Server
recover
高可用
MetaServer Failover
• Table软删除
• Table删除后,数据会保留一段时间,防止误删除
• 元数据恢复
• 元数据丢失或者损坏时,从各ReplicaServer收集并重建元数据
• 定期冷备份
• 数据定期备份到多种介质,譬如HDFS
• 在需要的时候快速恢复
• 跨机房热备
• 在多个机房部署集群
• 采用异步复制的方式实时同步数据
• 多集群可同时对外提供服务
Data Safety
• Built on rDSN (Robust Distributed System Nucleus) framework
• https://github.com/Microsoft/rDSN
Microkernel Architecture
Most Things Are Pluggable
Friendly for Testing,
Debugging and Monitoring
Lock RPC AIO Timer
Logging Replication … …
Engineering …
• Unit Test
• Integration Test
• Simulation Test
• Simulate cluster in single process
• Processing can be replayed
• Scenario Test
• Declarative language
• Construct different scenarios (executing paths / corner cases)
等待状态
发起动作
注入错误
设置属性
How to Test
等待状态
大 纲 背景
设计
总结
Why
Pegasus是对HBase的有力补充
• 更优异的性能:C++、No GC、Data Locality
• 更高的可用性:No GC、Faster Failover
• 更轻量的部署:No HDFS、No ZooKeeper (in the future)
• 更简单的接口:Key-Value
How WhatHow
Many choices …
Fit is the best
Future Work
• PacificA  Raft
• Key-Value  Tabular
• Remove ZooKeeper Dependency
• Performance Tuning
• Improve Load Balance
• Cross Row Transaction
• Open Source
Thanks
欢迎有志之士加入我们:分布式相关、人工智能相关
简历请发至邮箱:qinzuoyan@xiaomi.com
个人微信号:
附录
Pegasus写性能
■ 单机QPS 可达 1.5w+
■ 单机QPS<1w 时,平均延迟<5ms
■ 单机QPS<1w 时,P99 延迟<20ms
注:X轴Tn为单Client线程数,Y轴Cn为Client进程数,Z轴延迟单位为微妙,集群使用5个数据节点
Pegasus读性能
■ 单机QPS 可达 10w+
■ 单机QPS<5w 时,平均延迟<1ms
■ 单机QPS<5w 时,P99 延迟<5ms
注:X轴Tn为单Client线程数,Y轴Cn为Client进程数,Z轴延迟单位为微妙,集群使用5个数据节点
注:蓝色曲线为Pegasus,红色曲线为HBase,延迟单位为微妙,集群使用10个数据节点
对比HBase
■ 读性能优势明显
■ 写性能略差
三种角色:
• Leader
• Follower
• Candidate
两个过程:
• Leader选举
• 日志复制
两个多数:
• 多数投票
• 多数复制
三个限制:
• 投票限制
• 复制限制
• 提交限制
五个保证:
• Election Safety
• Leader Append-Only
• Log Matching
• Leader Completeness
• State Machine Safety
Raft Algorithm
Raft PacificA
Strong Leader
Replicated State Machine
Logical Time
Two-Phrase Commit
Heartbeat
Majority Vote First Come First Served
Majority Replication Fully Replication
Decomposition
Log-Based Storage System
Leader Election
Commit Condition
Safety Guarantee Additional Restriction Fully Replication
Lease-Based Failure Detection
租户 房主
RocksDB supports async-checkpoint
• RocksDB记录最后一次Write的 lastDecree
• 在Sync-Checkpoint时,需先 dump memtable,然后 同步等待 dump完成
• Dump完成后,将元数据和sstable拷贝至Checkpoint,然后使用 lastDecree 进行标记
• 在整个过程中 需阻塞写操作,降低可用性
RocksDB本身支持 Sync-Checkpoint :
RocksDB
memtable
sstablePrepare Log
Write
sstable
memtable
checkpoint
Write
lastDecree
RocksDB supports async-checkpoint
RocksDB
memtable
sstablePrepare Log
Write
• RocksDB的memtable/sstable都会记录 自己当前的lastDecree
• 在Async-Checkpoint时,直接忽略memtable的数据,将元数据和sstable拷贝至
Checkpoint,并使用所有sstable的 最大lastDecree 作为Checkpoint的decree标记
• 在整个过程中 无需阻塞写操作,保证可用性
改进的RocksDB支持 Async-Checkpoint :
checkpoint
lastDecree
参考
• PacificA Algorithm
• https://www.microsoft.com/en-us/research/wp-
content/uploads/2008/02/tr-2008-25.pdf
• Raft Algorithm
• https://raft.github.io/raft.pdf
• rDSN Framework
• https://github.com/Microsoft/rDSN
• Pegasus System
• https://github.com/XiaoMi/pegasus (coming soon)

Weitere ähnliche Inhalte

Was ist angesagt?

データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...NTT DATA Technology & Innovation
 
Apache HBase Performance Tuning
Apache HBase Performance TuningApache HBase Performance Tuning
Apache HBase Performance TuningLars Hofhansl
 
Ceph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Community
 
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識Hadoopの概念と基本的知識
Hadoopの概念と基本的知識Ken SASAKI
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)NTT DATA OSS Professional Services
 
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimHDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimDatabricks
 
Supporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability ImprovementsSupporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability ImprovementsDataWorks Summit
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRecruit Technologies
 
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...OpenStack Korea Community
 
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-Yuta Imai
 
Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)Sage Weil
 
2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific DashboardCeph Community
 
Presto on YARNの導入・運用
Presto on YARNの導入・運用Presto on YARNの導入・運用
Presto on YARNの導入・運用cyberagent
 
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~それでも環境依存は残っている~起きたり起きなかったりする問題のお話~
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~Hiroki Tateno
 
Crimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent MemoryCrimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent MemoryScyllaDB
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話Yoshinori Matsunobu
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~NTT DATA OSS Professional Services
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013Gluster.org
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveDataWorks Summit
 

Was ist angesagt? (20)

データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
 
Db2 V11 GUIツール
Db2 V11 GUIツールDb2 V11 GUIツール
Db2 V11 GUIツール
 
Apache HBase Performance Tuning
Apache HBase Performance TuningApache HBase Performance Tuning
Apache HBase Performance Tuning
 
Ceph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking ToolCeph Tech Talk -- Ceph Benchmarking Tool
Ceph Tech Talk -- Ceph Benchmarking Tool
 
Hadoopの概念と基本的知識
Hadoopの概念と基本的知識Hadoopの概念と基本的知識
Hadoopの概念と基本的知識
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
 
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon KimHDFS on Kubernetes—Lessons Learned with Kimoon Kim
HDFS on Kubernetes—Lessons Learned with Kimoon Kim
 
Supporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability ImprovementsSupporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability Improvements
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
 
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...
[OpenInfra Days Korea 2018] Day 2 - CEPH 운영자를 위한 Object Storage Performance T...
 
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-
EC2のストレージどう使う? -Instance Storageを理解して高速IOを上手に活用!-
 
Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)
 
2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard2021.02 new in Ceph Pacific Dashboard
2021.02 new in Ceph Pacific Dashboard
 
Presto on YARNの導入・運用
Presto on YARNの導入・運用Presto on YARNの導入・運用
Presto on YARNの導入・運用
 
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~それでも環境依存は残っている~起きたり起きなかったりする問題のお話~
それでも環境依存は残っている~起きたり起きなかったりする問題のお話~
 
Crimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent MemoryCrimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent Memory
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
 

Ähnlich wie Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)

大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构drewz lin
 
Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at TaobaoJoshua Zhu
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结redhat9
 
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华zhuozhe
 
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2redhat9
 
Truck js 高性能移动web开发解决方案
Truck js 高性能移动web开发解决方案Truck js 高性能移动web开发解决方案
Truck js 高性能移动web开发解决方案美团技术团队
 
Hbase架构简介、实践
Hbase架构简介、实践Hbase架构简介、实践
Hbase架构简介、实践Li Map
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangCeph Community
 
Golang 高性能实战
Golang 高性能实战Golang 高性能实战
Golang 高性能实战rfyiamcool
 
How do we manage more than one thousand of Pegasus clusters - backend part
How do we manage more than one thousand of Pegasus clusters - backend partHow do we manage more than one thousand of Pegasus clusters - backend part
How do we manage more than one thousand of Pegasus clusters - backend partacelyc1112009
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails serverMichael Chen
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3redhat9
 
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdfStevenShing
 
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局Alex Lau
 
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...acelyc1112009
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Yang Guanjun
 
How does Apache Pegasus used in SensorsData
How does Apache Pegasusused in SensorsDataHow does Apache Pegasusused in SensorsData
How does Apache Pegasus used in SensorsDataacelyc1112009
 
2016-07-12 Introduction to Big Data Platform Security
2016-07-12 Introduction to Big Data Platform Security2016-07-12 Introduction to Big Data Platform Security
2016-07-12 Introduction to Big Data Platform SecurityJazz Yao-Tsung Wang
 

Ähnlich wie Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016) (20)

大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构
 
Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at Taobao
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结
 
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华
 
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2
 
Truck js 高性能移动web开发解决方案
Truck js 高性能移动web开发解决方案Truck js 高性能移动web开发解决方案
Truck js 高性能移动web开发解决方案
 
Hbase架构简介、实践
Hbase架构简介、实践Hbase架构简介、实践
Hbase架构简介、实践
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
 
Golang 高性能实战
Golang 高性能实战Golang 高性能实战
Golang 高性能实战
 
How do we manage more than one thousand of Pegasus clusters - backend part
How do we manage more than one thousand of Pegasus clusters - backend partHow do we manage more than one thousand of Pegasus clusters - backend part
How do we manage more than one thousand of Pegasus clusters - backend part
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails server
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
 
MogileFS
MogileFSMogileFS
MogileFS
 
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
 
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
 
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析
 
How does Apache Pegasus used in SensorsData
How does Apache Pegasusused in SensorsDataHow does Apache Pegasusused in SensorsData
How does Apache Pegasus used in SensorsData
 
2016-07-12 Introduction to Big Data Platform Security
2016-07-12 Introduction to Big Data Platform Security2016-07-12 Introduction to Big Data Platform Security
2016-07-12 Introduction to Big Data Platform Security
 

Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)