草庐IT

hadoop - HDFS短路读

coder 2024-01-06 原文

根据documentation ,短路读取速度更快,因为它们不通过数据节点。如果是这样的话,那么

  1. 为什么默认情况下不启用此功能?
  2. 我们在哪些场景下需要短路读取?

最佳答案

看看这篇文章:http://blog.cloudera.com/blog/2013/08/how-improved-short-circuit-local-reads-bring-better-performance-and-security-to-hadoop/

文章摘要:

原始实现的一个主要缺点是它搞砸了安全隐患。它必须为客户提供对数据文件的直接读取权限。我猜这对启用了 kerberos 的 hdfs 不利。

新的实现改为传递一个文件描述符,据说这样更安全、更快。

我想旧方法有一些缺点。我看不出新方法有什么缺点。我找不到新方法出现在哪个版本的 Hadoop 中的明确答案。

关于hadoop - HDFS短路读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20483695/

有关hadoop - HDFS短路读的更多相关文章

  1. hadoop安装之保姆级教程(二)之YARN的配置 - 2

    1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模

  2. 大数据之Hadoop数据仓库Hive - 2

    目录:一、简介二、HQL的执行流程三、索引四、索引案例五、Hive常用DDL操作六、Hive常用DML操作七、查询结果插入到表八、更新和删除操作九、查询结果写出到文件系统十、HiveCLI和Beeline命令行的基本使用十一、Hive配置一、简介Hive是一个构建在Hadoop之上的数据仓库,它可以将结构化的数据文件映射成表,并提供类SQL查询功能,用于查询的SQL语句会被转化为MapReduce作业,然后提交到Hadoop上运行。特点:简单、容易上手(提供了类似sql的查询语言hql),使得精通sql但是不了解Java编程的人也能很好地进行大数据分析;灵活性高,可以自定义用户函数(UDF)和

  3. Ruby 惯用法短路返回第一个非零使用每个和映射 - 2

    这是我正在尝试做的事情的本质,但“中断”不正确:needle=nilhaystacks.eachdo|haystack|needle=haystack.look_for_needle()breakifneedleend这更短,但它会遍历每个干草堆(至少不看),即使它不需要:needle=nilhaystacks.eachdo|haystack|needle||=haystack.look_for_needle()end这是一个单行代码,但(我相信)它并不懒惰,所以它做了不必要的工作:needle=hackstacks.map{|h|h.look_for_needle()}.detect

  4. Ubuntu下Hadoop的单机安装 - 2

            云计算实验中要求我们在Linux系统安装Hadoop,故来做一个简单的记录。· 注:我的操作系统环境是Ubuntu-20.04.3,安装的JDK版本为jdk1.8.0_301,安装的Hadoop版本为hadoop2.7.1。(不确定其他版本是否会出现版本兼容问题)Hadoop安装步骤如下:        一、更新apt和安装vim编辑器        二、配置本机无密码登录SSH        三、安装JAVA环境        四、下载安装Hadoop        五、伪分布式搭建一、更新apt和安装vim编辑器1、更新aptsudoapt-getupdate2、安装vim

  5. MAC系统安装Hadoop - 2

    一、设置免密登录1、系统偏好设置-----共享----勾选远程登录,所有用户2、打开终端,输入命令ssh-keygen-trsa,一直回车即可2.查看生成的公钥和私钥    cd~/.ssh    ls会看到~/.ssh目录下有两个文件:①私钥:id_rsa②公钥:id_rsa.pub3.将公钥内容写入到~/.ssh/authorized_keys中    cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys4.测试在terminal终端输入 sshlocalhost如果出现以下询问输入yes,不需要输入密码就能登录,说明配置成功Areyousureyouw

  6. HDFS+ MapReduce 数据处理与存储实验 - 2

    文章目录实验二:HDFS+MapReduce数据处理与存储实验1.实验目的2.实验环境3.实验内容3.1HDFS部分3.1.1上传文件3.1.2下载文件3.1.3显示文件信息3.1.4显示目录信息3.1.5删除文件3.1.6移动文件3.2MapReduce部分3.2.0Mapreduce原理3.2.1合并和去重3.2.1.1编写Merge.java代码3.2.1.2编译执行3.2.2文件的排序3.2.2.1编写Sort.java代码3.2.2.2编译执行4.踩坑记录5.心得体会6.源码附录6.1Merge.java完整代码6.2Sort.java完整代码实验二:HDFS+MapReduce数据

  7. javascript - 使用短路运算符抛出错误 - javascript - 2

    我知道jslint/jshint不喜欢它,但我想知道做类似的事情是否有任何真正的问题。varerr=function(msg){thrownewError(msg);};示例1:赋值varfoo=bar.foo||baz.foo||err('missingfooproperty');示例2:验证typeoffoo['bar']!=='string'&&err('barhastobeastring');有什么我应该注意的问题吗? 最佳答案 据我所知,这与PHP中的或die()一样错误。运算符的短路性是明确定义的,因此只有在达到最后一种

  8. javascript - 如何避免 JavaScript 中的短路求值? - 2

    我需要执行&&语句的两边,但如果第一部分返回false则不会发生这种情况。示例:functiondoSomething(x){console.log(x);}functioncheckSomething(x){varnot1=x!==1;if(not1)doSomething(x);returnnot1;}functioncheckAll(){returncheckSomething(1)&&checkSomething(3)&&checkSomething(6)}varallValid=checkAll();//Logsnothing,returnsfalse这里的问题是doSome

  9. javascript - 为什么当运算符优先级表明短路评估不应该时短路评估会起作用? - 2

    在JavaScript和Java,等于运算符(==或===)的优先级高于OR运算符(||)。然而,这两种语言(JS、Java)都支持if语句中的短路:当我们有if(true||anything())时,不会评估anything()。您还可以使用以下表达式:true||foo==getValue())-例如在诸如console.log(...);之类的输出语句中,或在赋值中。现在,根据运算符优先级,短路不应该发生,因为======>||在优先条款。(换句话说,应该首先进行比较,为此应该调用getValue(),因为相等性检查的优先级高于OR比较。)但确实如此。getValue()未被调用

  10. Yarn增加新队列-----hive向Yarn提交任务后,Hadoop再次向Yarn提交任务阻塞 - 2

    博学之,审问之,慎思之,明辨之,笃行之🏂hiveonspark搭建好后,任务提交会有问题,因为通过hive会话提交的任务一直存在且不会结束(除非关掉这个hive会话),根本原因是这些任务提交到了Yarn的同一个队列中,前面的任务没有执行完毕后面的任务不会执行,所以解决办法是增加一个Yarn队列,指定任务提交的队列,这样就不会出现任务的阻塞。目录一、情景复现二、原因三、Yarn队列配置—增加队列1.情景复现:搭建好hiveonspark后,在命令行直接进入hive会话,提交任务后,在ResourceManager上jps查看进程可以看到有个进程ApplicationMaster一直存在,打开Re

随机推荐