Submit Search
Upload
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
•
1 like
•
1,388 views
Hang Geng
Follow
Ceph 中国社区首次北京站沙龙技术演讲活动PPT
Read less
Read more
Software
Report
Share
Report
Share
1 of 16
Download now
Download to read offline
Recommended
MySQL aio
MySQL aio
zhaolinjnu
Nodejs异步原理和缺陷 - 赵成
Nodejs异步原理和缺陷 - 赵成
Jackson Tian
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
Aisanux安装光盘分析
Aisanux安装光盘分析
Guangyao Cheng
全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版
Simen Li
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
如何在 Tomcat 下安装 solr 4
如何在 Tomcat 下安装 solr 4
YUCHENG HU
揭秘家用路由器Ch10 sharing
揭秘家用路由器Ch10 sharing
Yi-Jun Zheng
Recommended
MySQL aio
MySQL aio
zhaolinjnu
Nodejs异步原理和缺陷 - 赵成
Nodejs异步原理和缺陷 - 赵成
Jackson Tian
不一樣的Web server... coServ
不一樣的Web server... coServ
Ben Lue
Aisanux安装光盘分析
Aisanux安装光盘分析
Guangyao Cheng
全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版
Simen Li
Mysql展示功能与源码对应
Mysql展示功能与源码对应
zhaolinjnu
如何在 Tomcat 下安装 solr 4
如何在 Tomcat 下安装 solr 4
YUCHENG HU
揭秘家用路由器Ch10 sharing
揭秘家用路由器Ch10 sharing
Yi-Jun Zheng
Python包管理工具介绍
Python包管理工具介绍
Young King
Strace debug
Strace debug
luo jing
常用Mac/Linux命令分享
常用Mac/Linux命令分享
Yihua Huang
Analysis on tcp ip protocol stack
Analysis on tcp ip protocol stack
Yueshen Xu
Head first in xmemcached yanf4j
Head first in xmemcached yanf4j
wavefly
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
Linux安全配置终极指南
Linux安全配置终极指南
wensheng wei
Mac os Terminal 常用指令與小技巧
Mac os Terminal 常用指令與小技巧
Chen Liwei
Apache+php+mysql在Linux下的安装与配置
Apache+php+mysql在Linux下的安装与配置
wensheng wei
Windows 10 install mysql 8.0.16
Windows 10 install mysql 8.0.16
songwenxuan2020
compiler fuzzer : prog fuzz介紹
compiler fuzzer : prog fuzz介紹
fdgkhdkgh tommy
BASH 漏洞深入探討
BASH 漏洞深入探討
Tim Hsu
Php
Php
pukongkong
Introduce to Linux command line
Introduce to Linux command line
Wen Liao
Node.js 异步任务的四种模式
Node.js 异步任务的四种模式
Stackia Jia
Aio
Aio
Masaaki HIROSE
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Hang Geng
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Hang Geng
Intorduce to Ceph
Intorduce to Ceph
kao kuo-tung
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
Jens Hadlich
CephFS update February 2016
CephFS update February 2016
John Spray
Red Hat Storage for Mere Mortals
Red Hat Storage for Mere Mortals
Red_Hat_Storage
More Related Content
What's hot
Python包管理工具介绍
Python包管理工具介绍
Young King
Strace debug
Strace debug
luo jing
常用Mac/Linux命令分享
常用Mac/Linux命令分享
Yihua Huang
Analysis on tcp ip protocol stack
Analysis on tcp ip protocol stack
Yueshen Xu
Head first in xmemcached yanf4j
Head first in xmemcached yanf4j
wavefly
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
Linux安全配置终极指南
Linux安全配置终极指南
wensheng wei
Mac os Terminal 常用指令與小技巧
Mac os Terminal 常用指令與小技巧
Chen Liwei
Apache+php+mysql在Linux下的安装与配置
Apache+php+mysql在Linux下的安装与配置
wensheng wei
Windows 10 install mysql 8.0.16
Windows 10 install mysql 8.0.16
songwenxuan2020
compiler fuzzer : prog fuzz介紹
compiler fuzzer : prog fuzz介紹
fdgkhdkgh tommy
BASH 漏洞深入探討
BASH 漏洞深入探討
Tim Hsu
Php
Php
pukongkong
Introduce to Linux command line
Introduce to Linux command line
Wen Liao
Node.js 异步任务的四种模式
Node.js 异步任务的四种模式
Stackia Jia
What's hot
(15)
Python包管理工具介绍
Python包管理工具介绍
Strace debug
Strace debug
常用Mac/Linux命令分享
常用Mac/Linux命令分享
Analysis on tcp ip protocol stack
Analysis on tcp ip protocol stack
Head first in xmemcached yanf4j
Head first in xmemcached yanf4j
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Linux安全配置终极指南
Linux安全配置终极指南
Mac os Terminal 常用指令與小技巧
Mac os Terminal 常用指令與小技巧
Apache+php+mysql在Linux下的安装与配置
Apache+php+mysql在Linux下的安装与配置
Windows 10 install mysql 8.0.16
Windows 10 install mysql 8.0.16
compiler fuzzer : prog fuzz介紹
compiler fuzzer : prog fuzz介紹
BASH 漏洞深入探討
BASH 漏洞深入探討
Php
Php
Introduce to Linux command line
Introduce to Linux command line
Node.js 异步任务的四种模式
Node.js 异步任务的四种模式
Viewers also liked
Aio
Aio
Masaaki HIROSE
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Hang Geng
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Hang Geng
Intorduce to Ceph
Intorduce to Ceph
kao kuo-tung
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
Jens Hadlich
CephFS update February 2016
CephFS update February 2016
John Spray
Red Hat Storage for Mere Mortals
Red Hat Storage for Mere Mortals
Red_Hat_Storage
Ceph Block Devices: A Deep Dive
Ceph Block Devices: A Deep Dive
Red_Hat_Storage
Red Hat Gluster Storage Performance
Red Hat Gluster Storage Performance
Red_Hat_Storage
Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)
Sage Weil
Ceph Introduction 2017
Ceph Introduction 2017
Karan Singh
Divein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetup
Jiaying Ren
Rgw multisite-overview v2
Rgw multisite-overview v2
Jiaying Ren
Ceph Intro and Architectural Overview by Ross Turk
Ceph Intro and Architectural Overview by Ross Turk
buildacloud
A crash course in CRUSH
A crash course in CRUSH
Sage Weil
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for Ceph
Sage Weil
Viewers also liked
(16)
Aio
Aio
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Ceph中国社区9.19 Ceph FS-基于RADOS的高性能分布式文件系统02-袁冬
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Intorduce to Ceph
Intorduce to Ceph
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
Ceph Object Storage at Spreadshirt (July 2015, Ceph Berlin Meetup)
CephFS update February 2016
CephFS update February 2016
Red Hat Storage for Mere Mortals
Red Hat Storage for Mere Mortals
Ceph Block Devices: A Deep Dive
Ceph Block Devices: A Deep Dive
Red Hat Gluster Storage Performance
Red Hat Gluster Storage Performance
Storage tiering and erasure coding in Ceph (SCaLE13x)
Storage tiering and erasure coding in Ceph (SCaLE13x)
Ceph Introduction 2017
Ceph Introduction 2017
Divein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetup
Rgw multisite-overview v2
Rgw multisite-overview v2
Ceph Intro and Architectural Overview by Ross Turk
Ceph Intro and Architectural Overview by Ross Turk
A crash course in CRUSH
A crash course in CRUSH
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for Ceph
Similar to Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
Node.js长连接开发实践
Node.js长连接开发实践
longhao
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Angel Boy
Tcfsh bootcamp day2
Tcfsh bootcamp day2
Xatierlike Lee
big web site
big web site
tanjianwei3
Baidu Cloud Foundry
Baidu Cloud Foundry
James Watters
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming Skills
Ho Kim
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
zhen chen
Linux c++ 编程之链接与装载 -基础篇--v0.3--20120509
Linux c++ 编程之链接与装载 -基础篇--v0.3--20120509
tidesq
Nio trick and trap
Nio trick and trap
dennis zhuang
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
taobao.com
COSCUP 2010 - node.JS 於互動式網站之應用
COSCUP 2010 - node.JS 於互動式網站之應用
ericpi Bi
Redis 介绍 -田琪
Redis 介绍 -田琪
Shaoning Pan
使用Lua提高开发效率
使用Lua提高开发效率
gowell
千呼萬喚始出來的Java SE 7
千呼萬喚始出來的Java SE 7
javatwo2011
Node分享 展烨
Node分享 展烨
tb-vertical-guide
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
Alex Lau
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版
Jackson Tian
为啥别读HotSpot VM的源码(2012-03-03)
为啥别读HotSpot VM的源码(2012-03-03)
Kris Mok
IOS入门分享
IOS入门分享
zenyuhao
MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程
Lixun Peng
Similar to Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
(20)
Node.js长连接开发实践
Node.js长连接开发实践
Linux binary Exploitation - Basic knowledge
Linux binary Exploitation - Basic knowledge
Tcfsh bootcamp day2
Tcfsh bootcamp day2
big web site
big web site
Baidu Cloud Foundry
Baidu Cloud Foundry
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming Skills
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
Linux c++ 编程之链接与装载 -基础篇--v0.3--20120509
Linux c++ 编程之链接与装载 -基础篇--v0.3--20120509
Nio trick and trap
Nio trick and trap
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
COSCUP 2010 - node.JS 於互動式網站之應用
COSCUP 2010 - node.JS 於互動式網站之應用
Redis 介绍 -田琪
Redis 介绍 -田琪
使用Lua提高开发效率
使用Lua提高开发效率
千呼萬喚始出來的Java SE 7
千呼萬喚始出來的Java SE 7
Node分享 展烨
Node分享 展烨
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版
为啥别读HotSpot VM的源码(2012-03-03)
为啥别读HotSpot VM的源码(2012-03-03)
IOS入门分享
IOS入门分享
MySQL源码分析.01.代码结构与基本流程
MySQL源码分析.01.代码结构与基本流程
Ceph中国社区9.19 Ceph IO 路径 和性能分析-王豪迈05
1.
2015.9.14 Ceph IO 路径 和性能分析 王豪迈
2.
I’m Haomai ✤ Ceph
开发者 ✤ 之前做 OpenStack, Ceph ✤ 现在关注容器,Ceph ✤ 涉猎数据库,存储,⽂文件系统
3.
IO 层次
4.
API Interface ✤ rados_aio_write(rados_ioctx_t
io, const char *oid, rados_completion_t completion, const char *buf, size_t len, uint64_t off) ✤ rados_aio_read(rados_ioctx_t io, const char *oid, rados_completion_t completion, char *buf, size_t len, uint64_t off); ✤ 特点: ✤ 类 POSIX 但没有⽬目录结构 ✤ 丰富的 callback 语意,异步通知
5.
Session Layer ✤ Objecter::read(const
object_t& oid, const object_locator_t& oloc, uint64_t off, uint64_t len, snapid_t snap, bufferlist *pbl, int flags, Context *onfinish,version_t *objver, ObjectOperation *extra_ops) ✤ Objecter::write(const object_t& oid, const object_locator_t& oloc, uint64_t off, uint64_t len, const SnapContext& snapc, const bufferlist &bl, utime_t mtime, int flags, Context *onack, Context *oncommit, version_t *objver, ObjectOperation *extra_ops) ✤ 特点: ✤ 增加位置和版本信息 ✤ 合并操作
6.
Messenger Layer ✤ Connection::send_message(Message
*m) ✤ Dispatcher::ms_dispatch(Message *m) ✤ 特点: ✤ Ops -> Message(连续字节流) ✤ ⾼高度封装,处理重传,⽹网络错误
7.
Dispatcher Layer ✤ OSD::handle_op(OpRequestRef&
op, OSDMapRef& osdmap) ✤ 特点: ✤ Message -> OpRequest ✤ 基本信息校验(合法性,权限,完整性,正确性) ✤ 重定向
8.
Replication Layer ✤ ReplicatedPG::execute_ctx(OpContext
*ctx) ✤ 特点: ✤ OpRequest -> OpContext ✤ 请求解析,上下⽂文组建 ✤ 读类型请求执⾏行 ✤ 写请求组建事务(Transaction) ✤ 写请求增加⼀一致性操作⽇日志(Undo Log)
9.
PG Backend Layer ✤
特点: ✤ OpContext -> RepGather ✤ 不同回调实现 ✤ 实现写操作⽅方式
10.
Store Backend ✤ ObjectStore::queue_transactions(Sequencer
*osr, list<Transaction*>& tls, Context *onreadable, Context *ondisk, Context *onreadable_sync, TrackedOpRef op, ThreadPool::TPHandle *handle) ✤ 特点: ✤ Repop -> Transaction ✤ 保证原⼦子性 ✤ 异步 IO
11.
任何计算机问题总能通过加层解决 - Someone
12.
性能问题 ✤ 低延迟⾼高 IOPS
问题 ✤ 复杂的分层模型 ✤ ⽹网络 ✤ 存储 ✤ ⾼高吞吐设备利⽤用问题 ✤ 存储 ✤ 数据附加 Overhead
13.
Store ✤ FileStore ✤ KeyValueStore ✤
DB ✤ 硬件 API ✤ MemStore ✤ NewStore
14.
Messenger ✤ Simple ✤ poll ✤
线程调度 ✤ Async ✤ select/epoll/kqueue/evport … ✤ 事件驱动 ✤ Xio ✤ tcp/rdma ✤ incompatible
15.
Pipeline VCPU Thread Qemu Main Thread Pipe::Writer Pipe::Reader
DispatchThreader OSD::OpWQ FileJournal::Writer FileJournal->finisher FileStore::OpWQFileStore::SyncThreadPipe::WriterPipe::ReaderDispatchThreader FileStore->op_finisherFileStore->ondisk_finisherRadosClient->finisher
16.
谢谢!
Download now