- 博客(601)
- 资源 (54)
- 收藏
- 关注
原创 【数据仓库】Iceberg、Hudi、Delta Lake、Paimon:四大开源湖表格式怎么选?
如果你用多种计算引擎,选 Iceberg;如果你需要强实时更新 + CDC,选 Hudi;如果你在 Databricks 上,用 Delta Lake;如果你重度依赖 Flink,Paimon 更高效。没有“最好”,只有“最合适”。建议在测试环境验证关键路径(如写入吞吐、查询延迟、Compaction 开销),再决定生产选型。
2026-03-23 09:16:43
923
原创 数仓系列:数仓开发工程师学习路线图
要找到一份数仓开发工作,核心在于掌握 SQL能力、大数据技术栈以及数仓理论模型、真实项目经验。掌握 Hadoop 生态 + Hive + Spark 开发。: 能独立完成 “从原始日志到业务报表” 的全链路开发。理解数据仓库理论 + 掌握 Linux/SQL 基础。设计可维护、高质量、低成本的数仓体系。解决复杂业务问题 + 应对大规模场景。
2026-02-10 11:27:56
136
原创 数仓系列:从数仓、数据湖、湖仓一体、数据中台到 AI 中台的演进之路
定位 :面向分析型业务,结构化数据的集中存储与处理平台。数据高度结构化(Schema-on-write);强调数据一致性、准确性、历史版本管理;通常用于BI报表、OLAP分析;架构经典如Kimball/Inmon模型。Hive (传统数仓)Oracle Exadata(传统/一体机数仓)Teradata(传统/MPP数仓)Snowflake(云原生数仓)ClickHouse(开源OLAP引擎)Doris(开源OLAP引擎)
2026-02-10 10:24:42
872
原创 Docker系列:如何从Docker中拷贝文件到宿主机
test-tools/tmp_out/0.ply 即为要拷贝的到宿主机的文件。24e483a40174 即为docker镜像id。test_folder 即为要拷贝到宿主机的文件夹。
2026-01-21 09:20:23
266
原创 Flin系列:Flink 集群安装部署
拷贝 flink 安装包到 node-02、node-03。关闭 flink 集群 # stop-cluster.sh。启动 Flink 集群服务(standalone模式)修改 conf/workers 配置文件。查看 Flink Web UI 界面。
2026-01-21 09:18:58
314
原创 Kylin系列:Kylin 操作使用(五)
重新加载元数据,使 Kylin 能读取到创建好的 project “learn_kylin”,跳转至 system ,点击 reload metadata。此时 Cube 正在创建,可以在 Monitor 中监控到整个 Cube 构造的过程以及可以查看到每一步构建的过程和日志。
2026-01-21 09:18:33
148
原创 Kylin 系列:Kylin 安装部署(四)
因为 Kylin 要使用 Hive、HDFS、Hbase,并且可以进行任务提交;检查环境时,会在 HDFS 上创建 Kylin 的文件夹。注:启动 Kylin 服务之前需要启动 Zookeeper、HDFS、Yarn、Hive、HBase 服务。上传 apache-kylin-3.1.2-bin-hadoop3.tar.gz 安装包并解压。看到上面的登录页面,就代表 Kylin 已安装部署成功:)没有打印报错信息,说明 Kylin 检查环境正常。网址:node-01:7070/kylin。
2026-01-21 09:18:13
220
原创 Kylin 系列:Kylin 工作原理(二)
给定一个数据模型,我们可以对其上所有维度进行组合。对于 N 个维度来说,有组合的可能性为 2 的 N 次方种。对每一种维度的组合,将度量做聚合运算,运算的结果保存为一个物理视图,称为 Cuboid。将所有维度组合的 Cuboid 作为一个整体,被称为 Cube。简单来说,一个 Cube 就是许多按维度聚合的物化视图的集合。举例。
2026-01-21 09:17:34
414
原创 Kylin系列:Kylin 简介(一)
官网:http://kylin.apache.org/cn/Apache Kylin 是 Hadoop/Spark 大数据平台上的一个开源的联机分析处理(OLAP)引擎Kylin 采用多维立方体预计算技术,实现了超高速的大数据 OLAP 分析,也就是要让大数据分析像使用数据库一样简单迅速,用户的查询请求可以在秒级返回,交互式数据分析以前所未有的速度释放大数据里潜藏的知识和信息Kylin 是第一个由中国人主导的 Apache 顶级开源项目,在国际开源社区具有极大的影响力。
2026-01-21 09:17:08
829
原创 HBase系列:HBase HA 集群环境搭建
网址:node-01:16010(active)node-02:16010(backup)启动 HBase 集群必须先启动 zk 集群 和 HDFS 集群。已安装并启动 HDFS 集群、Zookeeper 集群。
2026-01-14 11:54:22
268
原创 Hive系列:Hive 整合 HBase
HBase 不支持标准 SQL 语句,而且 HBase 做统计分析也不支持 Join 表操作,而这些功能是 Hive 所具备的,所以在实际的生产环境中将二者整合并让 HBase 表中的数据可以使用 Hive SQL 语句及 Join 分析是很有必要的。注:进入了 hive 的 shell 命令行界面。
2026-01-14 11:54:01
476
1
原创 大数据开发之序列化与反序列化技术选型
互联网的产生带来了机器间通讯的需求,而互联通讯的双方需要采用约定的协议,序列化和反序列化属于通讯协议的一部分。通讯协议往往采用分层模型,不同模型每层的功能定义以及颗粒度不同,例如:TCP/IP协议是一个四层协议,而 OSI 模型却是七层协议模型。在 OSI 七层协议模型中展现层(Presentation Layer)的主要功能是把应用层的对象转换成一段连续的二进制串,或者反过来,把二进制串转换成应用层的对象–这两个功能就是序列化和反序列化。
2026-01-14 11:53:31
664
原创 Hadoop系列:Yarn 集群环境 HA 搭建
查看 node-01:http://192.168.229.21:8088/cluster/cluster,发现状态由 standby 变为 active,说明已经进行故障转移。这时,node-02 上的 resourcemanager 则变为 standby 状态,故障转移测试完成:)yarn --daemon stop nodemanager 停止nodemanger进程。
2026-01-14 11:51:49
361
原创 Hadoop系列:MapReduce shuffle 过程详解
MapReduce 计算模型主要由三个阶段构成:Map、shuffle、ReduceMap 负责数据的拆分,将原始数据转化为 <key,value> 键值对Reduce 负责数据的聚合,将具有相同 key 值的 value 进行处理后再输出新的 <key,value> 键值对作为最终结果为了让 Reduce 可以并行处理 Map 的结果,必须对 Map 的输出进行一定的排序与分割,然后再交给对应的 Reduce,而这个将 Map 输出进行进一步整理并交给 Reduce 的过程就是 Shuffle。
2026-01-14 11:51:21
713
原创 Hadoop系列:Yarn 集群环境搭建
yarn --daemon stop nodemanager 停止 nodemanger 进程。stop-yarn.sh :停止 yarn 集群。确保主机搭建 HDFS 运行环境。注:先启动 HDFS HA 集群。Yarn 集群环境搭建成功:)
2026-01-14 11:50:56
180
原创 Hadoop系列:HDFS 的内存存储是什么?
首先,我们来了解一下到底什么是 “内存存储”?那还用说嘛,当然就是使用内存来存储数据的方式咯!是的,在 HDFS 中,“内存存储” 就是我们常听到的 "我们可以在 HDFS 上创建某个文件时设定它的存储模式为 “LAZY_PERSIST” 模式,如此一来,后续在这个文件上所追加的所有数据都会被直接保存在对应数据节点的内存上。而使用内存来作为数据的存储介质的好处想必就不用我多说了,但同时在内存上保存数据的坏处也很让人头疼啊。内存的容量小、掉电数据尽数丢失,无论哪一个问题都能让相关人员头皮炸裂。
2026-01-14 11:50:11
465
原创 Hadoop系列:HDFS 高可用(HA)环境搭建
启动所有的进程可以直接执行 start-dfs.sh 脚本,但是为了对 Hadoop 的进程有所了解,这里选择一个个进程按顺序来启动(注:必须严格按照顺序启动进程)注:在 HA 中不需要启动 SecondaryNameNode 进程,因为 Standby NameNode 会执行 checkpointing 机制。查看 node-02 的 NameNode,由 Standby 变为 了 Active,说明自动故障转移成功:)nn1地址: 192.168.229.21:9870。
2026-01-14 11:49:48
419
原创 Hadoop:HDFS 集群环境搭建
HDFS 集群由一个主/从架构组成,单个运行 NameNode 进程的服务器为主节点服务器,多个运行 DataNode 进程的服务器为从节点服务器。
2026-01-14 11:49:20
1011
原创 Hadoop系列:Hadoop 集群配置免密 SSH 登录
Hadoop 集群包含 1 个主节点和 3 个从节点,需要实现各节点之间的免密码登录。
2026-01-14 11:48:17
331
原创 Linux系列:VIM 三种模式和常用命令
vim/vi 是 Unix / Linux 上最常用的文本编辑器而且功能非常强大。特点:只有命令,没有菜单。
2026-01-13 08:44:46
761
原创 Linux系列:Linux 软连接和硬链接
依此您可以做一些相关的测试,可以得到以下全部结论:删除符号连接f3,对f1,f2无影响;删除硬连接f2,对f1,f3也无影响;删除原文件f1,对硬连接f2没有影响,导致符号连接f3失效;同时删除原文件f1,硬连接f2,整个文件会真正的被删除。
2026-01-13 08:44:02
197
原创 Linux系列:Linux 发行版本介绍
其实不管是哪种版本,内核都是一样的,所谓触类旁通、举一反三,只要把一种学习明白,其他版本的使用也就不再是难事了。
2026-01-13 08:42:15
496
原创 openEluer 忘记密码怎么办?
注:密码需要满足对应的要求,字符类型不少于3种,而且不能是常见的弱密码,如 openEuler#12。当忘记密码无法登录 openEuler 系统时,我们可以重置密码进行登录。通过上下左右进行光标的移动,找到下面的位置,大概在最后几行。用户名:root,密码:openEuler#12。
2026-01-13 08:39:40
259
原创 Linux系列:Linux 安装 MySQL 5.7.27 教程
另外 --initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码。为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化。停止mysql服务器:#systemctl stop mysqld.service。mysql 数据库默认只能本地访问,远程工具连接 mysql 需要授予远程访问权限。**扩展:**已生成的库表字符集如何变更。
2026-01-12 09:15:23
398
原创 Linux系列:Shell 脚本 test 命令详解
test命令在bash shell脚本中经常以中括号([])的形式出现,而且在脚本中使用字母来表示比符号表示更专业,出错率更低。
2026-01-12 09:14:39
177
原创 Linux系列:Ubantu 安装 MySQL 8.0 教程
注意:mysql 出于安全方面考虑默认只允许本机(localhost, 127.0.0.1)来连接访问。可以看到 root 用户只有 localhost 本机权限,就是只有本机能访问。注意:0.0.0.0:3306 表示支持监听远程连接。注意:其中 % 表示任意远程 IP 可以访问。快捷键:Ctrl+z。
2026-01-12 09:13:38
438
原创 Linux系列:Linux最强600条命令总结
升级模式会安装用户所指定的更新版本,并删除已安装在系统中的相同软件包,升级软件包命令如下:rpm –Uvh wu-ftpd-2.6.2-8.i386.rpm –Uvh:升级参数。使用 RPM 命令的安装模式可以将软件包内所有的组件放到系统中的正确路径,安装软件包的命令是:rpm –ivh wu-ftpd-2.6.2-8.i386.rpm。vim 启动后,默认进入命令模式,任何模式都可以通过 esc 键回到命令模式(可以多按几次),命令模式下可以键入不同的命令完成选择、复制、粘贴、撤销等操作。
2026-01-12 09:13:14
555
原创 MongoDB系列:MongoDB 分片集群环境搭建
注:实际生产环境中,路由服务器和配置服务器可部署多个,以构建高可用分片集群模式。注意:这里启动 route 路由服务器要使用 bin/mongos 实例。至此,分片集群环境搭建成功 :)
2026-01-12 09:12:18
581
原创 Python系列:Python爬虫必杀技:XPath
XPath 即为 XML 路径语言,它是一种用来确定 XML(标准通用标记语言的子集) 文档中某部分位置的语言。XPath 基于 XML 的树状结构,有不同类型的节点,包括元素节点,属性节点和文本节点,提供在数据结构树中找寻节点的能力。但是往往在查找的时候,我们需要获取某个特定的节点,则需要配合下面的方式即:被嵌在方括号内,用来查找某个特定的节点或包含某个值定的值的节点。XPath 使用路径表达式在 XML 文档中选取节点。另外还可以在使用 xpath 的时候使用通配符和功能函数。
2026-01-12 08:45:29
662
原创 Iceberg系列:Iceberg作为数据湖基建的5大特性
Iceberg 旨在与所有主流云存储配合使用,此外,Iceberg 还可以轻松与 Spark、Presto、Trino 和 Hive 等数据处理引擎集成。
2026-01-12 08:44:02
458
原创 数仓系列:一文读懂仓湖一体架构
事务日志 = 订单系统(记录所有变更)Base Files = 主仓库(存放大批量货物)Delta Files = 快递暂存区(临时存放小件)Compaction = 夜间整理(把暂存区货物整理到主仓库)读写分离 = 进货出货双通道(互不干扰)优化技术 = 智能货架 + 快速定位系统这样,既能处理大批量货物(批处理),又能快速处理零散订单(实时写入),还能让客户即时查询(毫秒级响应)。
2026-01-09 10:03:33
1520
原创 Scala系列:Scala 安装与配置
下载 IEDA 的 scala 插件,地址:https://plugins.jetbrains.com/plugin/1347-scala,然后点击 Versions,下载对应版本的插件(2019.2.40版本)目前 Scala 的 IDE 开发工具主要有两种:Eclipse 和 IDEA,这两个开发工具都有相应的 Scala 插件。Scala 安装完成后会自动将 Scala 的 bin 目录的路径添加到系统的 Path 变量中,如 Path 变量中无该路径,则需要手动添加。点击安装文件,下一步完成安装。
2026-01-09 08:42:14
980
原创 Scala系列:Scala 神奇的下划线 _
在 Scala 中,下划线 _ 有很多种用法,作为 Scala 初学者也经常被下划线 _ 搞得晕头转向,下面是对 Scala 中下划线 _ 使用的简单总结~
2026-01-09 08:41:49
216
原创 Scala系列:scala中 :: , +:, :+ , ::: , ++ 的区别
: 该方法被称为cons,意为构造,向队列的头部追加数据,创造新的列表。用法为 x::list,其中x为加入到头部的元素,无论x是列表与否,它都只将成为新生成列表的第一个元素,也就是说新生成的列表长度为list的长度+1(btw, x::list等价于list.::(x)):+和+: 两者的区别在于:+方法用于在尾部追加元素,+:方法用于在头部追加元素,和::很类似,但是::可以用于pattern match ,而+:则不行. 关于+:和:+,只要记住冒号永远靠近集合类型就OK了。
2026-01-09 08:41:28
162
原创 Scala系列:Scala 函数式编程思想
函数式编程思想和命令式编程思想相比,并没有所谓的优劣之分,还是取决于使用场景。Spark 选择 Scala 也是由于函数式语言在并行计算下的优势非常契合 Spark 的使用场景。
2026-01-09 08:41:08
751
同步软件设计(銘傳大學).ppt
2010-12-26
嵌入式入门(2004全国高校ARM嵌入式教学及科研师资高级培训班讲稿).ppt
2010-12-25
Java企业应用框架技术
2011-01-30
使用.NET和Vss进行团队开发
2011-01-03
软件专题(分为八个专题为软件开发过程涉及的方方面面进行研究和讨论)
2011-01-03
android入门及深入详解
2013-02-22
DesignPattern(设计模式迷你手册)
2012-10-25
uml简单教程ppt胶片
2011-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