spark 写 gp/tpg 效率优化 —— 写入 237w 行数据耗时从 77 分钟到 34 秒

摘自内部分享,有删减。 具体到我们这次的场景中,我们用的是 gp,gp 全称是 greenplum,是一个 mpp 版本的 postgresql,可以参考这个简介 http://www.infoq.com/cn/news/2… ,协议上兼容 postgresql,我们可以用普通能连 postgresql 的方式去连 gp,并且把 gp 看成一个黑盒的集群版本的 postgresql 来使用 然后这……

阅读全文

spark 中的日志

在打包一个 spark streaming 工程到 yarn 上跑的时候,发现自己的 log4j.properties 没有被读取 SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] log4j: Trying to find [log4j.xml] using context class……

阅读全文

zeppelin 搭建 spark sql context

zeppelin 上跑 spark sql 有两种方式,一种是 spark 启动一个 thrift server,然后对外提供一个 jdbc 服务,zeppelin 通过 jdbc 的方式,连上 spark thrift server,提交 sql,等待返回,这种方式听上去很美好,毕竟实现了前后端解耦,但是实际使用中发现,spark thrift server 这个东西不够成熟,如果长时间持有一个 sp……

阅读全文

spark on hive 模式导致读写 hdfs 失败

spark sql 操作 hive 表,底下的支撑其实还是 hdfs,之前的集群,hdfs 没有做 HA,倒也相安无事,不过最新 spark sql 的计算任务迁移到了一个新的集群,刚迁移过去的时候,计算任务是能够正常跑的,但是,后来这个集群上的 hdfs 做了 HA,问题就来了 Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.had……

阅读全文

spark 读取 jdbc 的时候 where 过滤的问题

一般来说,我们使用这样的方式让 spark 去读取 jdbc DataFrame dataFrame = sqlContext.read().jdbc(jdbcUrl, tableName, DBConfigUtil.generateProperties()); 随之而来一个问题是,这样是读取整张表的,如果我们要读取某一部分的数据呢? 自然的想法是 sqlContext 的 read 接口应该有参数可以控制,可惜没有,走读……

阅读全文

spark 操作 hbase

之前说到这个,spark 操作 mysql ========================= 买一送一,hbase 的: Spark读取Hbase中的数据 ====================== 关于操作 hbase,还有这两个文章,Spark 下操作 HBase(1.0.0 新 API),https://gist.github.com/wuchon… 都是不错的,另外说一下,”org.apache.hbase” % “hba……

阅读全文

spark sql

http://spark.apache.org/docs/l… 看这里好像可以把一个 csv 文件当做表来处理,那就好多了 =================== 2016-4-20 22:43:18 如果你 assembly 出来的 jar 连不上 jdbc,参考这里,http://stackoverflow.com/quest… I was able to get it to work locally with these commands: sbt package and spar……

阅读全文

spark 操作 mysql

主要有两个思路,一个是旧的,spark 1.3 之前,自己动手丰衣足食,后来有了 spark sql,使用它的 dataframe,也是可以的 ================================= 旧的有: Spark与Mysql(JdbcRDD)整合开发 Spark将计算结果写入到Mysql中 这种 jdbc rdd 的,貌似是 scala 专属,Spark SQL: JdbcRDD ==========================……

阅读全文

spark 算子理解和存储方式

对 combineByKey 的理解,参看,http://luojinping.com/2016/01/… combineByKey应用举例 求均值 val rdd = sc.textFile(“气象数据”) val rdd2 = rdd.map(x=>x.split(” “)).map(x => (x(0).substring(“从年月日中提取年月”),x(1).toInt)) val createCombiner = (k: String, v:……

阅读全文

spark 移动均值

想要在 spark 上算移动均值,可以参考这个 http://stackoverflow.com/quest… You can use the sliding function from MLLIB which probably does the same thing as Daniel’s answer. You will have to sort the data by time before using the sliding function. import org.apache.spark.mllib.rdd.RDDFun……

阅读全文