![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spark SQL
就问你吃不吃药
这个作者很懒,什么都没留下…
展开
-
spark解决org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow
使用spark sql的thrift jdbc接口查询数据时报这个错误Exception in thread "main" java.sql.SQLException: org.apache.spark.SparkException: Job aborted due to stage failure: Task 3107 in stage 308.0 failed 4 times, most rec转载 2017-10-19 11:26:09 · 9888 阅读 · 0 评论 -
解决value toDF is not a member of org.apache.spark.rdd.RDD[People]
编译如下代码时val rdd : RDD[People]= sparkSession.sparkContext.textFile(hdfsFile,2).map(line => line.split(",")).map(arr => People(arr(0),arr(1).trim.toInt))rdd.toDF出现错误:value toDF is not a member of org.apa转载 2017-10-19 14:19:19 · 17839 阅读 · 5 评论 -
Spark写入Parquet,暴露JDBC引擎,实现准实时SQL查询
有一个设想当有持续不断的结构化或非结构化大数据集以流(streaming)的方式进入分布式计算平台, 能够保存在大规模分布式存储上,并且能够提供准实时SQL查询,这个系统多少人求之不得。今天,咱们就来介绍一下这个计算框架和过程。问题分解一下数据哪里来?假设,你已经有一个数据收集的引擎或工具(不在本博客讨论范围内,请出门左转Google右转百度),怎么都行, 反正数据能以流的方式给出来,塞进Kaf转载 2017-10-27 09:34:46 · 470 阅读 · 0 评论 -
Spark+Parquet分片规则
之前提到parquet.block.size所控制的parquet row group大小是一个需要调优的spark参数。其中重要一点,就是控制任务的并发度。 在Hadoop里,任务的并发默认是以hdfs block为单位的,而Spark里多了一种选择,即以RowGroup为基本单位。 在调用HiveContext.read.parquet(path)时,会触发ParquetRelation2对转载 2017-10-26 10:02:03 · 4808 阅读 · 0 评论 -
SparkSQL相关语句总结
1.in 不支持子查询eg. select * from src where key in(select key from test);支持查询个数 eg. select * from src where key in(1,2,3,4,5);in 40000个 耗时25.766秒in 80000个 耗时78.827秒2.union all/union不支持顶层的union all eg. s转载 2017-10-26 15:07:30 · 10093 阅读 · 0 评论 -
SparkSQL操作Hive Table(enableHiveSupport())
Spark SQL支持对Hive的读写操作。然而因为Hive有很多依赖包,所以这些依赖包没有包含在默认的Spark包里面。如果Hive依赖的包能在classpath找到,Spark将会自动加载它们。需要注意的是,这些Hive依赖包必须复制到所有的工作节点上,因为它们为了能够访问存储在Hive的数据,会调用Hive的序列化和反序列化(SerDes)包。Hive的配置文件hive-site.xml、co转载 2017-11-03 14:23:25 · 30039 阅读 · 0 评论