在本博客的《使用Spark SQL读取Hive上的数据》文章中我介绍了如何通过Spark去读取Hive里面的数据,不过有时候我们在创建SQLContext实例的时候遇到类似下面的异常:[code lang="java"]java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient at org.apache.hadoop.hive.ql.session.SessionState.start(Se

w397090770   9年前 (2016-01-11) 16455℃ 5评论14喜欢

Spark

Apache Spark1.6.0正式发布

Apache Spark1.6.0正式发布
历时一个多月的投票和补丁修复,Apache Spark 1.6.0于今天凌晨正式发布。Spark 1.6.0是1.x线上第七个发行版.本发行版有来自248+的贡献者参与。详细邮件如下:Hi All,Spark 1.6.0 is the seventh release on the 1.x line. This release includes patches from 248+ contributors! To download Spark 1.6.0 visit the downloads page. (It may take a while for all mirrors to update.)A huge t

w397090770   9年前 (2016-01-05) 2983℃ 1评论5喜欢

Mysql

Spark读取数据库(Mysql)的四种方式讲解

Spark读取数据库(Mysql)的四种方式讲解
  目前Spark支持四种方式从数据库中读取数据,这里以Mysql为例进行介绍。一、不指定查询条件  这个方式链接MySql的函数原型是:[code lang="scala"]def jdbc(url: String, table: String, properties: Properties): DataFrame[/code]  我们只需要提供Driver的url,需要查询的表名,以及连接表相关属性properties。下面是具体例子:[code lang="scala"

w397090770   9年前 (2015-12-28) 37805℃ 1评论61喜欢

Spark

Spark Checkpoint读操作代码分析

Spark Checkpoint读操作代码分析
  《Spark RDD缓存代码分析》  《Spark Task序列化代码分析》  《Spark分区器HashPartitioner和RangePartitioner代码详解》  《Spark Checkpoint读操作代码分析》  《Spark Checkpoint写操作代码分析》  上次介绍了RDD的Checkpint写过程(《Spark Checkpoint写操作代码分析》),本文将介绍RDD如何读取已经Checkpint的数据。在RDD Checkpint

w397090770   9年前 (2015-12-23) 6414℃ 0评论10喜欢

Scala

Spark程序编写:继承App的问题

Spark程序编写:继承App的问题
  我们知道,编写Scala程序的时候可以使用下面两种方法之一:[code lang="scala"]object IteblogTest extends App { //ToDo}object IteblogTest{ def main(args: Array[String]): Unit = { //ToDo }}[/code]  上面的两种方法都可以运行程序,但是在Spark中,第一种方法有时可不会正确的运行(出现异常或者是数据不见了)。比如下面的代码运

w397090770   9年前 (2015-12-10) 5323℃ 0评论5喜欢

Hive

Hive on Spark新增的参数介绍

Hive on Spark新增的参数介绍
  Hive on Spark功能目前只增加下面九个参数,具体含义可以参见下面介绍。hive.spark.client.future.timeout  Hive client请求Spark driver的超时时间,如果没有指定时间单位,默认就是秒。Expects a time value with unit (d/day, h/hour, m/min, s/sec, ms/msec, us/usec, ns/nsec), which is sec if not specified. Timeout for requests from Hive client to remote Spark driver.hive.spark.job.mo

w397090770   9年前 (2015-12-07) 24631℃ 2评论11喜欢

Hadoop

Spark和Hadoop优劣

Spark和Hadoop优劣
  Spark已经取代Hadoop成为最活跃的开源大数据项目。但是,在选择大数据框架时,企业不能因此就厚此薄彼。近日,著名大数据专家Bernard Marr在一篇文章(http://www.forbes.com/sites/bernardmarr/2015/06/22/spark-or-hadoop-which-is-the-best-big-data-framework/)中分析了Spark和Hadoop的异同。  Hadoop和Spark均是大数据框架,都提供了一些执行常见大数据任务

w397090770   9年前 (2015-12-01) 9571℃ 0评论31喜欢

Spark

Spark Checkpoint写操作代码分析

Spark Checkpoint写操作代码分析
  《Spark RDD缓存代码分析》  《Spark Task序列化代码分析》  《Spark分区器HashPartitioner和RangePartitioner代码详解》  《Spark Checkpoint读操作代码分析》  《Spark Checkpoint写操作代码分析》  上次我对Spark RDD缓存的相关代码《Spark RDD缓存代码分析》进行了简要的介绍,本文将对Spark RDD的checkpint相关的代码进行相关的

w397090770   9年前 (2015-11-25) 8935℃ 5评论14喜欢

Spark

Spark RDD缓存代码分析

Spark RDD缓存代码分析
  我们知道,Spark相比Hadoop最大的一个优势就是可以将数据cache到内存,以供后面的计算使用。本文将对这部分的代码进行分析。  我们可以通过rdd.persist()或rdd.cache()来缓存RDD中的数据,cache()其实就是调用persist()实现的。persist()支持下面的几种存储级别:[code lang="scala"]val NONE = new StorageLevel(false, false, false, false)val DISK_ONLY =

w397090770   9年前 (2015-11-17) 9731℃ 0评论15喜欢

Spark

Spark Task序列化代码分析

Spark Task序列化代码分析
  Spark的作业会通过DAGScheduler的处理生产许多的Task并构建成DAG图,而分割出的Task最终是需要经过网络分发到不同的Executor。在分发的时候,Task一般都会依赖一些文件和Jar包,这些依赖的文件和Jar会对增加分发的时间,所以Spark在分发Task的时候会将Task进行序列化,包括对依赖文件和Jar包的序列化。这个是通过spark.closure.serializer参数

w397090770   9年前 (2015-11-16) 6311℃ 0评论8喜欢