
Spark
帮我消消黑眼圈!
敬畏每一行代码
展开
-
scala的mkString方法
本人最近写了一段很low的代码,代码如下val username: Array[Row] = click_time.select("username").collect()for (i <- 0 until username.length){ id.append("'"+username(i)+"',") }val usernames=id.dropRight(1).toString(). replaceAll("\\[","").原创 2020-06-21 10:54:45 · 763 阅读 · 0 评论 -
SimpleDateFormat的灵活用法
val ss= "111.41.197.125 - - [13/Apr/2020:04:10:31 +0000] \"GET /st?type=listen&stype=heart&client=0&username=yuanyinanluxiuxia&step=3&time=1586751029§ionid=2535897&...原创 2020-04-13 17:11:01 · 194 阅读 · 1 评论 -
com.mongodb.spark.exceptions.MongoTypeConversionException: Cannot cast INT32 into a NullType的解决
mogo原生数据用spark取抽取过来之后老是报这个错误Cannot cast INT32 into a NullType类型转换异常阅读官方文档:mogo为非关系型数据库,相同的字段会存不同的类型的值,sampleSize这个参数在抽取的时候会默认取1000个样本,null的数据到达一定数量以后就会将原来的int转为null,从而出现以上错误,(具体是多少数量未知),...原创 2019-11-21 09:24:26 · 1399 阅读 · 0 评论 -
sparksql特殊字符转义处理
搬砖要换着法搬,往spark.sql(s"""""")里面传入$,正斜线,反斜线转义没毛用,聪明的人会看下图原创 2019-11-13 15:41:11 · 5496 阅读 · 2 评论 -
用spark从MongoDB抽取数据存到MySQL(数据少一条)
从MongoDB里面用spark抽取数据增量存到MySQL,十天以后发现数据少一条,少了的那一条MongoDB原始数据:spark读取过来的数据:存到MySQ里面的数据:MySQL的表结构:问题原因:存入MySQL时间精度损失造成时间变为2019-11-03 ,到2019-11-04再跑2019-11-03数据的时候,(spark代码内置先删除,后插入,...原创 2019-11-13 11:58:19 · 530 阅读 · 0 评论 -
spark的sample算子
sample(withReplacement, fraction, seed)以指定的随机种子随机抽样出数量为 fraction 的数据,withReplacement 表示是抽出的数据是否放回,true 为有放回的抽样,false 为无放回的抽样,seed 用于指定随机数生成器种子。例如:从 RDD 中随机且有放回的抽出 50% 的数据,随机种子值为 3(即可能以1 2 3的其中一个起始值...原创 2019-11-09 10:27:34 · 1046 阅读 · 4 评论 -
reduceByKey(_ ++ _)
很灵性的用法val y = sc.textFile("file:///root/My_Spark_learning/reduced.txt")y.map(value=>value.split(",")) .map(value=>(value(0),value(1),value(2))) .collect .foreach(println)(1,2,3)(1,...转载 2019-10-28 17:52:19 · 1327 阅读 · 0 评论 -
com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String
这是什么错呢???今天很累不想写博客com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String原来的代码JSON.parseObject(s.asInstanceOf[String])修改以后的代码JSON.parseObject(s.toString)成功解决问题,又来一个新问题哈哈哈哈...原创 2019-10-24 19:14:38 · 6226 阅读 · 1 评论 -
dataframe中的array变成以逗号隔开的字符串
df的Schema如下:代码 :dataFrame.withColumn("classid", concat_ws(",", col("classId")))效果:原创 2019-10-15 11:47:56 · 2571 阅读 · 0 评论 -
sparkSQL的全局临时视图
没事还是应该多看看官网,今天创建全局临时视图怎么也调用不到,原来有猫腻Spark SQL中的临时视图是会话作用域的,如果创建它的会话终止,它将消失。如果要在所有会话之间共享一个临时视图并保持活动状态,直到Spark应用程序终止,则可以创建全局临时视图。全局临时视图与系统保留的数据库相关联global_temp,我们必须使用限定名称来引用它,例如SELECT * FROM global_temp...原创 2019-10-08 17:54:06 · 1464 阅读 · 0 评论 -
Spark优化分析
1. 资源优化1). 集群搭建:master节点的..../conf/spark-env.sh中配置:SPARK_WORKER_CORESSPARK_WORKER_MEMORY2). 任务提交中设置参数./spark-submit --master spark://node 001:7077 --class ... jar ...--executor-cores-...原创 2019-06-10 19:58:19 · 1234 阅读 · 0 评论 -
RDD的五大特性及注意事项
(Resilient Distributed Dateset),弹性分布式数据集1. RDD由一系列的partition组成,有多少个partition就有多少个task;2. 函数作用在每个partition(split)上;3. RDD有一系列的依赖关系; 子RDD的数据来源为父RDD4. 分区器作用在(K,V)键值对的RDD上;5. RDD提供一系列的最佳计算位置...原创 2019-06-09 14:46:42 · 848 阅读 · 0 评论