在创建SQLContext时,spark-shell会给出“警告:有一个弃用警告”是什么?

时间:2017-05-08 22:13:29

标签: scala apache-spark apache-spark-sql

我正在尝试使用以下命令在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

可能是什么原因?

1 个答案:

答案 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取代。但是,为了向后兼容,我们保留了这个类。