尚硅谷大数据技术之数据湖Hudi-2核心概念基本概念时间轴TimeLine文件布局File Layout存储方式
12345接下来看一下hudi的文件布局啊,什么意思呢?也就是说hudi它在存储系统上面,它是怎么一个表现形式啊,说白了,比如说咱们用HDFS作为它的数据存储的话啊,它以什么样的格式,什么样的目录来存储对应的数据,还有原数据啊,那其实这个这个地方我们可以类比为hive表。Hive的话,它一张表对应HDFS是不是一个目录啊,对吧?那目录名就是表名,那我们知道hive是不是可以有分区,它在表明目录下面是不是还有分区目录,那在分区目录当中存放的是不是就是数据文件,这个是hive对不对啊那么hudi也有点类似啊,有点类似,那hudi一张表呢,它也是体现为文件系统的一个目录啊,也就是表的名字就是目录的名字,那么在之后呢,它同样有什么呢?也有分区这个概念,那这个分区跟hive有点类似啊,它也是一个分区,是一个目录,一个分区是一个目录。那在分区当中呢,也包含了数据文件啊,那么区别在于哪呢?区别就在于来,我用红色的标出来,它在表的目录下面,除了数据的这些分区目录之外啊,它还有一个是原数据的 ...
尚硅谷大数据技术之数据湖Hudi-3数据写
123456789那我们来聊一个hoodie当中的一个核心操作,也就数据写入的一些操作啊,还有一些基本的原理,这个大家就视情况来了解。如果你仅仅是应用呢,你这一块就简单搂一眼就可以。如果你想啊多了解深一点,那你就好好去了解这一块,研究这一块。啊那我们基本要知道的是hudi的写入操作啊,大概可以分为三大类啊。第一类是所谓的upsert,也就是说插入或者更新。那这个时候它是严格依赖于什么呢?索引。它是必须依赖于索引的。也就是说upset的必须依赖于索引啊,这也是hudi的一个特点特性,高效的upsert啊,还有结合索引。另外呢他会去标记你是插入还是更新的数据。另外呢根据不同表不同场景啊,也就是说他有一定的策略啊去写做一些写入的行为啊,这是upsert的我们具体看啊另外一种就是insert,就是指追加的方式。其实啊那就是跳过索引啊,就是你这个索引我不管了,反正我有新的数据来,我管你是什么样的,我都直接就是追加追加追加追加啊。但是这个呢嗯回头你要自己去做一个去重的一个处理啊。还有一种是bulk_insert,是那个批量插入,批量插入这种是后面新版本提 ...
git自己博客内容 有部分记录
来自b站视频
git、svn
git、github、gitlab
12github、gitlab基于git建设github、gitlab功能更加丰富
git远程服务器
git本地客户端软件
git服务端、客户端安装git服务端
1git服务端 选择github,gitlab
git客户端1下载安装、图像界面、集成git的idea
1github desktop、fork
git操作
新建、管理远程仓库新建
管理
修改记录
回滚
分支
tag
权限
本地仓库克隆、更新克隆 git clone
1也可以直接下载zip文件 但不支持后续的更新 上传操作 仅适用于查看
切换分支克隆 git branch git checkout
git clone –branch 目标分支名 地址 目录
更新 git pull
缓存区 上传 git status git diff git add
提交到本地仓库 git commit -m “log”
提交远程仓 git push
实例讲解
多环境代码管理
1些更 ...
github相关问题上传网站12git init 后好像是因为我两个账号导致remote: Repository not found. fatal: repository 'https://github.com/ttyong/URL-Shortener.git/' not found
1目录找错
1! [rejected] master -> master (fetch first) error: failed to push some refs to 'https://github.com/Techzhihuizhan/URL-Shortener.git'
1github pages
访问慢
git相关问题error: RPC failed; curl 28 Recv failure: Connection was reset1git config --global http.sslVerify "false"
Failed to connect to github.com port 443 after 21042 ms: Couldn’t connect to server参考链接
参考链接
就是要保持代理端口号和git配置的代理端口号一样:设置->网络和Internet->代理
1234git config --global http.proxy 127.0.0.1:上面查到的端口号git config --global https.proxy 127.0.0.1:上面查到的端口号 git config --global -l //查看结果
cmd
1ipconfig/flushdns 刷新dns缓存
idea使用常识idea安装插件缓慢参考链接
12345https://tool.chinaz.com/speedtest/plugins.jetbrains.com搜plugins.jetbrains.com配置hosts
java和scala sdk添加1全局配置sdk和为项目配置sdk
为单个项目创建java和scala代码目录1创建目录后,要mark as source root
特殊情况123456大数据开发工程师课程spark word count的一个案例 添加spark-core_2.11 dependency 课程使用的scala是2.12他当时下载的spark版本是 SparK-2.4.3-bin-hadoop2.7.tgz 它带的scala版本是2.11但它带hadoop依赖,所以没下载下面这个2.4.3 spark-2.4.3-bin-without-hadoop-scala-2.12.tg2
12所以这种情况,之前配置的2.12sdk,也要为这个项目改成2.11下载scala2.11,可以解压到之前的scala同级目录,不用配置环境变量。还是配置全局s ...
java用法积累Integer和intInteger是int的包装类型,支持自动装箱和拆箱。总结来说,Integer[]array和int[]的主要区别在于—个是对象数组,一个是基本类型数组。Integer[] array的默认值是null,因为它是对象引用。int[]的默认值是0 因为它是基本类型
12345int[] intArray = {1, 2, 3};Integer[] integerArray = {1, 2, 3};integerArray[0] = intArray[0]; // 自动装箱:int 转换为 IntegerintArray[1] = integerArray[1]; // 自动拆箱:Integer 转换为 int
字符串java.lang.StringBuilder1234String str = ''for(int i=0;i<1000;i++){ str=str+','+i;}
上面这种字符串拼接方式会不断创建新的字符串,然后抛弃旧的,这 ...
web开发版本问题12345Tomcat 6: Servlet 2.5、JSP 2.1、EL 2.1Tomcat7: Servlet 3.0、JSP 2.2、EL 2.2Tomcat8: Servlet 3.1、JSP 2.3、EL 3.0tomcat9: servlet 4.0tomcat10: servlet 5.0
12tomcat8支持java8tomcat10需要java11
1234 Spring Boot 2.x Spring Boot 3.xSpring版本 Spring 5.x Spring 6.xJDK版本 >= 1.8 >= 17Tomcat版本 9.x 10.x
博学谷-零基础大数据在线就业班-第一阶段 java基础第一章 java基础语法环境搭建+入门java语言背景介绍java语言跨平台原理JRE和JDK
JDK的下载和安装常用DOS命令PATH环境变量的配置HelloWorld案例12编译 javac xxx.java运行 java xxx // 不需要后缀zhui .class
12类名前有public时,类名必须与文件名一致一个程序必须有入口方法main
Notepad软件的安装和使用123高级的记事本,方便代码编写(有行号)配置默认代码语言和编码ascII
注释123单行 //多行 /* */文档注释 /** */
关键字123456789关键字全小写常用代码编辑器里关键字有特殊颜色public classvoidstaticmain不是关键字
数据类型及转换常量123456字符串常量整数常量小数常量字符常量布尔常量空常量null
变量介绍数据类型
12345整数 字节 范围byte 1short 2int(默认) 4 建议long 8
123浮点数 字节 范围float ...
博学谷-零基础大数据在线就业班-第一阶段 java基础 2泛型(廖雪峰)1泛型是一种“代码模板”,可以用一套代码套用各种类型。
什么是泛型123456789101112131415在讲解什么是泛型之前,我们先观察Java标准库提供的ArrayList,它可以看作“可变长度”的数组,因为用起来比数组更方便。实际上ArrayList内部就是一个Object[]数组,配合存储一个当前分配的长度,就可以充当“可变数组”:public class ArrayList { private Object[] array; private int size; public void add(Object e) {...} public void remove(int index) {...} public Object get(int index) {...}}如果用上述ArrayList存储String类型,会有这么几个缺点:需要强制转型;不方便,易出错。
1234567891011例如 ...






