hadoop,spark,scala,flink 大数据分布式系统汇总

20220314

https://shimo.im/docs/YcPW8YY3T6dT86dV/read
尚硅谷大数据文档资料

iceberg相当于对hive的读写,starrocks相当于对mysql的读写

20220306

hadoop或者spark集群启动,只需要在主节点上启动就可以了

20220127

索引,分区和分桶的区别
https://zhidao.baidu.com/question/558461303344423452.html

凡是跟业务应用挂钩的,我们都使用数据库
你可能已经猜到了,MySQL、PostgreSQL、MSSQL 和 Oracle 数据库主要用于处理事务工作负载,而数据仓库用于处理分析工作负载。

https://blog.csdn.net/qq_22473611/article/details/109053952
https://mp.weixin.qq.com/s/yjKUfJiEXVpPgoS0gxppuw
olap大数据分析工具
https://mp.weixin.qq.com/s/VJ9T7GQXjuTz01rBsW4Hdw
olap选型

https://mp.weixin.qq.com/s/eIGJJcDCYvcIMHOiRo7bJg
数据湖

20211126

http://doris.apache.org/master/en/sql-reference/sql-statements/Data%20Definition/CREATE%20TABLE.html#example
doris文档

20211116

trino是连接器,其他hive,iceberg才是具体承载对象

20211015

https://www.shangmayuan.com/a/19094d4b83b941d1adca034d.html
海豚调度使用dolphin

运行实例控制面板无法停止,需要通过进程来杀死

hadoop,spark,scala,flink 大数据分布式系统汇总_第1张图片
第一步先上线,上线之后才能设置定时任务,然后再运行
工作流实例看执行到流的哪一步,任务实例看实例的状态情况如何

20210927

在这里插入图片描述

 python ./fate_flow/fate_flow_client.py -f submit_job -d ./examples/federatedrec-examples/hetero_mf/test_hetero_mf_train_job_dsl.json   -c ./examples/federatedrec-examples/hetero_mf/test_hetero_mf_train_job_conf.json

提交任务就是开始在集群运行的起点 用命令之前 最好好好看看其所有的参数的作用

20210825

rabbitMQ 和kafka 类似

https://blog.csdn.net/qq_45083975/article/details/118422376
Hive与Presto的基本数据类型对照表

hadoop,spark,scala,flink 大数据分布式系统汇总_第2张图片
选框架原则

https://zhuanlan.zhihu.com/p/114028503
https://gitee.com/mirrors/FATE

联邦机器学习框架

20210823

1.python site-pakages 里面的pyspark 是为pycharm 提供环境
2.spark里面的pyspark 是 环境变量配置 cmd 运行

20210821

spark 大数据都是在副本上操作

spark.debug.maxToStringFields错误

https://blog.csdn.net/qq_21735341/article/details/81238328

https://blog.csdn.net/lixingying567/article/details/77480753
SparkContext的parallelize的参数

https://blog.csdn.net/wplblog/article/details/113885640
获取pyspark rdd里面数据内容

https://blog.csdn.net/hr786250678/article/details/85852150
hive 连接mysql

https://blog.csdn.net/wangxw1803/article/details/86648951
hadoop windows10 正确配置

https://blog.csdn.net/zhouzhiwengang/article/details/88191251
https://blog.csdn.net/qinlan1994/article/details/90524484
hive-site.xml 里面的 driver路径的值不要改
connecturl 用第二个
windows 安装hive

http://archive.apache.org/dist/hive/hive-2.1.1/
hive 镜像下载
https://www.cnblogs.com/pu20065226/p/9835872.html
hive 安装

https://blog.csdn.net/qq_41185868/article/details/109321535
pyarrow

Server version: 8.0.26 MySQL Community Server - GPL
需要的驱动为 mysql-connector-java-8.0.11.jar

hive 中orc存储格式
https://blog.csdn.net/weixin_40106836/article/details/94463475

file:/D:/code12temp/spark_lianxi/foo.csv
大数据系统中 路径格式的写法

https://www.infoq.cn/article/in-depth-analysis-of-parquet-column-storage-format
深入分析 Parquet 列式存储格式

20210819

pyspark 最新功能可用配置

在这里插入图片描述
python3.9
pyspark3.1.2

