- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是 Spark 的初学者。我正在关注 PySpark 上的视频类(class)。我正在尝试使用以下代码将 json 字符串转换为数据框。
import pyspark as ps
from pyspark.sql import HiveContext # to interface dataframe API
sc = ps.SparkContext()
hive_context = HiveContext(sc)
# some code .... and build meals_json
meals_json.take(1) # below is output of this code
#['{"meal_id": 1, "dt": "2013-01-01", "type": "french", "price": 10}']
# some more code
meals_dataframe = hive_context.jsonRDD(meals_json)
meals_dataframe.first()
在尝试运行最后一行时,出现以下错误。
AttributeError Traceback (most recent call last)
<ipython-input-19-43e4f3006ac3> in <module>()
----> 1 meals_dataframe = hive_context.jsonRDD(meals_json)
2 meals_dataframe.first()
AttributeError: 'HiveContext' object has no attribute 'jsonRDD'
我在网上搜索过,但找不到讨论此问题的任何资源。我在带有 Python 3.5 的 jupyter notebook 上使用 Spark 2.1.1 运行这段代码。
从文档中,我可以看到 jsonRDD 是从 class org.apache.spark.sql.SQLContext 继承的。我不太确定,可能是什么原因。任何建议都会有所帮助。谢谢。
最佳答案
sqlContext.jsonRDD
是 deprecated .从 1.4.0 开始,它已被替换为 read().json()
。我在下面包含了一个适用于 Spark 2.1.1 的示例
import json
from pyspark.sql.types import StructField, StructType, IntegerType, StringType
r = [{'a': 'aaa', 'b': 'bbb', 'c': 'ccc'},
{'a': 'aaaa','b': 'bbbb','c': 'cccc','d': 'dddd'}]
r = [json.dumps(d) for d in r]
# known schema
schema = ['a', 'b', 'c', 'd']
fields = [StructField(field_name, StringType(), True) for field_name in schema]
schema = StructType(fields)
rdd = sc.parallelize(r)
df = sqlContext.read.schema(schema).json(rdd)
df.collect()
这会在 Spark 2.1.1 上产生以下输出:
[Row(a=u'aaa', b=u'bbb', c=u'ccc', d=None),
Row(a=u'aaaa', b=u'bbbb', c=u'cccc', d=u'dddd')]
请注意,此代码段的第一部分很大程度上受到了 this question 的启发。在 Apache Spark 用户列表中
关于python - 'HiveContext' 对象没有属性 'jsonRDD' Spark 2.1.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46521235/
我想知道spark如何处理这些情况以及使用什么会更快更好。数据帧中的原生计数和 Spark sql 中的计数哪个更好?我认为这不仅仅涉及计数。 hc = HiveContext(sc) t0 = ti
我试图使用 HiveContext 对象从我的 spark 代码运行一些配置单元查询。当我使用 spark submit 从命令行运行它时,它工作正常。但是,当我尝试从 oozie 工作流运行相同的内
您好,我正在尝试使用 Apache Hive 和 Apache Spark 运行一个简单的 Java 程序。程序编译没有任何错误,但在运行时出现以下错误: Exception in thread "m
我尝试将数据帧存储到Spark 1.3.0(PySpark)中的持久性Hive表中。这是我的代码: sc = SparkContext(appName="HiveTest") hc = HiveCon
我试图在单元测试中做到这一点: val sConf = new SparkConf() .setAppName("RandomAppName") .setMaster("local") val
我正在尝试使用 Spark 中的 HiveContext 访问 hive 中映射的 hbase 表。但是我收到了 ClassNotFoundException 异常。下面是我的代码。 import o
我已经使用 Maven 构建了 Spark-1.2.1,以使用以下命令启用 Hive 支持:mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -Phive
当我运行以下命令时: val df1 = sqlContext.read.format("orc").load(myPath) df1.columns.map(m => println(m)) 这些列
我正在尝试使用 Spark 中的 HiveContext 访问 hive 中映射的 hbase 表。但是我收到了 ClassNotFoundException 异常。下面是我的代码。 import o
我有一个“iplRDD”,它是一个 json,我执行以下步骤并通过 hivecontext 进行查询。我得到了结果,但没有列标题。有没有办法获取列名和值? val teamRDD = hiveCont
我正在创建配置单元上下文并查询配置单元表,如下所示,spark 上下文是使用 yarn-cluster 创建的 HiveContext hv = new HiveContext(sc) hv.sql(
我是 Spark 的新手。我发现使用 HiveContext 我们可以连接到 hive 并运行 HiveQL。我运行它并且成功了。 我怀疑Spark是不是通过spark jobs来实现的,也就是说,它
例如,我想传递给 Spark SQL 的 Hive HQL 语句很少: set parquet.compression=SNAPPY; create table MY_TABLE stored as
我正在尝试使用我的 HiveContext 运行插入语句,如下所示: hiveContext.sql('insert into my_table (id, score) values (1, 10)'
我是 zeppelin notebook 的新手。但我注意到一件事,与 spark-shell 不同,当我启动笔记本时,hiveContext 不会在 zeppelin 中自动创建。 当我尝试在 ze
我在 Apache Spark 1.3 中使用 HiveContext,因为我需要它更好的查询支持(相对于 1.3 的 SQLContext)。 我正在 Azure“HDInsight”Spark 群
我在 Apache Spark 1.3 中使用 HiveContext,因为我需要它更好的查询支持(相对于 1.3 的 SQLContext)。 我正在 Azure“HDInsight”Spark 群
我使用 pyspark 进行一些数据处理,并将 HiveContext 用于窗口函数。 为了测试代码,我使用了 TestHiveContext,基本上是从 pyspark 源代码中复制实现: http
我正在使用 Jupyter 笔记本对 pySpark 进行分析。我的代码最初使用 sqlContext = SQLContext(sc) 构建数据帧,但现在我已切换到 HiveContext,因为我将
我想为任何新添加/删除的分区修复配置单元表。而不是在配置单元中手动运行 msck 修复命令,有什么方法可以在 java 中实现这一点?我正在尝试从 hdfs 和配置单元中获取所有分区Metastore
我是一名优秀的程序员,十分优秀!