搜索
搜 索
本版
文章
帖子
用户
图文精华
hadoop-2.6.0+zookeeper-3.4.6+hbase-1.0.0+hive-1.1.0完全分布 ...
首页
Portal
专题
BBS
面试
更多
登录
注册
用户组:游客
主题
帖子
云币
我的帖子
我的收藏
我的好友
我的勋章
设置
退出
导读
淘贴
博客
群组
社区VIP
APP下载
今日排行
本周排行
本周热帖
本月排行
本月热帖
会员排行
About云-梭伦科技
»
专题
›
交流区
›
技术交流
›
HDFS
›
数据切分的一些问题
0
4
0
分享
数据切分的一些问题
ruanhero
发表于 2013-10-25 10:45:50
[显示全部楼层]
阅读模式
关闭右栏
4
6930
有两个相同的大的特殊格式的文件(比如两个图片),只能通过特殊的函数库来读取出正确的数据。对数据的操作可以把数据读取出来然后分成一块块的来并行的运算,这样的话怎样对数据切分来计算比较好吗?如果放入HDFS过程中用按64M大小切分,这样读一小块数据就会有的。
在把文件放入的HDFS的过程中,HDFS是按64M来分块的,可不可以自己进行块的划分操作,这样可以把文件先用函数库读取再分块,这样在MR中就可以方便的进行计算。不知道要修改哪些类或进行什么设置才能达到这样的效果吗?
还有再切分的过程中怎样控制两个文件的相同的块分到相同的DATANODE,像对两个或多个大矩阵操作似的,每个分成一小块块的然后再进行操作吗?
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
已有(4)人评论
电梯直达
正序浏览
oYaoXiang1
发表于 2013-10-25 10:45:50
自己实现InputFormat。
回复
使用道具
举报
显身卡
xukunddp
发表于 2013-10-25 10:45:50
回复
2#
spork
在InputFormat中把数据都读过来,解析元信息,再分块,这样效率是不是有吗?
请教下,怎样把多个不同文件的块放在一个InputSplit中,比如两个文件中的数据作运算,第一个文件和第一块要和第二个文件的第二块做运算,这样两个块应用做为一个INPUTSPLIT放在同一个MAP中,若在MAP把不同文件相同块(比如每个文件第一块)产生相同的KEY传到REDUCE再做运算,这样的话文件大的时候MAP到REDUCE传输的数据太大是不是有吗?这种情况下有没有好的建议吗?
回复
使用道具
举报
显身卡
qcbb001
发表于 2013-10-25 10:45:50
细看你的需求,很类似于处理不支持切分的压缩数据包。对于MapReduce支持的压缩格式,如果是不支持切分的,系统会把相关的所有块都汇聚到一个task,然后再处理,效率是很低下的。
你若要实现自己管理的hdfs的块,这个要改动比较大,也许你可以改一下dfsclient,在上传你的数据时做些特殊处理再传上去,比如把文件先解压,在分割压缩成小块的,再上传。
要把多个不同文件的块放在一个InputSplit中,这个得你很了解hdfs的分块对你数据的影响,这个得你自己去细心实现了。若传的块过大,那可以考虑部分计算是否可以在map做,然后在reduce合。若是不行,增大内存和网络带宽总是很有效的。这方面的经验不足,就说这么点了。
回复
使用道具
举报
显身卡
lijian123841314
发表于 2013-10-25 10:45:50
回复
4#
spork
嗯 楼上说的是
回复
使用道具
举报
显身卡
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
发表新帖
ruanhero
中级会员
关注
50
主题
137
帖子
4
粉丝
TA的主题
phonegap源码分析(三)------ IOS
2013-12-15
MapReduce源码阅读问题
2013-10-26
MapReduce运用System.XXX.Print()的难题
2013-10-26
Berkeley的论文《MapReduce Online》及翻译!
2013-10-26
数据切分的一些问题
2013-10-25
24小时热文
矩阵分析引论罗家洪(第四版)
互联网大厂年终福利曝光:看看别人家老板怎
像高手一样发言:七种常见工作场景的说话之
携程允许员工春节回乡办公2个月
数据治理实施方案
关闭
推荐
/2
中文版ChatGPT
1.无需魔法 2.提高编程效率 3.提高文档能力
查看 »
新手帮助
新手帮助:注册遇到问题,领取资源,加入铁粉群,不会使用搜索,如何获取积分等
查看 »
意见
反馈