我正在尝试使用以下命令在Spark-shell中创建SQLContext:
//To start Spark Shell:
>spark-shell
//To create object of SQLContext
>val sqlcontext = new org.apache.spark.sql.SQLContext(sc)
我收到以下警告:
warning: there was one deprecation warning; re-run with -deprecation for details
sqlcontext: org.apache.spark.sql.SQLContext = org.apache.spark.sql.SQLContext@17e2e5d
可能是什么原因?
答案 0 :(得分:4)
如果你使用Spark 2.0.0 ,你不必自己创建一个单独的POKE
,因为它已经可用。
const ar = [
[0, 1, 3],
[2, 4, 6],
[5, 5, 7],
[10, 0, 3]
]
ar.map( item => item.reduce( (memo, value)=> memo+= value, 0 ) )
//result-> [4, 12, 17, 13]
上面的 SQLContext
也是自动创建的,并且是推荐的方式,从Spark 2.0开始使用Spark SQL的功能(参见SparkSession)。
弃用警告的原因正是要告诉您远离scala> spark.sqlContext
res0: org.apache.spark.sql.SQLContext = org.apache.spark.sql.SQLContext@45f32b12
。
警告:有一个弃用警告;使用-deprecation重新运行以获取详细信息
请参阅SQLContext's scaladoc其中的内容:
在Spark 1.x中处理结构化数据(行和列)的入口点。
从Spark 2.0开始,它被SparkSession取代。但是,为了向后兼容,我们保留了这个类。