问题标签 [cloudera]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - 定义 MapReduce 项目和 Oozie 工作流的依赖关系
在我的公司,我们正在 Hadoop 上开发 MapReduce 应用程序。关于这些项目的依赖管理存在争论,我想听听你的意见。
我们正在使用 Cloudera 的 Hadoop 发行版 (CDH)。
我们的开发工作流程:
- MapReduce 项目托管在 SVN 存储库中
- 他们每个人都有一个定义了依赖项的 POM 文件(以及其他一些东西)
- 我们还创建了 Oozie 工作流项目,这些项目将这些 MapReduce 项目定义为 POM 中的依赖项,并负责定义 MapReduce 项目的执行流程
- Oozie 项目的构建工件是一个 jar 文件,其中包含它使用的所有 MapReduce jar 及其依赖项(我们使用 Maven 的程序集插件对其进行压缩),这是我们稍后部署到 HDFS 的工件(解压缩后)
- 我们使用 Maven 构建项目,由 Jenkins 管理
- 成功的构建被部署到 Archiva 服务器
- 部署到 HDFS 是 Archiva 按需提供的,获取 Oozie 项目构建的工件,将其提取并放入 HDFS
- 构建项目不需要一些依赖项(即 Oozie 使用的依赖项;Hive、Sqoop、MySQL 连接器、Jline、commons-...等),但它们需要它才能工作
还在我这儿?
现在的争论是关于定义 MapReduce 和 Oozie 项目的这些依赖关系。有两种观点。
有人说不需要在 POM 文件中定义这些依赖项(即构建项目不需要的依赖项),而是将它们放在 HDFS 的共享目录中,并始终假定它们在那里。
优点:
- 开发人员不需要照顾这些(但是,他们会照顾其他一些人)
- 最有可能的是,在更新 CDH 发行版时,在共享目录中更新它们比在每个项目个性中更容易(但不确定这是否有必要)
缺点:
- 为项目定义了一些依赖项,假设有些依赖项感觉不对
- 共享目录可能成为未使用 JAR 的接收器,没有人知道哪些仍在使用,哪些未使用
- 代码变得不那么可移植了,因为它假定这些 JAR 始终存在于 HDFS 中并具有正确的版本
那你们怎么看?
编辑:忘记写了,但很明显,第二个选项是定义所有依赖项——即使它们会在大多数项目中重复并且需要一些维护。
hadoop - ChainMapper 和 ChainReducer 还有哪些其他可用的替代方法?
我正在尝试创建一系列 MapReduce 作业以实现我的要求?我听说 ChainMapper 和 ChainReducer 将是其中一种选择。
但是,我们正在寻找 ChainMapper 和 ChainReducer 所需的替代方法。请把你的光芒照在我身上。
hadoop - 如何使用 Hadoop/Kerberos 设置设置用户/组权限?
我正在尝试使用 Kerberos 设置 Hadoop
我正在遵循 CDH3 安全指南。
到目前为止一切进展顺利(HFDS 工作正常等),但是当我尝试提交作业时出现以下错误。
我以用户 HDFS 的身份运行 HDFS 服务器,以名为 mapred 的用户身份运行 Hadoop。我使用名为 bob 的用户提交作业,该用户属于 mapred 组。
以下是我对 taskcontroller.cfg 的值
我得到的错误是
错误总是伴随着 taskcontroller.cfg 中“mapreduce.tasktracker.group=mapred”的值。
我一直在调试和查看,我认为问题是我在不同用户和组之间设置了错误的权限。
任何帮助是极大的赞赏。
hadoop - cdh3 客户端可与 apache hadoop 服务器 0.20.xx 互操作?
我们有一个hadoop-core-0.20.2-cdh3u1.jar
基于 Java 的客户端。在运行 apache 分布式 0.20.xx 的服务器(集群)上工作是否安全?还是 cloudera 破坏了一些 apache API?
谢谢
hadoop - pig 0.9.0 与 cdh3u1 的互操作性?
较软的 cdh3 客户端版本可与 apache hadoop server 0.20.xx 互操作?
我们有一个运行一系列 pig 脚本的 java 应用程序(它在其中注入了一些变量,但通常它只是用于运行它们的驱动程序/客户端)。我们需要 pig 0.9.0 的宏特性,但 cdh 是 pig 0.8.1 自带的。以下是个好主意吗?
我们尝试与:
和
代替
hadoop - Cloudera Manager 格式化 HDFS 失败,topology.py.vm 丢失
使用 Cloudera Manager(免费版)添加新服务(服务类型 = HDFS)时遇到错误。错误消息如下:
无法创建进程:com.cloudera.cmf.service.config.ConfigFileSpec$GenerateException:无法处理模板:找不到模板 hadoop/topology.py.vm
我检查了 /var/log/cloudera-scm-server/cloudera-scm-server.log 并找到了如下一行。
org.apache.velocity.exception.ResourceNotFoundException:找不到资源'/WEB-INF/templates/hadoop/topology.py.vm'
我猜想某个 war 文件不包含 hadoop-metrics.properties.vm (速度模板文件?)虽然它应该这样做,并且这可能与WHIRR-370有关。
你能帮我解决这个问题吗?
hadoop - 如何使用 cloudera 管理 (ui) 控制台编辑 hadoop-metrics.properties?
我正在尝试使用 Ganglia 监控 Hbase。如何使用cloudera管理控制台编辑hadoop-metrics.properties中的dfs.server属性?
根据 http://wiki.apache.org/hadoop/GangliaMetrics我需要改变:
但我无法在 cloudera 的管理控制台上看到修改 dfs.server 值的选项。
我应该如何进行?
java - Hadoop 插件 Karmasphere - 文件的阻止列表已更改异常
我目前已经开始使用 karmasphere eclipse 插件来做 mapreduce 工作。我按照文档中的说明操作,可以在主机上运行本地开发、部署作业。后来我下载了Cloudera CDH3并作为VM运行(通过VMWare),我可以在VM(来宾机器)本地运行mapreduce作业,我可以从eclipse Hadoop的角度监控VM中发生的mapreduce作业(主机),当我尝试使用 karmasphere 远程部署时,我只能看到 HDFS 中的可用文件,但我无法访问这些文件,也无法运行 map reduce 程序,也无法从我的 eclipse IDE 在 HDFS 中创建新文件。我得到以下异常:
有人可以帮我解决这个问题吗?我是 karmasphere 和 Hadoop 的新手。
hbase - HBase Thrift:如何连接到远程 HBase 主/集群?
感谢 Cloudera 发行版,我在本地机器上运行了一个 HBase master/datanode + Thrift 服务器,可以编写和测试 HBase 客户端程序并使用它,没问题。
但是,我现在需要在生产中使用 Thrift,并且我无法找到有关如何让 Thrift 与生产 HBase 集群一起运行的文档。
据我了解,我需要在客户端节点上运行 hbase-thrift 程序,因为 Thrift 程序只是 HBase 的另一个中间客户端。
所以我猜我必须能够以某种方式将主节点主机名/IP 指定给 HBase-Thrift?我该怎么做?
另外,关于如何在生产中扩大规模有什么建议吗?我只需要这样的设置:
jdbc - Hue Hive -- Beeswax 服务器找不到 MySQL 的 JDBC 驱动程序
我们正在使用 Cloudera 3.7.5,并且很难配置 Beeswax 服务器,以便 Hue 可以访问 Hive 数据库。我按照 Cloudera 文档中的所有说明将 MySQL 设置为 Hive 的元存储,但是当我重新启动 Hue 服务并检查 Beeswax 服务器的 StdErr 日志时,我仍然看到痛苦的“javax.jdo.JDOFatalInternalException:创建事务连接工厂时出错“这是由
这对我来说很奇怪,因为日志还表明环境变量 HIVE_HOME 等于“/usr/lib/hive”,果然我已经复制了“mysql-connector-java-5.1.15-bin.jar”按照文档的指示,进入 /usr/lib/hive/lib 目录。
我还尝试了博客文章http://hadoopchallenges.blogspot.com/2011/03/hue-120-upgrade-and-beeswax.html上的说明,其中涉及将 mysql-connector jar 复制到“/usr/共享/色调/应用程序/蜂蜡/hive/lib/”。不幸的是,我在蜂蜡文件夹中没有 hive/lib 子目录,所以我尝试制作一个。这也没有奏效。
有什么建议可以让我将 MySQL JDBC 库放到 Beeswax 的类路径中吗?