https://codechina.csdn.net/mirrors/cdarlint/winutils?utm_source=csdn_github_accelerator
winutils

https://www.cnblogs.com/jnba/p/10673747.html
hive 语法

https://www.cnblogs.com/zzpblogs/p/9679281.html
hive语法

https://blog.csdn.net/lsshlsw/article/details/49789373
pyspark数据库并行优化读取写入

https://blog.csdn.net/SCS199411/article/details/91630795
pyspark dataframe 转为普通的dataframe 再保存

https://blog.csdn.net/jhr112/article/details/105798381/
https://blog.csdn.net/pycrossover/article/details/102792855
重点
pyspark 第二种读取mysql数据库方式

http://spark.apache.org/docs/latest/api/python/getting_started/index.html
pyspark 官方文档

https://www.cnblogs.com/wonglu/p/7784556.html
pyspark sparksql 文档

hadoop,spark,scala,flink 大数据分布式系统汇总_第3张图片

spark,hadoop 的路径都是斜杠而不是反斜杠

https://blog.csdn.net/yingfengfeixiang/article/details/115602692
pyspark dataframe保存为csv

https://blog.csdn.net/luoganttcc/article/details/88791460
pyspark 连接mysql

hadoop,spark,scala,flink 大数据分布式系统汇总_第4张图片
mysql-connector-java-5.1.28.jar
spark 2.2.0 需要这个驱动配置
spark sql windows 路径正常配置

https://www.cnblogs.com/wcgstudy/p/10984550.html
spark 连接mysql

https://blog.csdn.net/anshuai_aw1/article/details/85235044
https://blog.csdn.net/qq_23860475/article/details/90748080
pyspark 关联算法

https://plugins.jetbrains.com/plugin/1347-scala/versions
scala 插件
hadoop,spark,scala,flink 大数据分布式系统汇总_第5张图片

打开一个已经存在的项目

hadoop,spark,scala,flink 大数据分布式系统汇总_第6张图片
增加依赖
点击右边的加号
hadoop,spark,scala,flink 大数据分布式系统汇总_第7张图片
增加框架支持

itellij idea 环境问题

https://www.jianshu.com/p/b0cf891a1e8d?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
spark 远程调试

spark-submit --master local D:\project_pycharm\pyspark_project\user_profile_for_2x_v2.py --source=file:///D:/project_pycharm/pyspark_project/sfz.txt -v2.x file:///D://baocun

spark 单机提交路径写法

https://blog.csdn.net/shdxhsq/article/details/106098411
hdfs windows 命令

https://archive.apache.org/dist/spark/
spark下载

20210817

解决HDFS和spark-shell启动的警告:Unable to load native-hadoop library for your platform… using builtin-java
https://blog.csdn.net/someby/article/details/82930140

py4j python 与 java 交互

pyspark:TypeError:an integer is required(got type bytes)解决
https://blog.csdn.net/weixin_43645287/article/details/109776235
把python版本降低到3.7以下

intellij idea 装 scala插件的版本 要对应

hadoop,spark,scala,flink 大数据分布式系统汇总_第8张图片

hadoop,spark,scala,flink 大数据分布式系统汇总_第9张图片
下载慢在官网直接安装

https://blog.csdn.net/cy4ttty/article/details/84321503
hadoop各版本hadoop.dll和winutils.exe下载
bin目录直接覆盖hadoop下面的bin目录

Could not locate Hadoop executable: D:\hadoop331\bin\winutils.exe -see https://wiki.apache.org/hadoo


java安装及其环境变量配置
java8 安装之后其会有一个update 安装之后卸载

主线程java.lang.exceptionininitializerError中的异常安装没有hadoop的spark时(exception in thread main java.lang.exceptionininitializerError When installing spark without hadoop)

降级安装jdk8

Windows环境下执行hadoop命令出现Error: JAVA_HOME is incorrectly set Please update D:\SoftWare\hadoop-2.6.0\conf\hadoop-env.cmd错误的解决办法(图文详解)

重新更改目录安装 java 然后再更改 hadoop-env.cmd
的java路径

https://blog.csdn.net/wen3011/article/details/54907731
这种方式没成功

https://blog.csdn.net/weixin_38507462/article/details/88053071
下载 .tgz的后缀文件
hadoop也要单独安装,sparkwithhadoop

http://www.bubuko.com/infodetail-2637987.html

