- 博客(59)
- 收藏
- 关注
原创 算法复杂度介绍
复杂度分析是估算算法执行效率的方法,**公式O(f(n))表示算法的复杂度**,此方法即为**大O复杂度表示法O(f(n))中n表示数据规模**,**f(n)表示运行算法所需要执行的指令数**。
2022-07-19 23:53:48
672
原创 大数据----Zookeeper学习(1)
Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的项目。Zookeeper是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已注册的观察者做出相应的反应。...
2022-07-11 14:51:18
308
原创 大数据之路----3.数据同步
关系型数据库的结构化数据:MySQL、Oracle、DB2、SQL Server非关系型数据库的非结构化数据:OceanBase、HBase、MongoDB、来源于文件系统的结构化或非结构化数据(通常以文件形式存储)通过定义好的规范接口API和**基于动态链接库的方式(ODBC/JDBC等)**连接业务库。...
2022-07-07 15:50:32
1319
原创 大数据----Hadoop与数据仓库
传统数据仓库一般建立在Oracle、MySQL这样的关系数据库系统之上。关系数据库主要的问题是不好扩展,但Hadoop的数据和计算都是分布式的,可以处理海量数量。
2022-07-01 17:34:04
3007
原创 大数据----Hadoop----Spark入门介绍
Hadoop生态圈包含多种组件,貌似各不相同,但是都有三种共同的特征:1.依赖于Hadoop的YARN、HDFS、MapReduce;2.都是处理大数据的工具,并提供建立端到端数据流水线所需的各种功能;3.建立分布式的理念相通。......
2022-07-01 16:23:50
951
原创 大数据----数据仓库架构
把数据仓库架构理解成构成数据仓库的组件及其之间的关系图中显示的整个数据仓库环境包括操作型系统和数据仓库系统两大部分。操作型系统的数据由各种形式的业务数据组成,这其中可能有关系数据库、TXT或CSV文件、HTML或XML文档,还可能存在外部系统的数据,比如网络爬虫抓取来的互联网数据等,数据可能是结构化、半结构化、非结构化的。这些数据经过抽取、转换和装载(ETL)过程进入数据仓库系统。在数据仓库技术演化过程中,产生了几种主要的架构方法,包括数据集市架构、Inmon企业信息工厂架构...
2022-06-30 17:36:45
6010
3
原创 数据中台详解
各种信息系统大多是独立建设的,无法做到信息的互联互通,导致形成了多个数据孤岛。数据中台的作用是融合新老信息,整合各个孤岛上的信息,快速形成数据服务能力,为企业经营决策、精细化运营提供支持。数据中台和业务中台的区别: 业务中台是抽象业务流程的共性形成通用业务服务能力,数据中泰是抽象数据能力的共性形成通用数据服务能力。数据仓库的主要场景是支持管理决策和业务分析,而数据中台则是将数据服务化之后提供给业务系统,目标是将数据能力渗透到各个业务环节,不限于决策分析类场景。数据中台的建设包含数据仓库的完整内容,数据中
2022-06-30 13:58:39
26927
3
原创 JAVA入门14
能够使用File的对象操作文件,如:删除、获取文件信息、创建文件夹等。IO流字节输入流:以内存为基准,来自磁盘文件/网络中的数据以字节的形式读入到内存中去的流成为字节输入流。字节输出流:以内存为基准,把内存中的数据以字节写出到磁盘文件或者网络中去的流成为字节输出流。字符输入流:以内存为基准,来自磁盘文件/网络中的数据以字符的形式读入到内存中去的流称为字符输入流。字符输出流:以内存为基准,把内存中的数据以字符写出到磁盘文件或者网络介质中去的流成为字符输出流。IO流的作用:读写文件数据
2022-06-15 23:27:24
166
原创 Java入门12----异常
异常异常时代码在编译或者执行的过程中可能出现的错误异常分为 编译时异常 和 运行时异常。编译时异常没有基础RuntimeException的异常,编译阶段就会出错。默认处理流程运行时异常继承自RuntimeException的异常或其子类,编译阶段不报错,运行可能报错。常见运行时异常:数组索引越界空指针异常数字操作异常类型转换异常数字转换异常默认处理流程...
2022-05-30 23:59:41
142
原创 Java入门11---- Stream流
文章目录不可变集合Stream流Stream流的三类方法获取Stream流中间方法终结方法不可变集合不可变就是不可被修改。集合的数据在创建的时候提供,并且在整个生命周期中都不可改变。List<Integer> list1=List.of(33,222,11);Set<String> names=Set.of("Damon","Stefan","ELena");Set<String> names=Set.of("Damon","Stefan","ELena"
2022-05-29 02:18:28
488
原创 Java入门10---Collection---List、Set
文章目录集合体系Collection常用APICollection的遍历方式Iterator迭代器foreach/增强for循环lambda表达式集合体系/** * 明确Collection集合体系的特点 */public class Demo1 { public static void main(String[] args) { //ArrayList有序 可重复 有索引 Collection list1=new ArrayList<>(
2022-05-28 04:41:17
235
原创 Java斗地主案列分析
package CardGame;public class Card { private String size;//点数 private String color;//花色 private int point;//用来比较大小 public Card(String size, String color, int point) { this.size = size; this.color = color; this..
2022-05-28 02:18:53
234
1
原创 常见数据结构
常见数据结构栈后进先出,先进后出队列先进先出,后进后出数组查询速度快:查询数据通过地址值和索引定位,查询任务数据耗时相同。(元素在内存中是连续存储的)删除效率低:将原始数据删除,同时后面每个数据前移添加效率低:添加位置后的每个数据后移,再添加元素链表链表中的元素是游离存储的,每个元素节点包含数据值和下一个元素的地址。查询慢:无论查询哪个数据都要从头开始找。增删相对快,但要找到位置的过程慢。二叉树二叉查找树(二叉搜索树)每个节点上最多有两个子节点左子树上所有节点的值
2022-05-26 21:21:08
132
原创 Java入门9---包装类、正则表达式、Array
包装类其实就是8种基本类型对应的引用类型。Java为了实现一切皆对象,为8种基本类型提供了对应的引用类型。public class Test { public static void main(String[] args) { int a=10; Integer a1=a;//自动装箱 Integer b=100; int b1=b;//自动拆箱 }}包装类的特有功能:1.包装..
2022-05-25 10:31:32
167
原创 Java入门8---日期
文章目录日期DateSimpleDateFormatCalendar日期DateDate类记录时间的2种形式形式1:日期对象代表当前系统的此刻日期时间对象Data d=new Date();形式2:时间毫秒值从1970.1.1 00:00:00走到此刻的总的毫秒数long time=d.getTime();SimpleDateFormatDemopublic class Demo { public static void main(String[] args) th
2022-05-23 23:43:15
164
原创 Java入门7---内部类
文章目录内部类静态内部类(了解)成员内部类(了解)局部内部类(鸡肋语法,了解)匿名内部类(重点)常用APIToStringequalsStringBuilderMathSystemBigDecimal内部类内部类就是定义在一个类里面的类,里面的类可以理解成寄生,外部类可以理解成宿主。静态内部类(了解)static修饰,属于外部类本身。//外部类public class Outer { //学习静态成员内部表 public static class Inner{
2022-05-23 23:14:39
292
原创 Java入门6---面向对象三大特征之三:多态
文章目录多态的作用和形式多态的优势多态的缺点Demo多态的作用和形式1.多态的形式:父类类型 对象名称=new 子类构造器;接口 对象名称=new 实现类构造器。2.方法:编译看左边,运行看右边。3.变量:编译看左边,运行也看左边。public abstract class Animal { public String name="Animalname"; public abstract void run();}public class Cat extends Anima
2022-05-23 00:16:35
220
原创 Java入门5--接口基础
文章目录JDK8之前接口概述、特点接口的基本使用接口的多继承JDK8开始新增方法默认方法静态方法私有方法总结JDK8之前接口概述、特点接口用关键字interface来定义,格式如下//声明一个借口,体现一种规范,规范一定是公开的。public interface InterFaceDemo{ //在接口中,public final可以省略不写。 //常量 public static final String NAME_INFO="K"; String ID_INFO="123";
2022-05-22 16:24:21
222
原创 Java入门4--面向对象进阶
文章目录导包权限修饰符权限修饰符的分类和具体作用范围private缺省protectedpublicfinal作用常量枚举抽象类Demo特征和注意事项导包1.同一个包下的类可以互相访问2.不同包下的类,必须先导包才可以访问3.如果这个类中使用不同包下的相同的类名,此时默认只能导入一个类的包,另一个类要使用全名访问import com.fxw.student.stu;//import com.fxw.student2.stu;public class test { public st
2022-05-22 14:02:41
1092
原创 java入门3
文章目录代码块概述静态代码块实例代码块(了解,用的少)设计模式单例模式饿汉单例设计模式懒汉单例设计模式面向对象三大特征之二:继承Demo方法重写子类继承父类后构造器的特点Demo代码块概述代码块是类的5大成分之一(成员变量,构造器,方法,代码块,内部类),定义在类中方法外。在JAVA类下,使用{}括起来的代码被称为代码块静态代码块格式:static{}特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发,只执行一次使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使
2022-05-21 03:28:49
299
原创 JAVA入门2
文章目录1自动类型转换2强制类型转换算数运算符逻辑运算符三元运算符键盘键入技术1自动类型转换类型范围小的变量可以直接赋值给类型范围大的变量在表达式中,小范围类型的变量会自动转换成当前较大范围的类型再运算。注意事项表达式de最终结果类型由表达式中的最高类型决定。在表达式中,byte、short、char是直接转换成int类型参与运算的。2强制类型转换类型范围大的数据或者变量,不能直接赋值给类型范围小的变量,会报错。强制类型转换可以强行将类型范围大的变量、数据赋值给类型范围小的变量。
2022-05-16 23:21:39
163
原创 JAVA入门1
JVM:java虚拟机,真正运行Java的程序的地方核心类库:Java自己写好的程序,给程序员调用JRE:Java的运行环境JDK:Java开发工具包(包括上面所有)字面量计算机是用来处理数据的,字面量就是告诉程序员:数据在程序中的书写格式。常用数据计算机存储数据最小单位为字节数据类型分为:引用数据类型:String基本数据类型:4大类8种:整型: byte、short、int(默认)、long浮点型:float、double(默认)字符型:char布尔型:boole
2022-05-16 21:26:53
123
原创 大数据学习---数据仓库概述2
文章目录1 表的分类维度建模中的表类型1.1事实表1.2维度表1.3事务事实表1.4周期快照事实表1.5累计快照事实表1.6拉链表2 ETL策略2.1 全量同步2.2 增量同步3 任务调度3.1为什么需要任务调度?3.2常见任务类型3.3常见调度工具1 表的分类维度建模中的表类型事实表维度表事务事实表周期快照事实表累计快照事实表1.1事实表一般是指一个现实存在的业务对象,比如用户,商品,商家,销售员等1.2维度表一般是指对应一些业务状态,代码的解释表。也可以称为码表通常使用维度对事
2022-04-24 19:02:18
1045
原创 大数据学习---数据仓库概述1
文章目录数据仓库1.数据仓库概念2.数据仓库特点3.数据仓库VS数据库4.技术实现4.1 传统数据仓库4.2大数据数据仓库5.数据仓库架构设计5.1 ETL---- Extract、Transform、Load5.2 ODS(操作数据源层)5.3 CDM(公共维度层):5.3.1DWD(数据明细层)5.3.2DWD(数据汇总层)5.4 ADS(数据应用层)6 建模方法6.1 OLTP系统建模方法6.1.1 OLAP(在线联机分析)数据仓库1.数据仓库概念数据仓库( Data Warehouse ),是
2022-04-24 16:43:06
3103
原创 LeetCode 剑指 Offer II 010. 和为 k 的子数组
文章目录题目思路1.滑动窗口2.枚举3.前缀和+哈希表完整代码题目给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。思路1.滑动窗口这道题我一开始想到的是用滑动窗口方法,但是题目里表明了nums[i]的范围,里面包含了负数,所以并不能使用滑动窗口。2.枚举我们可以通过枚举[0…i]中所有的下标是否存在符合题意的子数组。count=0 for right in range(len(nums)): s=0
2022-04-13 16:01:31
673
原创 MapReduce面试题总结1
文章目录1.介绍一下MR2.Split2.1 分片概念2.2 分片数量与Map Task数量的关系2.3 由谁来划分分片?2.4 分片的大小2.5 默认分片大小与Block分块大小相同的原因是什么?3. Map4. Shuffle4.1 Map端的Shuffle4.2 Reduce 端的 Shuffle 阶段5. Reduce阶段1.介绍一下MRMapReduce是Hadoop中负责计算部分。主要分为split、map、shuffle、reduce四个阶段,以wordcounter为例解释:1)Spl
2022-04-12 15:47:39
3367
2
原创 大数据----Hive学习(5)----Hive 基本操作3
文章目录分区表和分桶表1 分区表1.1 分区表基本操作1.2 二级分区1.3 动态分区调整2 分桶表分区表和分桶表1 分区表分区表实际上就是对应一个 HDFS 文件系统上的独立的文件夹,该文件夹下是该分区所 有的数据文件。Hive 中的分区就是分目录,把一个大的数据集根据业务需要分割成小的数据集。在查询时通过 WHERE 子句中的表达式选择查询所需要的指定的分区,这样的查询效率 会提高很多。1.1 分区表基本操作1)引入分区表(需要根据日期对日志进行管理, 通过部门信息模拟)dept_20200
2022-04-06 22:40:28
164
原创 LeetCode 567. 字符串的排列(滑动窗口)
文章目录题目解题思路1.暴力求解2.滑动窗口完整代码题目给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返回 false 。换句话说,s1 的排列之一是 s2 的 子串 。解题思路当s2中某一段中的各字符数量和s1相同时,则返回True1.暴力求解先找出s1的全排列,然后再以相同长度在s2上滑动,判断该字段是否是s1的全排列之一。该方法能解决一部分问题,但当s1的字符过多时,会超时。2.滑动窗口统计字符个数,我们可以想到直
2022-04-06 15:36:35
321
原创 LeetCode 3. 无重复字符的最长子串(滑动窗口)
题目给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。解题思路这道题主要用到思路是:滑动窗口滑动窗口其实就是一个队列,比如例题中的 abcabcbb,进入这个队列(窗口)为 abc 满足题目要求,当再进入 a,队列变成了 abca,这时候不满足要求。所以,我们要移动这个队列!如何移动?我们只要把队列的左边的元素移出就行了,直到满足题目要求!一直维持这样的队列,找出队列出现最长的长度时候,求出解!完整代码class Solution: def lengthOfL
2022-04-05 21:44:18
93
原创 大数据----Hive学习(4)----Hive 基本操作2
文章目录DML数据操作**1 数据导入****2 数据导出**查询DML数据操作1 数据导入1.1 向表中装载数据(Load)1)语法 hive> load data [local] inpath '数据的 path' [overwrite] into table student [partition (partcol1=val1,...)];(1)load data:表示加载数据(2)local:表示从本地加载数据到 hive 表;否则从 HDFS 加载数据到 hive 表(3)i
2022-03-31 23:31:44
2002
原创 大数据----Hive学习(3)----Hive 基本操作1
文章目录Hive数据类型DDL数据定义1 创建数据库2 查询数据库5 创建表5.1 管理表5.2 外部表5.3 管理表与外部表的互相转换6 修改表7 删除表Hive数据类型1 基本数据类型2 集合数据类型Hive 有三种复杂数据类型 ARRAY、MAP 和 STRUCT。ARRAY 和 MAP 与 Java 中的 Array 和 Map 类似,而 STRUCT 与 C 语言中的 Struct 类似,它封装了一个命名字段集合,复杂数据 类型允许任意层次的嵌套。基于上述数据结构,我们在 Hive
2022-03-31 23:10:25
2436
原创 大数据----Hive学习(2)----Hive 安装部署
Hive 安装部署下载地址http://archive.apache.org/dist/hive/先搭建Hadoop集群详情:1.https://blog.youkuaiyun.com/weixin_46002001/article/details/1235861552.https://blog.youkuaiyun.com/weixin_46002001/article/details/1235869213.https://blog.youkuaiyun.com/weixin_46002001/article/details/
2022-03-25 22:01:32
3169
1
原创 大数据----Hive学习(1)----Hive基本介绍
Hive基本概念Hive相当于是Hadoop的一个客户端,通过提交SQL,让Hive去解析封装成MapReduce任务,去HDFS读数据,去Yarn执行。1.Hive简介Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。Hive用于解决海量结构化日志的数据统计工具。2.Hive本质将HQL转化为MapReduce程序(1)Hive处理的数据存储在HDFS上(2)Hive分析数据底层的实现是MapReduce(3)执行程序运行在Yar
2022-03-23 22:33:25
2369
原创 LeetCode 51.N皇后
n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。解题思路:这个题是非常经典的回溯题了,题目没有描述的很清楚,皇后之间不互相攻击的条件是不在同一行,同一列和同一对角线上。n皇后本质也是一个求组合问题,自然可以用回溯的思想去做。回溯的话我们首先找一下他的约束条件:1.不在同一行
2022-03-23 22:13:19
97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人