问题标签 [hivecontext]
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 - “插入...”与 SparkSQL HiveContext
我正在尝试使用我的 HiveContext 运行插入语句,如下所示:
1.5.2 Spark SQL 文档没有明确说明是否支持这一点,尽管它确实支持“动态分区插入” 。
这会导致堆栈跟踪,例如
有没有其他方法可以插入到受支持的 Hive 表中?
apache-spark - 使用 PySpark.sql.HiveContext 查询现有的 Hive tavle
我想使用 pyspark sql 在 Hive 表(表名:'sample')上构建查询。以下是我在 pyspark shell 上编译的简单 pyspark 代码
以下是我遇到的错误:
我知道我迷失在配置部分。任何人都可以帮助配置部分吗?
PS:我正在使用 Hortonworks Ambari HDP-2.2
apache-spark - 在单元测试中使用 TestHiveContext/HiveContext
我试图在单元测试中这样做:
但我明白了:
当我使用 spark-submit 运行时,代码运行良好,但在单元测试中却不行。如何为单元测试解决这个问题?
json - spark hivecontext 处理查询问题
我正在尝试从 Jsons 获取信息以在 Hive 中创建表。
这是我的 Json 模式:
我正在使用这个查询:
这就是我得到的:
但我不知道如何将这些信息放在表格中以便在 Hive 控制台之后使用它。
我用这个:
它创造了一些东西,但我不知道如何使用它。
谢谢
scala - Uisng Hive 上下文,在本地系统 metastore_db 中本地创建 Hive 表,而不是在集群上,放置我的 hive-site.xml
我已经创建了一个 Spark Context 对象,并尝试从 hadoop 服务器(不在我的本地)上的文本文件中检索文本,并且我能够检索它。
当我试图检索 Hive 表(它位于独立机器、集群上)时,我无法做到,当我创建一个 hive 表时,它会在 metastore_db 本地创建
objHiveContext.sql("create table yahoo_orc_table (date STRING, open_price FLOAT, high_price FLOAT, low_price FLOAT, close_price FLOAT, volume INT, adj_price FLOAT) 存储为orc")
我尝试设置元存储
objHiveContext.setConf("hive.metastore.warehouse.dir", "hdfs://ServerIP:HiveportNum/apps/hive/warehouse")
&& 还有 objHiveContext.hql("SET hive.metastore.warehouse.dir=hdfs://serverIp:portNumber/apps/hive/warehouse")
我什至将 hive-site xml 放在 spark machine conf 文件夹中,
如何让我的 scala 应用程序联系 hive-site.xml 并从该 xml 获取元存储信息以及我应该将我的 Hive-site.xml 放在哪里
我已将它放在我的应用程序中,因为建议在 ClassPath 中添加任何地方,我添加并可以看到 mypom.xml 文件上方,但我的 scala 应用程序仍处于本地模式
表(yahoo_orc_table)在 D:\user\hive\warehouse 本地创建
apache-spark - Bluemix Spark 中的 HiveContext
在 bluemix spark 我想使用 HiveContext
我收到以下错误
Py4JJavaError:调用 o45.parquet 时出错。: java.lang.RuntimeException: java.lang.RuntimeException: 无法实例化 org.apache.hadoop.hive.metastore.HiveMetaStoreClient
scala - Spark Scala:JniBasedUnixGroupsMapping:获取XXX组时出错:找不到用户名
我一直在使用 scala IDE 中的 spark 从本地系统连接到 Hive(在集群中),最后将我的 hive-site.xml 正确放置在 Spark/conf 文件夹和类路径中,并且能够连接到 Metastore 但无法访问蜂巢表。
如何更改 HiveContext 的用户
15/12/22 10:28:42 INFO ParseDriver:解析命令:显示表 15/12/22 10:28:43 INFO ParseDriver:解析已完成 15/12/22 10:28:45 INFO metastore:尝试连接Metastore 与 URI thrift://Server.com:9083 15/12/22 10:28:46 INFO JniBasedUnixGroupsMapping:获取 XXXX 组时出错:找不到用户名。
15/12/22 10:28:46 WARN UserGroupInformation:没有可供用户 XXXXX 使用的组 15/12/22 10:28:46 INFO Metastore:已连接到 Metastore。
线程“主”java.lang.NoClassDefFoundError 中的异常:org/apache/tez/dag/api/SessionNotRunning at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:353) at org.apache.spark.sql.hive.HiveContext$$anonfun$4 .apply(HiveContext.scala:235) at org.apache.spark.sql.hive.HiveContext$$anonfun$4.apply(HiveContext.scala:231) at scala.Option.orElse(Option.scala:257) at org. apache.spark.sql.hive.HiveContext.x$3$lzycompute(HiveContext.scala:231) 在 org.apache.spark.sql.hive.HiveContext.x$3(HiveContext.scala:229) 在 org.apache.spark。 org.apache.spark.sql.hive.HiveContext.hiveconf(HiveContext.scala:229) 中的 org.apache.spark.sql.hive.HiveMetastoreCatalog 中的 sql.hive.HiveContext.hiveconf$lzycompute(HiveContext.scala:229)。 (HiveMetastoreCatalog.scala:55) 在 org.apache.spark.sql.hive.HiveContext$$anon$1.(HiveContext.scala:253) 在 org.apache.spark.sql.hive。HiveContext.catalog$lzycompute(HiveContext.scala:253) at org.apache.spark.sql.hive.HiveContext.catalog(HiveContext.scala:253) at org.apache.spark.sql.hive.HiveContext$$anon$3。 (HiveContext.scala:263) 在 org.apache.spark.sql.hive.HiveContext.analyzer$lzycompute(HiveContext.scala:263) 在 org.apache.spark.sql.hive.HiveContext.analyzer(HiveContext.scala:262 ) 在 org.apache.spark.sql.SQLContext$QueryExecution.analyzed(SQLContext.scala:411) 在 org.apache.spark.sql.SQLContext$QueryExecution.analyzed$lzycompute(SQLContext.scala:411)。 spark.sql.SchemaRDDLike$class.$init$(SchemaRDDLike.scala:58) at org.apache.spark.sql.SchemaRDD.(SchemaRDD.scala:108) at org.apache.spark.sql.hive.HiveContext.hiveql (HiveContext.scala:102) 在 org.apache.spark.sql.hive.HiveContext.hql(HiveContext.scala:106) 在 com.Spark。ConnectToHadoop.CountWords$.main(CountWords.scala:50) at com.Spark.ConnectToHadoop.CountWords.main(CountWords.scala) 原因:java.lang.ClassNotFoundException: org.apache.tez.dag.api.SessionNotRunning at java .net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java .lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 23 更多URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang。 ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 23 更多URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang。 ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 23 更多
scala - Spark SQL:作业因阶段失败而中止:java.io.InvalidClassException:SpecificMutableRow;本地类不兼容
我试图从 Spark scala 中检索 hive 表(Hive Cluster、spark cluster 和我的本地系统都具有相同的 JDK 版本 8)
我能够使用第 1 行打印表列,但是由于serialVersionUID 即不兼容的类路径而尝试执行收集语句
WARN TaskSetManager: Lost task 1.0 in stage 0.0 (TID 1, SERVERIP): **java.io.InvalidClassException**: org.apache.spark.sql.catalyst.expressions.SpecificMutableRow; **local class incompatible: stream classdesc serialVersionUID = -2362733443263122426, local class serialVersionUID = -8202316371712574867**
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:621)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1623)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1774)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1707)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1345)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
apache-spark-sql - 使用 HiveContext 用 Spark SQL 中另一个表的值更新第一个表列
我想通过覆盖另一个表中的列来更新现有表中的列。
示例: table 中有列name
,student
但还有另一个表employee
,我想从表中逐列覆盖name
表student
中的name
列employee
。我想使用 HiveContext 在 Spark SQL 中执行此操作。
我们可以运行这个命令:
在 Spark 中使用 HiveContext?
scala - 如何使用 Scala 从 Spark 更新 ORC Hive 表
我想更新一个兽人格式的配置单元表,我可以从我的 ambari 配置单元视图中更新,但无法从 sacla (spark-shell) 运行相同的更新语句
objHiveContext.sql("select * from table_name") 能够看到数据但是当我运行时
objHiveContext.sql("update table_name set column_name='testing'") 无法运行,一些 Noviable 异常(更新附近的语法无效等)正在发生,因为我能够从 Ambari 视图更新(因为我设置了所有必需的配置即 TBLPROPERTIES "orc.compress"="NONE" transactional true 等)
尝试将 Insert 插入使用 case 语句,但不能我们可以从 spark 更新 hive ORC 表吗?如果是,那么程序是什么?
下面导入
注意:我没有在该表上应用任何分区或分桶如果我应用分桶,当存储为 ORC Hive 版本:1.2.1 Spark 版本:1.4.1 Scala 版本:2.10.6 时,我什至无法查看数据