大数据优化方案----HDFS小文件优化方法_dfs针对大数据文件来设计,处理小文件效率低。阅读『file-based data structur-程序员宅基地

技术标签: 优化方法  # 【大数据】面试题  hdfs  hadoop  大数据  

版权声明:本文为CSDN博主「北京小辉」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/silentwolfyh/article/details/103863621
———————————————————————————————————

“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”。

大数据面试宝典目录,请点击

HDFS 小文件优化方法(☆☆☆☆☆)

1) HDFS 小文件弊端:
       HDFS 上每个文件都要在namenode 上建立一个索引,这个索引的大小约为150byte,这样当小文件比较多的时候,就会产生很多的索引文件,一方面会大量占用namenode 的内存空间,另一方面就是索引文件过大是的索引速度变慢。
2) 解决的方式:
(1)Hadoop 本身提供了一些文件压缩的方案。
(2)从系统层面改变现有HDFS 存在的问题,其实主要还是小文件的合并,然后建立比较快速的索引。
3) Hadoop 自带小文件解决方案
(1)Hadoop Archive:
       是一个高效地将小文件放入HDFS 块中的文件存档工具,它能够将多个小文件打包成一个HAR 文件,这样在减少namenode 内存使用的同时。
(2)Sequence file:
       sequence file 由一系列的二进制key/value 组成,如果为key 小文件名,value 为文件内容,则可以将大批小文件合并成一个大文件。
(3)CombineFileInputFormat:
       CombineFileInputFormat 是一种新的inputformat,用于将多个文件合并成一个单独的split,另外,它会考虑数据的存储位置。
4)小文件优化(实战经验)
       对于大量小文件Job,可以开启JVM 重用会减少45%运行时间。JVM 重用理解:一个map 运行一个jvm,重用的话,在一个map 在jvm 上运行完毕后,jvm 继续运行其他jvm具体设置:mapreduce.job.jvm.numtasks 值在10-20 之间。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wzc8961661/article/details/104509550

智能推荐

算法leetcode|44. 通配符匹配(rust重拳出击)_func ismatch(s string, p string) bool {-程序员宅基地

文章浏览阅读1.1k次,点赞21次,收藏17次。给定一个字符串 (s) 和一个字符模式 (p) ,实现一个支持 '?' 和 '*' 的通配符匹配。_func ismatch(s string, p string) bool {

Unity3d学习笔记 dropDown的item显示不全问题_unity列表拉太快显示不全-程序员宅基地

文章浏览阅读4.4k次,点赞7次,收藏3次。具体情况使用UGUI时,Downdrop下拉后,item显示不全的问题,会显示一半。解决方法需要将Template下Viewport下的content 与 Template下Viewport下的content下的item大小一致。_unity列表拉太快显示不全

嵌入式硬件学习之嵌入式软件和硬件的区别-程序员宅基地

文章浏览阅读6.7k次,点赞2次,收藏13次。  你知道嵌入式软件和硬件的区别吗?实际上嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。例如我们身边的手表、微波炉、录像机、汽车等,都使用嵌入式系统,他们都是带有数字接口的设备。有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。嵌入式是软件还是硬件?在这里为大家解析。 ..._嵌入式软件与硬件的区别

JVM内存配置及叙述-程序员宅基地

文章浏览阅读79次。2019独角兽企业重金招聘Python工程师标准>>> ..._目前只有server vm支持64bit jvm

RxSwift和Combine的相同点和使用例子_combine swift 响应式编程-程序员宅基地

文章浏览阅读516次。RxSwift 和 Combine 都是响应式编程框架,用于简化异步和基于事件的代码。它们有很多相似之处,主要体现在设计理念和编程模式上。_combine swift 响应式编程

HDU2660 Accepted Necklace【0-1背包】_hdu男生专场公开赛 accepted necklace-程序员宅基地

文章浏览阅读259次。Accepted NecklaceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5018 Accepted Submission(s): 1979Problem DescriptionI have N precious st..._hdu男生专场公开赛 accepted necklace

随便推点

云计算特点与发展方向_云服务系统的热点及其发展方向-程序员宅基地

文章浏览阅读3k次,点赞3次,收藏9次。云计算技术特点云计算发展至今,体量越来越大,特点也变得繁多。NIST1对云计算的定义得到了较为广泛的认同和支持,因此这里主要以NIST所规定的五个关键特征来对云计算的特点阐述,同时附加一些额外的特征来反映当下云计算市场的发展。五大关键特征按需自助服务。消费者可以根据自己的需求单方面申请计算资源,例如服务器时间和网络存储,不需要和每个服务提供商进行人工互动。宽带网络接入。计算资源通过网络进行提供,并通过标准的机制进行访问。这使得客户无论是通过手机,平板还是电脑,工作站都可以对计算资源进行使用。虚拟化_云服务系统的热点及其发展方向

zabbix报错集锦_received empty response from zabbix agent at [127.-程序员宅基地

文章浏览阅读9.3k次。1. 在启动zabbix-agent 时系统日志输出PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after starzabbix-agent.service never wrote its PID file. Failing重启zabbix-agent服务依旧不能正常启动,查看/var/log/zabbix/zabbix-agentd.log 发现系统提示zabbix共享内存报错zabbix_agentd [5922]: _received empty response from zabbix agent at [127.0.0.1]. assuming that agen

《强化学习》中的 时序差分学习 Temporal-Difference Learning (基于与动态规划 DP 、蒙特卡洛方法 MC 的对比)_dp mc td的对比-程序员宅基地

文章浏览阅读1.4k次。学习了 Sutton 的《强化学习(第二版)》中时序差分学习的“预测”部分内容。前两章中,书介绍了 动态规划 与 蒙特卡洛方法 ,我们从二者与 时序差分学习 的对比开始讲起。_dp mc td的对比

GNURadio(一)_uhd驱动的正确卸载方法-程序员宅基地

文章浏览阅读2.4k次,点赞4次,收藏16次。GNU Radio系统环境:Ubuntu 18.04仅个人安装经验,欢迎大哥检阅!!USRP设备国产的luowave一、安装1、依赖库安装(此代码仅适用于Ubuntu18.04,其他版本需要的依赖包会有所不同)sudo apt-get -y install git swig cmake doxygen build-essential libboost-all-dev libtool libusb-1.0-0 libusb-1.0-0-dev libudev-dev libncurses5-dev_uhd驱动的正确卸载方法

没有offsetright,用offsetLeft解决网页右端弹出层的问题,-程序员宅基地

文章浏览阅读1.6k次。offsetleft右边写侧边栏_offsetright

Nginx 504 Gateway Time-out 问题_java 线上ngix的504 gateway timeout-程序员宅基地

文章浏览阅读747次。Nginx 504 Gateway Time-out 问题适用环境 JAVAHttpProxy模块-Nginx中文文档配置处理:1、针对所有请求 修改/etc/nginx/nginx.conf,添加如下信息:http { #配置在该区域会影响所有的server块 以下解决504问题 proxy_connect_timeout 300; #单位秒 默认60 proxy_send_timeout 300; #单位秒 默认60 proxy_read_timeout 300_java 线上ngix的504 gateway timeout

推荐文章

热门文章

相关标签