Windows10 下安装spark单机版

https://www.cnblogs.com/ldy233/p/11475616.html
hadoop 配置java 路径

http://hadoop.apache.org/releases.html
hadoop 下载

https://www.scala-lang.org/download/all.html
scala 下载

hive 把sql 语句转换成 mapreduce

https://blog.csdn.net/healthsun/article/details/90669798
flink mllib

mahout 把 算法自动在集群中执行

20210804

flink中 收集器和迭代器对应

20210724

=> 等号 箭头相当于 函数的冒号

偏移量可以理解为索引

hadoop,spark,scala,flink 大数据分布式系统汇总_第10张图片
本地模式:想什么时候用就什么时候用
开发环境:用一次就没有了?

配置高可用 (HA)

hadoop,spark,scala,flink 大数据分布式系统汇总_第11张图片

hadoop,spark,scala,flink 大数据分布式系统汇总_第12张图片
独立模式和yarn 模式
独立只需要spark自己不需要其他第三方框架
yarn模式需要第三方比如hadoop等

在这里插入图片描述

集群模式和客户端模式的区别?
集群模式在控制台看不到结果客户端模式可以看到结果
driver 在集群里面运行的就是集群模型,在集群之外为客户端模式

yarn 属于hadoop

driver 和 executor 是和计算相关的组件
master 和 worker 是和资源相关的组件

driver 通过 application master 和master 交互

executor 是进程
core 是cpu核

有向无环图:依赖关系 A 用到了B 表示 A依赖于B
有环的话就是死循环

hadoop,spark,scala,flink 大数据分布式系统汇总_第13张图片

driver 和 executor 都是进程
网络编程就是socket 编程

https://www.zhihu.com/question/62807679/answer/548195113

class 是类
object 是实例

网络中不能传对象,但是可以把对象序列化

普通的java类不能序列化必须 extends(扩展) serializible (抽象接口)
scala 中所有java的接口都是叫特质

scala var 和 val 的区别

RDD 最小的计算单元
多个RDD(各种复杂的操作)联合起来形成完整的计算

数据结构:组织和存储数据的结构

字节流和字符流不同
字节流:一个字节一个字节地读

bufferedinputstream 缓存流 批处理

一行一行读 是字符流 而不是字节流

bufferdreader 是字符流
bufferedinputstream 是字节流

hadoop,spark,scala,flink 大数据分布式系统汇总_第14张图片
字节转字符
hadoop,spark,scala,flink 大数据分布式系统汇总_第15张图片
装饰者设计模式 :在原来的功能上扩展更丰富的功能 (包装就相当于 参数传入)
真正读取的还是最里层的fileinputstream
RDD 中途不保存数据,IO 要缓存

utf8或者其他编码模式 所需的字节数不一样

各种new 只是设计的功能模块
真正触发执行地是 in.readline() 延迟执行的感觉

在这里插入图片描述

hadoop,spark,scala,flink 大数据分布式系统汇总_第16张图片
函数中的this 相当于就是调用者自身

弹性就是可变的 不是固定的

分片 等于 分区
子类重写抽象类的方法
先分区后可并行计算

option 可有可没有
executor 在不同的节点中?

driver 做调度

scala中var 和val的区别
Scala有两种变量,val和var。val就不能再赋值了。与之对应的,var可以在它生命周期中被多次赋值。
hadoop,spark,scala,flink 大数据分布式系统汇总_第17张图片
相对路径 以当前根目录为基准

从文件中构建RDD是一行一行读取 是字符 类型为string
从内存中构建RDD是一个字符一个字符的读取? 如果是列表里面数字 则类型为int?

scala 类型推断

  • 通配符 可以有可以没有
    在这里插入图片描述

分布式存储系统路径 HDFS
crc 校验和状态文件

hadoop,spark,scala,flink 大数据分布式系统汇总_第18张图片
抽象的方法 在特质(trait)当中 不能直接运行

真正用的是具体执行的类 ctrl+H

taskscheduleimpl

035 035.尚硅谷_SparkCore - 核心编程 - RDD - 集合数据源 - 分区的设定
8分钟左右的追踪可以借鉴学习

0 until numslice 左闭右开

i=> xxx 对i进行右边的操作

你可能感兴趣的:(spark,scala,hadoop)