- 博客(131)
- 收藏
- 关注
转载 Spark Dataset (DataFrame)
https://blog.csdn.net/justlpf/article/details/113102628
2021-06-25 16:06:05 167
转载 spark sql的agg函数,作用:在整体DataFrame不分组聚合
1、agg(expers:column*) 返回dataframe类型 ,同数学计算求值df.agg(max(“age”), avg(“salary”))df.groupBy().agg(max(“age”), avg(“salary”))2、 agg(exprs: Map[String, String]) 返回dataframe类型 ,同数学计算求值 map类型的df.agg(Map(“age” -> “max”, “salary” -> “avg”))df.g
2021-06-24 14:57:52 1572
转载 dateframe的列的三种表示方法
EmployeeDF.join(ExDF, col(“DepartmentID”)=col(“ExID”)).showEmployeeDF.join(ExDF, "DepartmentID"==="DepartmentID"==="DepartmentID"===“ExID”).showEmployeeDF.join(ExDF, 'DepartmentID='ExID).showEmployeeDF.join(ExDF, EmployeeDF(“DepartmentID”)===ExDF(“ExID”
2021-06-24 14:19:28 903
原创 dataframe一些算子
https://blog.csdn.net/SuperBoy_Liang/article/details/81170853
2021-06-24 13:55:01 130
原创 withcolumn方法 待补充
source.withColumn(“dnvj”,"id").show()source.withColumn("dnvj",lit(null)).show()source.withColumn("dnvj",udftolower(("id").show() source.withColumn("dnvj",lit(null)).show() source.withColumn("dnvj",udftolower(("id").show()source.withColumn("dnvj",li
2021-06-23 11:18:17 419
转载 Apache Spark,如何将“CASE WHEN ... ELSE ...”计算列添加到现有的DataFrame中?
在SPARK 1.4.0版本中。您可以使用WHERE/OUCK语法:// Create the dataframeval df = Seq(“Red”, “Green”, “Blue”).map(Tuple1.apply).toDF(“color”)// Use when/otherwise syntaxval df1 = df.withColumn(“Green_Ind”, when($“color” === “Green”, 1).otherwise(0))如果您使用的是SMARK 1.3.0
2021-06-22 17:10:26 340
原创 scala中的时间格式转换
package testimport java.text.SimpleDateFormatimport java.util.Date/**@Author 夏珲@Date@Description 1.构造方法全部私有化,目的是不让外界通过构造方法来创建工具对象 2.成员全部是静态化,意味着外界可以通过类名.的形式来访问工具类的内容 宗上所属:只有object单列对象满足*/object ClassDemo10 {//1.
2021-06-11 10:23:33 1595 1
转载 Java中Calendar时间操作常用方法详解
package test;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/**Date和Calendar常用方法,Date很多方法已经弃用,因此以Calendar为主@author tuzongxun123*/public class DateAndCalendarTest {public static void main(String[] args) {// 直
2021-05-13 16:36:21 1120
原创 免密登录
#三台机器互相免密登录#1、三台机器执行以下命令[root@cdh1 ~]# ssh-keygen -t rsa[root@cdh2 ~]# ssh-keygen -t rsa[root@cdh3 ~]# ssh-keygen -t rsa#2、进入/.ssh/目录 该目录存放密钥对[root@cdh1 ~]# cd ~/.ssh/#3、新建authorized_keys并设置权限[root@cdh1 .ssh]# touch authorized_keys[root@cdh1 .ssh]
2021-05-10 08:46:51 87
原创 用Zookeeper保存kafka的偏移量器
https://blog.csdn.net/darkbreak_up/article/details/90699730?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.control&dist_request_id=1328690.21369.16166551102652505&depth_1-utm_source=distribute.pc_relevant.none-ta
2021-03-25 14:54:23 117
原创 数据仓库中的粒度
粒度就是同一维度下,数据的粗细程度,考虑到时间维度在数据仓库中相对比较特殊,另外举个例子。以“组织结构”为例,比如我们的一个层级结构式:总公司,分公司,部门,科室。这就是不同的粒度级别。实际应用中,比如有人问,你的某个报表粒度是怎样的。我们可以说,组织结构我们的报表呈现是到分公司级别的,但是我们的数据粒度是到科室的(也就是你的事实表中,层级聚合到科室级别)。所以我们就也能支持到之上的“粗”粒度,如总公司,分公司,及部门如果我们的数据粒度是到分公司的,那明显我们的报表就不能支持下级粒度的数据展现
2021-03-23 15:45:27 1035
原创 hive时间转为星期几
方式一:from_unixtime(unix_timestamp(‘20140112’,‘yyyyMMdd’),‘u’)方拾二:select date_format(‘2016-12-01’ ,‘u’);方式三:select pmod(datediff(your_date,‘1900-01-07’),7) + 1 as WeekDay from your_table方式四:SELECT current_date AS Date,CASE date_format(current_date,‘u’)W
2021-03-18 17:01:55 1780
转载 2021-03-18
Hive窗口函数中,有一个功能是统计当前行之前或之后指定行作为一个聚合,关键字是 preceding 和 following,举例说明其使用方法。一、加载测试数据在 hive 环境中创建临时表:create table tmp_student(name string,class tinyint,cooperator_name string,score tinyint)row format delimited fields ter
2021-03-18 08:49:42 92
原创 hive的优化
1.hive调优涉及到压缩和存储调优,参数调优,sql的调优,数据倾斜调优,小文件问题的调优等2.数据的压缩与储存格式2.1. map阶段输出数据压缩 ,在这个阶段,优先选择一个低CPU开销的算法。set hive.exec.compress.intermediate=trueset mapred.map.output.compression.codec= org.apache.hadoop.io.compress.SnappyCodecset mapred.map.output.compres
2021-03-17 10:56:25 342
原创 大数据面试题
kafka的message包括哪些信息一个Kafka的Message由一个固定长度的header和一个变长的消息体body组成header部分由一个字节的magic(文件格式)和四个字节的CRC32(用于判断body消息体是否正常)构成。当magic的值为1的时候,会在magic和crc32之间多一个字节的数据:attributes(保存一些相关属性,比如是否压缩、压缩格式等等);如果magic的值为0,那么不存在attributes属性body是由N个字节构成的一个消息体,包含了具体的key/val
2021-03-15 16:54:02 67
转载 hive hql强化练习
https://blog.csdn.net/Thomson617/article/details/87939713?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161517033016780262571918%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161517033016780262571918&
2021-03-08 23:22:26 82
转载 数仓表的三范式转载
数仓表的三范式https://blog.csdn.net/qq_37114772/article/details/88316167
2021-03-01 11:14:12 98
原创 spark中的累加器和广播变量使用
1.准备数据spark,java,#,!spark,javaspark,python,%hello,javajava,!,%2.需求:统计字符串字数和特殊字符的总数3.代码展示和注释详解在这里插入代码片/声明一个累加器val mycounter: LongAccumulator = sc.longAccumulator("mycounter") //准备/加载规则(就是一些定义好的特殊字符)val ruleList: List[String] = List(",",".","
2021-02-22 12:27:06 140
原创 spark sql多数据源的显示(包括储存到mysql中)
val df1: DataFrame = spark.read.json(“in/users.json”)df1.printSchema()df1.show()df1.coalesce(1).write.mode(SaveMode.Overwrite).json(“in/coala”)df1.coalesce(1).write.mode(SaveMode.Overwrite).csv(“in/coala”)df1.coalesce(1).write.mode(SaveMode.Overwrite)
2021-02-19 14:31:38 133
原创 RDD-DataFrame-DataSet相互转换
RDD-DF-DS相互转换case class Person(id:Int,name:String,age:Int)var personrdd=x.map(y=>var arr:Array[String]=y.split(",") Person(arr(0).toInt,arr(1),arr(2).toInt))import spark.implicits._转换一:RDD-DFval personDF:Dataframe=personRDD.toDF()转换二:RDD-DSval pe
2021-02-19 10:15:40 214
原创 rdd转为dataframe三种方式
rdd转为df方法一;使用样例类case class Person(id:Int,name:String,age:Int)var z=x.map(y=>var arr:Array[String]=y.split(",") Person(arr(0).toInt,arr(1),arr(2).toInt))import spark.implicits._val persondf=z.toDF()方法二:指定类型+列名var z=x.map(y=>var arr:Array[Stri
2021-02-19 10:01:45 856
转载 sum()窗口函数的累加求和出错细节
关于SQL窗口函数中sum 累计求和的错误细节出错案例:按行累加(rows)和按值累加(range)注意:总结:近期在学习SQL的窗口函数的时候,用sum对成绩进行累计求和出现错误,具体如下:从图中可以看出按照合计成绩进行排序后进行成绩的累加,但是相同的成绩并没有实现行的累加。为什么会出现这样的错误呢?请继续看按行累加(rows)和按值累加(range)按行累加:每一行都产生一个累计结果这里显示声明行的范围:rows BETWEEN unbounded preceding and cu
2021-01-22 09:21:44 1058
原创 spark优化四句话
1通过 spark-env 文件,对 spark 集群进行合理的参数设置2在程序中,设置合理的 sparkconf 和 set property3计算量大时,给已经缓存了的 RDD 添加 checkpoint,以减少容错带来的开销4使用 combine 对小分区进行合并,避免过小的分区造成过多的切换任务开销...
2021-01-11 09:11:42 65
原创 get_jsojn_object用法
get_json_object(param1,"$.param2")param1:需要解析的json字段param2:遇到数组就用 [0,1,2…] 0,1,2是数组对应的元素,遇到jsonObject直接用 ".key"取出想要获取的value。①SELECT get_json_object(’{“a”:“b”}’, ‘$.a’); b②对于jsonArray(json数组),如person表的xjson字段有数据:例如[{“name”:“王二狗”,“sex”:“男”,“age”:“25”
2021-01-11 09:03:27 140 1
转载 JAVA字符串格式化——String.format()的使用
https://segmentfault.com/a/1190000019350486
2021-01-11 08:54:52 85
原创 spark sql常见的内置函数
字符串:1.concat对于字符串进行拼接concat(str1, str2, …, strN) - Returns the concatenation of str1, str2, …, strN.Examples:> SELECT concat(‘Spark’, ‘SQL’); SparkSQL2.concat_ws在拼接的字符串中间添加某种格式concat_ws(sep, [str | array(str)]+) - Returns the concatenation of the
2021-01-11 08:49:00 964
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人