Enviar pesquisa
Carregar
分布式爬虫
•
1 gostou
•
1,386 visualizações
D
drewz lin
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 30
Baixar agora
Baixar para ler offline
Recomendados
分布式爬虫
分布式爬虫
mysqlops
鳳山高中/網頁應用程式開發入門 I
鳳山高中/網頁應用程式開發入門 I
Lorex L. Yang
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
Lorex L. Yang
北護大/FHIR 開發簡介與應用
北護大/FHIR 開發簡介與應用
Lorex L. Yang
資料分析的前奏曲 談資料收集的挑戰
資料分析的前奏曲 談資料收集的挑戰
Shih-En Chou
FHIR Server 安裝與使用
FHIR Server 安裝與使用
Lorex L. Yang
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
ChinaNetCloud
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知
Justin Lin
Recomendados
分布式爬虫
分布式爬虫
mysqlops
鳳山高中/網頁應用程式開發入門 I
鳳山高中/網頁應用程式開發入門 I
Lorex L. Yang
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
Lorex L. Yang
北護大/FHIR 開發簡介與應用
北護大/FHIR 開發簡介與應用
Lorex L. Yang
資料分析的前奏曲 談資料收集的挑戰
資料分析的前奏曲 談資料收集的挑戰
Shih-En Chou
FHIR Server 安裝與使用
FHIR Server 安裝與使用
Lorex L. Yang
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
ChinaNetCloud
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知
Justin Lin
網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019
Justin Lin
Wad(web application detector)
Wad(web application detector)
lxghost
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
yczealot
OWASP Top 10 (2013) 正體中文版
OWASP Top 10 (2013) 正體中文版
Bruce Chen
長榮大學/資料庫系統初探
長榮大學/資料庫系統初探
Lorex L. Yang
Android Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps Security
Taien Wang
你不知道的HTTP 之 跨域XHR
你不知道的HTTP 之 跨域XHR
fool2fish
9 secredteam recon
9 secredteam recon
rassec-yds
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Joshua Zhu
前端性能测试
前端性能测试
tbmallf2e
前端静态文件部署
前端静态文件部署
Charles Wu
陽明大學/FHIR 快速跳坑指南
陽明大學/FHIR 快速跳坑指南
Lorex L. Yang
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
高性能Web应用缓存架构设计浅谈
高性能Web应用缓存架构设计浅谈
Alvin Qi
刘源 人人网服务化与架构变迁V3
刘源 人人网服务化与架构变迁V3
drewz lin
Pegasus In Depth (2018/10)
Pegasus In Depth (2018/10)
涛 吴
Web开发与运维安全浅见
Web开发与运维安全浅见
mysqlops
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
涛 吴
redis 适用场景与实现
redis 适用场景与实现
iammutex
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)
涛 吴
那些非理性的测试行为——心理学诠释常见的测试怪象
那些非理性的测试行为——心理学诠释常见的测试怪象
drewz lin
Vulnex app secusa2013
Vulnex app secusa2013
drewz lin
Mais conteúdo relacionado
Mais procurados
網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019
Justin Lin
Wad(web application detector)
Wad(web application detector)
lxghost
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
yczealot
OWASP Top 10 (2013) 正體中文版
OWASP Top 10 (2013) 正體中文版
Bruce Chen
長榮大學/資料庫系統初探
長榮大學/資料庫系統初探
Lorex L. Yang
Android Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps Security
Taien Wang
你不知道的HTTP 之 跨域XHR
你不知道的HTTP 之 跨域XHR
fool2fish
9 secredteam recon
9 secredteam recon
rassec-yds
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Joshua Zhu
前端性能测试
前端性能测试
tbmallf2e
前端静态文件部署
前端静态文件部署
Charles Wu
陽明大學/FHIR 快速跳坑指南
陽明大學/FHIR 快速跳坑指南
Lorex L. Yang
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
高性能Web应用缓存架构设计浅谈
高性能Web应用缓存架构设计浅谈
Alvin Qi
刘源 人人网服务化与架构变迁V3
刘源 人人网服务化与架构变迁V3
drewz lin
Pegasus In Depth (2018/10)
Pegasus In Depth (2018/10)
涛 吴
Web开发与运维安全浅见
Web开发与运维安全浅见
mysqlops
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
涛 吴
redis 适用场景与实现
redis 适用场景与实现
iammutex
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)
涛 吴
Mais procurados
(20)
網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019
Wad(web application detector)
Wad(web application detector)
Nosql七种武器之长生剑 mongodb的使用介绍
Nosql七种武器之长生剑 mongodb的使用介绍
OWASP Top 10 (2013) 正體中文版
OWASP Top 10 (2013) 正體中文版
長榮大學/資料庫系統初探
長榮大學/資料庫系統初探
Android Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps Security
你不知道的HTTP 之 跨域XHR
你不知道的HTTP 之 跨域XHR
9 secredteam recon
9 secredteam recon
Hacking Nginx at Taobao
Hacking Nginx at Taobao
前端性能测试
前端性能测试
前端静态文件部署
前端静态文件部署
陽明大學/FHIR 快速跳坑指南
陽明大學/FHIR 快速跳坑指南
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
高性能Web应用缓存架构设计浅谈
高性能Web应用缓存架构设计浅谈
刘源 人人网服务化与架构变迁V3
刘源 人人网服务化与架构变迁V3
Pegasus In Depth (2018/10)
Pegasus In Depth (2018/10)
Web开发与运维安全浅见
Web开发与运维安全浅见
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
Behind Pegasus, What matters in a Distributed System (Arch summit shenzhen_2017)
redis 适用场景与实现
redis 适用场景与实现
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Destaque
那些非理性的测试行为——心理学诠释常见的测试怪象
那些非理性的测试行为——心理学诠释常见的测试怪象
drewz lin
Vulnex app secusa2013
Vulnex app secusa2013
drewz lin
Top100summit东软 孙广宇-uni sdp基于html5构建的跨平台的统一智能设备解决方案
Top100summit东软 孙广宇-uni sdp基于html5构建的跨平台的统一智能设备解决方案
drewz lin
Do it in-production-seth_eliot_2013_03
Do it in-production-seth_eliot_2013_03
drewz lin
Appsec usa roberthansen
Appsec usa roberthansen
drewz lin
大型网站架构
大型网站架构
drewz lin
Destaque
(6)
那些非理性的测试行为——心理学诠释常见的测试怪象
那些非理性的测试行为——心理学诠释常见的测试怪象
Vulnex app secusa2013
Vulnex app secusa2013
Top100summit东软 孙广宇-uni sdp基于html5构建的跨平台的统一智能设备解决方案
Top100summit东软 孙广宇-uni sdp基于html5构建的跨平台的统一智能设备解决方案
Do it in-production-seth_eliot_2013_03
Do it in-production-seth_eliot_2013_03
Appsec usa roberthansen
Appsec usa roberthansen
大型网站架构
大型网站架构
Semelhante a 分布式爬虫
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
ph4nt0m
美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统
美团点评技术团队
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华
zhuozhe
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Ceph Community
周世恩/資料分析前的奏曲 : 談資料收集的挑戰
周世恩/資料分析前的奏曲 : 談資料收集的挑戰
台灣資料科學年會
数据库Sharding专题
数据库Sharding专题
清平 张
使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心
Du Yamin
摘星
摘星
zenyuhao
用戶端攻擊與防禦
用戶端攻擊與防禦
Taien Wang
白玉磊 Webrebuild
白玉磊 Webrebuild
裕波 周
石玉磊 Web rebuild
石玉磊 Web rebuild
Webrebuild
大众点评网的技术变迁之路
大众点评网的技术变迁之路
jeffz
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
Shanda innovation institute
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
鹰眼下的淘宝_EagleEye with Taobao
鹰眼下的淘宝_EagleEye with Taobao
terryice
阿里CDN技术揭秘
阿里CDN技术揭秘
Joshua Zhu
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lake
James Chen
大规模网站架构
大规模网站架构
drewz lin
碰撞
碰撞
yq76034150
搜索引擎技术介绍
搜索引擎技术介绍
bigqiang zou
Semelhante a 分布式爬虫
(20)
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统
浅析分布式存储架构—设计自己的存储- 58同城徐振华
浅析分布式存储架构—设计自己的存储- 58同城徐振华
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
周世恩/資料分析前的奏曲 : 談資料收集的挑戰
周世恩/資料分析前的奏曲 : 談資料收集的挑戰
数据库Sharding专题
数据库Sharding专题
使用GoogleAppEngine建立个人信息中心
使用GoogleAppEngine建立个人信息中心
摘星
摘星
用戶端攻擊與防禦
用戶端攻擊與防禦
白玉磊 Webrebuild
白玉磊 Webrebuild
石玉磊 Web rebuild
石玉磊 Web rebuild
大众点评网的技术变迁之路
大众点评网的技术变迁之路
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
鹰眼下的淘宝_EagleEye with Taobao
鹰眼下的淘宝_EagleEye with Taobao
阿里CDN技术揭秘
阿里CDN技术揭秘
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lake
大规模网站架构
大规模网站架构
碰撞
碰撞
搜索引擎技术介绍
搜索引擎技术介绍
Mais de drewz lin
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
drewz lin
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
drewz lin
Phu appsec13
Phu appsec13
drewz lin
Owasp2013 johannesullrich
Owasp2013 johannesullrich
drewz lin
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
drewz lin
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
drewz lin
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
drewz lin
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
drewz lin
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
drewz lin
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
drewz lin
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
drewz lin
Appsec2013 presentation
Appsec2013 presentation
drewz lin
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
drewz lin
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martin
drewz lin
Amol scadaowasp
Amol scadaowasp
drewz lin
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
drewz lin
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
drewz lin
新浪微博稳定性经验谈
新浪微博稳定性经验谈
drewz lin
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu
drewz lin
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)
drewz lin
Mais de drewz lin
(20)
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
Phu appsec13
Phu appsec13
Owasp2013 johannesullrich
Owasp2013 johannesullrich
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation
Appsec2013 presentation
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec2013 assurance tagging-robert martin
Appsec2013 assurance tagging-robert martin
Amol scadaowasp
Amol scadaowasp
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
新浪微博稳定性经验谈
新浪微博稳定性经验谈
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)
分布式爬虫
1.
分布式爬虫 2011.12.10 云峰 www.weibo.com@fengyuncrawl
2.
2 提纲 • 全网爬虫和垂直爬虫 • 分布式框架 •
海量数据存储 • SSD作缓存和虚拟内存 • Q&A
3.
通用爬虫 初始url(种子) 下载页面 解析 将抽取的内容保存 缺点: 1. 噪音多 2.信息密度低,无联系 3.结构简单化
4.
深度爬虫 增加 1.link分析,网页权重计算 2.URL权重队列 四个困难: 1.高效算法去重(bloom filter) 2.表单验证(校验码)(OCR) 3,正文抽取(vips,dom特征计算和缓存) 4.Ajax如何解析(webkit)
5.
深度爬虫架构
6.
垂直爬虫 四大微博采集 新浪api受限,一次只能采集500粉丝,历史微博数据只能采集最新的200条 前期被封ip,账号。用代理ip采集(代理算法)目前这个方法也快撑不住了 如何实时采集微博(通过马甲),新浪有“2亿”用户,如何能采集完,僵尸粉怎么过滤? 登入的两种方式: 1.使用自动登录的方式获得网页内容。 2.使用cookie(人工申请)的方式获得网页内容。 采集是个持久战 近期在想新方法采集
7.
实时微博搜索 1.社交网络的用户更新的状态信息,发表微 博,评论,转发等都依附于用户存在,通过 用户ID不同,把网络分为不同区域。 2.信息队列负责信息的过滤,分类,排序。 3.内存索引周期更新实时性很高的数据。 4.静态索引将内存索引的信息同步入磁盘, 毕竟内存容量有限。 5.用户界面提供数据的接口进行搜索与查看
8.
疑问 1.系统越来越庞大,分散节点越来越多 2.不同模块,不同输入和输出,配置文件杂乱无章 3.重复工作很多
9.
分布式爬虫(主从架构) 1.主从结构,爬行控制器和终端 2.控制器控制(master)全部爬行器 同步和终止命令 3.终端(slave)负责信息的采集, 将拓扑信息反馈控制器
10.
中间件 1.主控和搜集之间使用中间件链接 2.高性能,可扩展 3.中间件提供api可以让系统人员 尽量将注意力放应用层上,避免底 层通信接口的编写繁琐工作 缺点:各抓取进程之间是独立的, master会成为系统的性能瓶颈
11.
疑问 海量数据如何存储
12.
海量数据存储 1.memcached+redis+mysql,分级存储 2.Hadoop分布式存储 3.mongodb集群 4.fastdb,voltdb实时内存分布式数据库+海量存储
13.
分级存储 1.根据时间维度划分数据表(冷热) 2.存储同时也是缓存(一级,二级...) 举例: memcached+redis+mysql 缺点:一致性不能保证,只能实现最终一 致性
14.
Hadoop分布式存储(大文件) 1.适合大文件分块存储,每块64块, 冗余存储 2.分块持久化2种方法: 每个分块单独存储一个文件,用文 件名做索引键号。 将属于同一大文件的分块存储为 一个文件,利用调度,将文件分散存 储在分布式节点。
15.
Hadoop分布式存储(大小文件混合) 1.双master,主服务器和查询服务器。 2.主服务器发送修改信息,同步查询 服务器。 3.查询负责文件和数据块的映射管 理,提高文件的读取速率,进而提高 系统对小文件的处理速度 4.结构化和非结构化分别用Hbase和 HDFS存储 5.为了数据快速读取,采用分层二级 分布式缓存memcached
16.
MapReduce 1.Map-Reduce五步骤:输入文件,将文件 分配给多个worker并行地执行,写中间文 件(本地写),多个Reduce workers同时 运行,输出最终结果 2.本地写中间文件减少网络带宽与时间耗 费。执行Reduce时,从Master获得中间文 件位置信息,Reduce使用远程过程调用, 从中间文件所在节点读取所需数据。 MR的缺点: 1.很多问题难以抽象成Map和Reduce操 作; 2.实现迭代算法时效率低; 3.执行多集的交运算时效率不高。
17.
海量实时数据存储 1.为了高速处理,采用线程池技术实现数据写 入请求,通过使用多个多核cpu并行处理来自一 个tcp链接上的多个请求报文。 2.同样读取也采用线程池并行处理,采用LRU 缓存算法将常用数据保持在高速缓存中。 3.采用分块内存映射文件方法,多个工作线程 并发地将数据文件需要的部分进行映射 实时海量数据库将数据分为两类:离散和连续数 据。采用不同的数据处理方法。离散数据指变化 不连续数据,采用无损压缩处理(Huffman), 而连续数据指连续变化,采用有损压缩(带宽压 缩),对历史数据进行有损压缩,压缩处理后再 经过无损压缩最后存储在磁盘上。
18.
“打败”CAP原理 Twitter首席工程师发表了一篇论文 http://www.programmer.com.cn/9260/ 数据CRUD-->CR 持久化层分为实时+海量批处理
19.
fastdb实时内存数据库 1.使用内存映射文件技术作为内存数 据库文件由磁盘至内存的加载和访 问 2.如果数据库的大小大于系统中实际 物理内存时,操作系统会swap 3.当用户访问不在内存中,操作系统 产生缺页,将需要的数据从磁盘调 度到内存,并将近期不用数据调回 磁盘。
20.
磁盘缓冲管理 1.用户线程的磁盘块读写操作请求,将 首先检查该数据块在磁盘缓冲中是否 存在,如果已存在则直接返回给用户 线程 2.如果不在则磁盘缓冲区向I/O任务池 写入一个对应的数据块读请求,在I/O 线程返回有效磁盘块前,用户线程等 待请求完成。 3.总之尽可能将重要数据放内存,减少 对磁盘访问
21.
疑问 mysql storage engine(myisam,innodb)关系型数据库 保证数据一致性 能否将mysql改成并行分布式挑战Hadoop?
22.
mysql并行分布式 mysql+spider+Distributed kv store http://spiderformysql.com/product.html
23.
SSD vs 磁盘(读取) 磁盘为West
Digital WD5000AAKS,所用SSD 为ADATA 32G。测试闪存在不同块大小下的 顺序读取速度和随机读取速度,随着块大小的增 加无论固态硬盘还是磁盘读取速度都显著提高。 固态硬盘的顺序读取速度高于磁盘。随机存取 性能固态硬盘优势比较明显,要高于磁盘一至二 个数量级 这是由于磁盘采用机械设备寻址缓慢。在相同 块大小情况下固态硬盘顺序与随机读取速度相 差不多,这是SSD的一大特点。
24.
SSD vs 磁盘(写入) 在不同块大小下固态硬盘顺序写入与随机写入的 区别,由于写入测试需要事先清空所有数据,而操 作系统装在磁盘上,所以无法对磁盘写入进行测试, 不过磁盘读取与写入速度相近。固态硬盘的顺序 写入速度要远远快于随机写入,但两者都要慢于相 应的读取操作。这是由于随机写入需要更多的擦 除操作造成 随机写入速度甚至要慢于磁盘相应速度一个数量 级。所以在设计固态硬盘的策略时,要尽量避免 随机写入操作,有时甚至不惜以增加读取操作为 代价。写入速度与读取速度之间的明显差异是固 态硬盘与磁盘的一个不同之处。
25.
SSD vs 磁盘(测试性能) 1.随着分配的内存增加,磁盘与SSD的每秒处 理的事务数量(TPS)均有所增加,但是SSD要 高于磁盘,特别是当分配内存较小时,SSD比 磁盘快3倍左右。 2.小粒度的写入操作如数据库中日志的记 录,SSD性能甚至要低于磁盘。所以,要提高 ssd的性能,改进随机写入操作是关键。
26.
SSD固态硬盘 页地址映射 1.RAM上存储页映射表 2.Flash上存储各单元的数据信息。 3.SSD非定点更新和写之前擦除整个块,导致写操作 和磁盘不同,当FTL层接到写命令后,直接将数据写 到空闲块中,之后写命令通过逻辑地址查找地址映射 表找到物理地址,最后写入这一页。垃圾回收将块中 的有效数据迁移擦除放入空闲区
27.
SSD+Innodb(磁盘) 1.应用一,顺序I/O放传统磁盘,随机I/O放SSD, 随机I/O文件包括(*.ibd)文件,ibdata文件,顺序 I/O包括redo log ,binary,
slow query logs, error logs。 2.应用二,SSD作为InnoDB的二级缓存,配置参数 innodb_secondary_buffer_pool。当缓存页移出 InnoDB的缓冲池时,InnoDB会将其移动到SSD 上
28.
SSD作为虚拟内存 Redis+SSD存储 用SSD为块单位作为写缓冲区,将数据库 大量对虚拟内存随机写作为主存缓存起 来,写满时,将缓冲数据一同写入虚拟内 存中,这样将大量随机写转化为一次连续 写,利用SSD高速的随机读同时,将多个 随机写数据缓存,合并,转化为一个连续 的写入操作,提高数据库对虚拟内存写操 作的速度 缺点是虽然向SSD按块append写, 而且追加方式不存在数据块的擦除 和重写,但是虚拟内存会爆增。导 致系统经常swap,和内存交换数据 频繁,系统性能下降
29.
SSD文件系统 1.存储分为块+页。 2.每页由用户空间和剩余空间。 3.页的用户空间存文件数据,剩余空间放页 状态(空,好,脏)和页类别(是否有索引) 4.索引存索引更新号,下一个擦除块,空闲 页号,块状态表(好,坏),页状态表,文件 目录表。 5.文件建立内存映射,文件append写入,将 擦除块脏页数据写到空页再垃圾回收
30.
结束 谢谢观赏!
Baixar agora