- 博客(38)
- 收藏
- 关注
原创 数据仓库工具箱:维度建模权威指南3
数据仓库工具箱:维度建模权威指南3零售业务维度模型设计的4步综合考虑用户需求、数据来源,设计维度模型。只考虑数据源,以数据驱动,基本不能取得成功。选择业务过程声明粒度客户销售事务上的每个产品扫描到一行中医生开具的票据的列表内容项采用一行表示机场登机口处理的每个登机牌采用一行表示仓库中每种材料库存水平的每日快照采用一行表示每个银行账户每月的情况采用一行表示应以业务数语表示,用主键声明是不可取的确定维度(列名带有key后缀)“谁、什么、何处、何时、为何、如何”常见维度有:日期、
2021-05-22 13:49:23
1500
原创 Hive中实现有序,有序concat拼接,有序集合,hive方法操作命令,与自带方法列表
前言记得以前用过这个函数,这次开发怎么都找不到了,不常用的原因,也是笔记没做好方法一GROUP_CONCAT(distinct id ORDER BY id DESC SEPARATOR ‘_’)好像是用过的这个报错:Invalid function GROUP_CONCAT可能是版本问题:当前hive版本:hive-common-2.1.1-cdh6.2.0 apache-hive-1.2.1-也没有这个函数
2020-12-04 11:00:51
3801
原创 HIVE函数
show functions;desc function xxx;窗口函数row_number:row_number() over(distribute by dt sort by score desc) 没有并列,相同名次顺序排rank:有并列,相同名次空位 dense_rank:有并列,相同名次不空位lag:向上取第n行的数据lead:向下取...
2020-03-04 18:26:43
505
原创 大数据常用组件流程
MR加粗样式1.MapTask调用Inputformat方法创建一个RecordReaderRecordReader以此调用nextkeyvalue getcurrentkey getcurrentvalue方法获取<K,V>传递给Mapper类,每读取一行数据就会调用一次map方法,然后将通过逻辑处理后的<K,V>输出到OutputCollector2.Coll...
2020-02-17 16:49:39
668
原创 函数式编程 lambda表达式
函数式编程 lambda表达式 从JDK1.8之后为了简化程序的开发,专门提供了lambda表达式的支持,可以简化编程中接口的复杂操作: 范例: 观察以下传统开发中的问题 public interface IMessage { public void send(String str); } package org....
2019-02-12 14:25:44
205
原创 包装类
包装类: 包装类的功能都是针对基本数据类型而定的 1认识包装类: Object类是所有类的父类,可以接收所有数据类型, 例如 int i=10 Object obj=i; Object obj=10; 把一个int类型的常量10 赋值给 Object 类型, 基本数据类型不是一个类 ,在向上转型之前都会把基本数据类型进行包装 范例:实现一个包装类 int类型...
2019-02-12 14:25:21
129
原创 JAVA复习(二维数组——快排——迷宫)
二维数组: (了解) 定义: 一维数组: int[] array=new int[3] ;开辟了3个空间的int类型的数组 二维数组: int[][] 对于二维数组的初始化定义: 数组的动态初始化:数据类型 数组名称[][]=new 数据类型[行][列]; 数组的静态初始化 数据类型 数组名称[][]=new 数据类型[]...
2019-02-12 14:25:10
1139
原创 JAVA复习( StringBuffer 和 StringBuilder)
1 StringBuffer 和 StringBuilder String类在所有项目开发中是一定会使用到的类,但是这个类有以下特点: 1 字符串的内容一旦声明则不可改变 2 字符串常量全部都是String的匿名对象 3 可以直接赋值使用 String虽然使用起来很方便,但是缺陷是内容不可修改: 范例:观察修改String内容 public...
2019-02-12 14:24:37
119
原创 JAVA复习(CharSequence接口、RunTime类、System类、object类中的finalize())
1 CharSequence 描述字符串结构的接口,通过发现它的继承结构,其下面有多个子类: 1String 2 StringBuilder 3 StringBuffer 只要是字符串都可以为 CharSequence实例化范例:代码实现 // hello 是String类的匿名对象 String类型 是charSequence子类 ...
2019-02-12 14:24:25
262
原创 JAVA复习(date)
Date java.util(重点) java.sql(数据库编程 JDBC Date 一般不用) Date类的定义如下: public class Date extends Object implements Serializable, Cloneable, Comparable<Date> ...
2019-02-12 14:23:57
128
原创 JAVA复习(对象的克隆、正则表达式)
对象的克隆 对象的克隆就是复制的操作,和之前学习的引用传递不同 在引用传递中一个 实例 可以有多个名字 但是多个名字都指向一个对象 克隆出来的对象 和之前的对象 没有任何的引用关系 想要实现对象的克隆,首先克隆对象的类,必须实现一个接口: public interface Cloneable ,只有实现了该接口的类才能有克隆的能力: 可用通过调用 clone(...
2019-02-12 14:23:38
189
原创 java复习6
1. 2 .软件程序 = 机器指令 + 数据每一个“指令”就相当于一个“英文字母”。 “指令集” 就相当于“26个英文字母表"。使用不同的“字母组合”就能形成成千上万个“单词” ;相应的使用不同的“指令组合”就能形成成千上万个“程序软件功能模块”。使用不同的“单词组合”就能组合成一篇篇的“文章”;相应的使用不同的“程序软件功...
2019-02-12 14:23:12
117
原创 集合三人斗地主的思路
三人斗地主 集合完成 编写一个自动发牌程序,模拟三人斗地主的摸牌场景。首先要给出提示,谁首先开始摸牌,并且摸牌要和现实摸牌一样,三人循环摸牌,最后还要剩余三张底牌,同时给出地主牌,摸到地主牌的玩家拥有三张底牌。三张底牌三人都可以看到。当三张底牌派发给地主后提示玩家摸牌结束 实现思路: (1)首先将一副牌的四种花色和对应的牌面值随机组合放进Set集合,因为Set集合...
2019-01-28 13:15:59
476
原创 JAVA复习5(集合——集合的遍历 Iteratorforeach、Enumeration——HashMap、HashTable、LinkedHashMap——map的遍历)
集合的遍历 Iterator foreach 掌握 Enumeration List Set 观察两个接口 迭代器输出 Iterator Set接口 或者 List 接口 都存在Iterator方法 该方法返回一个Iterator接口,通过该接口可与获得迭代器 Iterator 的方法1 public boolean hasNex...
2019-01-28 13:07:57
439
原创 JAVA复习5(总结+循环链表)
泛型的定义: 在类定义的时候给定一个类型 Public class Point<T> 给定一个不确定的类型,当类实例化的时候或者使用的时候给定一个确定的类型,则别的数据类型就不能使用了 Point<String> p=new Point(); 说明这个类 现在只能存放StringPoint<Integer> p=new Point(); ...
2019-01-28 12:03:15
113
原创 JAVA复习5(集合——拓展——单向链表)
扩展: 实现单向链表 链表其实就是一种顺序存储的数据结构,一个节点上存在两个属性 数据 指向下一个节点的指针 对于链表的操作,其实就是一组操作标准:1 增加元素 2 删除元素 3 判断链表是否为空 3 返回链表中的长度 既然以上的操作定义为标准,则可以抽象为接口 链表类直接实现该接口中的标准 实现链表: 1 定义链表的操作标准...
2019-01-28 11:50:33
215
原创 JAVA复习5(集合——HashSet)
2 HashSet 无序 不可重复 HashSet 子类使用最多一个子类, 无序 ,不可重复观察HashSet定义 public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, Serializable 范例:使用HashSe...
2019-01-28 11:41:49
114
原创 JAVA复习5(TreeSet)
Set 接口 特点: 最大的特点 就是集合中的元素 不可重复 其也是Collection接口的子接口 , Set本身也是一个接口,同样不能直接使用,需要实例化该接口的实现类 Set接口下面的实现类:常用1 TreeSet 有序 ,不可重复 public class TreeSet<E> extends AbstractSet<...
2019-01-28 11:30:36
140
原创 JAVA复习5(集合——LinkedList)
LinkedList 这个子类是基于链表的实现 指针 -节点--》-》以下为LinkedList类的定义 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, Seri...
2019-01-28 11:21:23
143
原创 JAVA复习5(集合—— Vetor)
子类 Vetor 他是一个比较古老的类,在JDK1.1 就已经推出了,功能上来说与ArryList完全一样,但是区别是什么 1 Vector 属性线程安全 同步处理 2 ArrayList 非线程安全 异步处理 同步和异步处理 区别? 业务需求 ,如果要求对数据的安全性要高 同步 如果追求速度效率 异步 前提: 都是多个对象 访问同一个资源...
2019-01-28 11:08:50
113
原创 JAVA复习5(集合——ArrayList)
集合 所谓集合指的就是一套动态对象数组,在实际开发中数组的概念的一定会使用的,但是数组的问题是一旦开辟空间则长度不可改变 其实就是对数据结构的一种封装,用户不用去编写,直接使用。 由于数据结构开发起来比较困难,还必须考虑性能问题 3.1 集合中需要掌握的核心接口 Collection List Set Map Iterator (了解) ...
2019-01-28 11:03:18
120
原创 JAVA复习(4)
一: 泛型 想要理解泛型,首先咱们做一个案例,定义一个坐标类,这个类可以表示三种类型的坐标 1 整数坐标 x=10 y=20 2 小数坐标 x=10.1 y=20.1 3 字符串坐标 y=坐标y10 x=坐标x20 要求定义这么一个类,可以存放以上三种类型 Object是所有类的父类, 所有的类型都是Object类的子类,向上转型 所有的类...
2019-01-28 10:35:33
92
原创 JAVA复习3
观察字符串常量池概念 public class StringDemo { public static void main(String[] args) { String str1="hello"; String str2="hello"; ...
2019-01-27 17:24:49
155
原创 java复习2(编码)
1补充知识点:重要概念 一个整数a=14,那么 a对应的二进制数值b=01110。 a对应的原码c=01110. 注意b和c虽然都是1110,但是两个是不同的,b是a对应的二进制数值,c是b这个数据值在计算机为了表示这个值所进行的编码。b的最高位可以省略 c的最高位确是符号位不能省略。1.1 数据与文字的编码根据计算机中信息的编码表示方式,将数据...
2019-01-23 21:43:05
214
原创 java复习1
1.2关键字关键字就是书写java源代码时基本元素。这些基本元素用一些英文单词表示,而这些单词在java语言中有特定的意义。所有的关键字参看下图: 1.3标识符什么是标识符呢?简单说在程序中自定义的一些名称。 由26个英文字母大小写,数字:0-9 符号:_ $ 组成 //字符 定义合法标识符规则:1,数字不可以开头。2,不...
2019-01-22 17:39:04
115
转载 ip地址转long
1.ip地址转longdef ip2Long(ip: String): Long = { val fragments: Array[String] = ip.split("[.]") var ipNum = 0L for (i <- 0 until fragments.length) { println(fragments(i)) ipNum...
2018-12-19 11:45:49
313
原创 JAVA数据类型转换
2.Java自动类型转换 1)两种类型是彼此兼容的,才能实现自动类型转换。 2)转换的目的类型占得空间范围一定要大于转化的源类型// long->float矛盾吧? 正向过程:由低字节向高字节自动转换 byte->short->int->long->float->doubleboolean 8bit/1byte...
2018-11-24 17:55:36
89
转载 java for 循环执行顺序
public static void main(String[] args) { int x = 1; for(show('a'); show('b') && x<3; show('c')) { show('...
2018-11-23 21:18:26
294
原创 与、或、短路或、自增、自减、的执行过程
int x=0,y=1;// 1 1/0 1/2 if(++x==y-- & x++==1||--y==0){ System.out.println("x="+x+",y="+y);}else{ System.out.println("y="+y+",x="+x);} 结果:x=2,y=0
2018-11-23 20:39:31
159
原创 Java switch语句的执行顺序
public class test { public static void main(String[] args) { show(0); show(1); } public static void show(int i) { switch(i) { default: ...
2018-11-23 20:20:00
1091
原创 异常处理
1.如果我们调用标准api文档的方法,如果该类方法抛出异常,我们必须要捕获。2.在实际开发中,我们所编写的程序的功能执行成功与否,与外界有紧密关系(参数传递,调用关系)必须要抛出异常。 ...
2018-11-23 15:06:35
68
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人