问题标签 [hdp]
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.
apache-spark - 类 org.apache.oozie.action.hadoop.SparkMain 未找到
以下是我用来运行作业的所有 oozie 文件。我在 hdfs /test/jar 上创建了文件夹,并放置了 workflow.xml 和 coordinator.xml 文件。
属性文件
协调员文件
工作流文件
我也设置了 sharelib 路径。Oozie 也通过 shareliblist 显示 spark2 并在 spark2.Ozzie 作业中添加了 oozie-sharelib-spark.jar 文件并正在提交和运行,但是当它尝试执行 spark 作业时出现错误。
hive - 带有 Hive 的 ORC 文件:java.io.IOException:两个阅读器
我有一个 ACID 配置单元表,其中包含 ORC 格式的文件。尝试压缩时,出现以下错误:Task: ... exited : java.io.IOException: Two readers for ...
完整错误如下:
该表是通过将 avro 文件添加到一个 orc 表中来创建和更新的merge
,因此有一堆 deltadelete_delta
和delta
.
我有许多其他这样的表,它们没有这个问题。该表没有什么特别之处,实际上非常小(<100k 行,磁盘上 2.5M),并且在上个月更新了 100 次(更新了 20k 行,更新了 5M 数据)。DDL 是:
这种情况每隔几个月就会发生一次。由于其他一切(选择、合并)都有效,修复通常是创建第二个表(create table t as select * from contact_group
)并切换表,但我想找到真正的根本原因。
我发现的关于我的错误的唯一参考是代码本身,这对我没有多大帮助。
这是在 hdp3.1 上,带有 Hive 3。
apache-spark - Spark 未提供 Hive 中可用的更新结果
我正在使用 pyspark 代码来处理从 Hive View 获取的一些数据。我们目前使用的是 HDP 3.1 版本。问题是我可以看到 Hive View 包含数据,例如:日期为 2019 年 6 月 5 日的数据,当我尝试从 Spark SQL 获取数据时,我得到的数据最新日期为 2019 年 6 月 4 日。
我尝试在 spark 中选择完整的数据,然后按 Date DESC 对其进行排序,以确定问题所在。我还检查了 Hive 中是否提供了 6 月 5 日的数据。
我开始知道 spark 和 Hive 在 HDP 3+ 中管理不同的目录。但据我所知,管理员已经负责将 Spark 指向 Hive 目录。是目录问题,我需要再次检查吗?
更新: 在评论中询问,这是我在 Hive 中运行的示例代码,并带有我得到的示例结果 -
蜂巢查询
样本结果:
如上所示,我在 Hive 中获得了 6 月 5 日的结果。现在,当我在PySpark 中执行相同的操作时:
样本结果
如您所见,它只是没有向我显示 6 月 5 日的结果,而是提供了 6 月 4 日的数据。我只是不知道如何解决这种差异。
sql - 如何将混合字符串格式化为数字
我有编码格式的地理空间坐标,如(0305463N,0962754W)需要将其转换为 30.5463,-96.2754。
所以认为一个表中有三列
ID : 123456 纬度 : 0305463N 经度 : 0962754W
我需要将其转换为
ID:123456 纬度:30.5463 经度:-96.2754
规则需要取决于它如何以 N 或 W 结尾,因为 I 坐标仅在美国,将涵盖所有情况,但任何通用解决方案将不胜感激。提前致谢。
hbase - 带有 JMX 导出器 BindException 的 HBase
我已经在 Ambari HDP 上部署了 HBase。我尝试使用 JMX 导出器获取 HBase 指标,因此我在“hbase-env”中添加了下一个配置:
export HBASE_OPTS="$HBASE_OPTS -javaagent:/opt/jmx_exporter/jmx_exporter_javaagent.jar=7174:/opt/jmx_exporter/hbase/hbase.yml"
我运行 HBase 没有问题,但是当我尝试访问 hbase shell 时,它会引发下一个错误:
我已经尝试更改 JMX 导出器的端口,但总是抛出 BindException。如果我在 Hbase-env 中删除 JMX 导出器的行,它工作正常,我可以访问 hbase shell。
performance - 大型数据集窗口化的 Hive 查询性能
我有这样的数据集一个由 ID 标识的人,使用由另一个 ID 标识的某个对象以及他使用该 ID 的时间量。我想知道这个人最常用的前 20 个项目。数据量非常大,超过1亿,每个id可以产生大约200个他可以使用的对象。
所以第一件事我创建了一个带有集群的投影表并保持事物排序在映射器中事物将如何发生以便所有事物都将在节点中的一个位置以便映射器在分发时将在本地找到事物
完成后,我像这样从馈线表中插入数据
然后使用带有表创建的窗口进行查询
问题是我没有得到我认为我应该得到的性能,我设置了减速器的数量等。程序正在运行 3000+ 映射器和 1000+ 减速器,映射阶段根本没有结束。
apache-spark - Hive Warehouse Connector + Spark = 签名者信息与同包中其他类的签名者信息不匹配
即使使用最简单的示例(如下) ,我也正在尝试使用hive warehouse connector
并获得异常。导致问题的类:- 位于(spark_sql 的依赖项)和.spark
hdp 3.1
JaninoRuntimeException
org.codehaus.janino:janino:jar:3.0.8
com.hortonworks.hive:hive-warehouse-connector_2.11:jar
我试图从 spark_sql 中排除 janino 库,但这导致 janino 中缺少其他类。我需要 hwc 来获得新功能。
有人有同样的错误吗?任何想法如何处理它?
我收到错误:
我的 sbt 文件:
和源代码:
ambari - hortonworks/sandbox-hdp:3.0.1 的默认 Ranger 管理员用户名和密码是什么
我使用 hortonworks/sandbox-hdp:3.0.1 和 hortonworks/sandbox-proxy:1.0。作为码头集装箱。尝试使用管理员/管理员连接到游侠,但没有成功 - 您输入的用户名或密码不正确。
尝试在此处更改 Ambari 中的Ranger 密码 - Ranger Admin 用户的 Ambari 密码和 Ranger Admin 用户在 Advanced ranger-env 部分的密码,并且无法使用新密码登录 Ranger。现在我也有 Ranger 管理员密码检查警报 - Ambari UI 上的用户:管理员凭据与 Ranger 不同步
请澄清 Ranger 的默认用户名和密码,或向我提供如何更改它的步骤。
PS 作为 maria_dev 用户具有游侠访问权限,并且无法以 root 身份登录 MySQL DB 以尝试重置当前游侠密码
apache-kafka - zookeeper + 无法从客户端会话 ID 读取附加数据
我们有3 台 kafka机器和3 台 Zookeeper服务器的 hadoop 集群
hadoop 版本 - 2.6.4 (HORTONWORKS)
在 zookeeper 日志下 ( /var/log/zookper )
我们看到了数百万条警告消息,例如:
此消息的含义是什么:
真正的问题是关于卡夫卡机器
- 我们面临领导者不平衡的问题,Kafka 主题分区最终得到领导者 -1