- 博客(54)
- 收藏
- 关注
原创 Flink综合总复习笔记
Flink 期末重点知识点手册摘要 Flink 是一个分布式流处理框架,核心是"数据流上的有状态计算"。它支持有界流(批处理)和无界流(实时处理),具有高吞吐、低延迟、Exactly-Once一致性等特点。与Spark Streaming相比,Flink是真正的逐事件流处理。 Flink提供四层API:SQL(最高层)、Table API、DataStream API(核心)和Process Function(最底层)。WordCount示例展示了流处理的基本流程,特别注意keyBy()的Lambda、匿名
2026-06-25 13:59:31
317
原创 算法设计与分析第五章:蛮力法
本文介绍了蛮力法(穷举法)的基本概念、设计思想及在各类问题中的应用。蛮力法通过依次处理所有可能解来寻找答案,具有简单直接的特点,但时间性能较低。文章重点探讨了蛮力法在查找问题(如顺序查找、串匹配的BF和KMP算法)、排序问题(选择排序和冒泡排序)以及图问题(哈密顿回路和TSP问题)中的应用,并分析了各算法的时间复杂度。蛮力法虽然效率不高,但在小规模问题中具有实用价值,并可作为算法效率的衡量基准。
2026-06-25 09:49:29
235
原创 PowerBI_Chapter8:Apache Echarts
本文是Apache ECharts数据可视化框架的期末复习指南,重点涵盖以下内容:1)ECharts作为开源JavaScript库的核心特性,包括易用性设计、丰富的交互功能和高性能渲染;2)支持20+种图表类型及组合使用;3)关键技术创新如增量渲染和流式数据处理,可处理千万级数据;4)多平台支持(PC/移动/小程序)与多渲染方案(Canvas/SVG/VML);5)交互式数据探索工具(缩放/筛选/提示等)。中英双语对照,适合快速掌握考试要点。
2026-06-24 11:57:46
199
原创 PowerBI_chapter7:Visualize and Analyze the Data
本文是Power BI Chapter 7的数据可视化复习笔记,重点梳理了数据可视化的定义、重要性及优劣势,并详细介绍了Power BI中的报告与仪表板功能。报告是多页面交互式数据分析工具,基于单个数据集构建,支持深度探索;仪表板则是单页面的关键指标可视化摘要,整合多源数据,适合快速监控。笔记强调了两者的区别与适用场景,帮助用户高效掌握Power BI数据可视化的核心知识点。
2026-06-23 09:23:55
236
原创 PowerBI_Chapter6:DAX
本文是Power BI Desktop中DAX(数据分析表达式)的复习笔记,涵盖核心概念与应用。DAX是一种函数语言,用于数据模型中的自定义计算和聚合,支持数值、文本等数据类型,具备动态分析、时间智能和跨表计算能力。DAX表达式分为计算列(逐行存储)、度量值(动态计算)、计算表(返回整表)和行级安全表达式。常用函数包括聚合(SUM/AVERAGE)、逻辑(IF/AND)、文本(CONCATENATE)、日期(YEAR/DATEDIFF)及筛选(CALCULATE)等。重点掌握公式结构
2026-06-23 09:12:25
641
原创 PowerBI_Chapter5:Data Modeling for Power BI Desktop
本文是Power BI Desktop数据建模章节的复习笔记,主要涵盖:数据模型概述(定义、重要性及关键组件)、表与列属性配置(名称、描述、同义词、格式等)、事实表与维度表的区别(事实表存储定量业务数据,维度表提供描述性属性)、星型/雪花架构特点,以及关系配置(基数、交叉筛选)、层次结构创建、行级安全(RLS)、Q&A自然语言查询和性能优化技术。重点讲解了如何通过合理建模提升分析效率和准确性,包括表关系管理、属性优化及数据分类等实用技巧。
2026-06-23 08:53:31
358
原创 PowerBI_Chapter4:Data Preparation
Power BI第四章笔记涵盖数据连接、Power Query(M语言)、DAX及数据清洗关键内容,助力考试冲刺。 核心要点 数据连接 支持100+本机连接器,分为文件、数据库和Web服务三类 连接MySQL需预装ODBC驱动,HDFS需通过WebHDFS(REST API) 数据源管理 文件路径变更时,可通过查询设置(单文件)或数据源设置(批量)更新 Power Query与M语言 功能:ETL工具,执行数据清洗转换 M语言特性:函数式、区分大小写 DAX公式语言 功能:数据建模与计算
2026-06-23 08:20:39
309
原创 PowerBI_Chapter3:Power Query Editor
Power Query Editor 核心功能与操作指南 本文系统梳理了Power BI中Power Query Editor的核心功能,采用中英双语对照形式呈现。主要内容包括: 编辑器概述:定义Power Query作为数据准备工具的作用,强调其不修改原始数据源、记录应用步骤的特性,并介绍从数据连接到加载的完整工作流程。 界面结构解析: 左侧查询窗格显示活动查询列表 中心数据窗格进行主要转换操作 右侧查询设置窗格记录所有应用步骤 高级编辑器支持查看和编辑M代码 Home选项卡功能:重点说明数据加载管理功能
2026-06-23 07:00:00
628
原创 PowerBI_Chapter 2:MS PowerBI
本复习笔记浓缩了Power BI课程第二章的核心考点,涵盖报告创建流程、五大构建块、主要组件及界面功能。采用中英双语、序号化结构整理,便于快速记忆与考前冲刺。
2026-06-22 22:02:01
370
原创 算法设计与分析第十章~第十四章复习重点
本文主要介绍了回溯法和限界剪枝法两种算法设计技术。回溯法通过深度优先策略搜索解空间树,利用约束条件和目标函数剪枝,适用于求解可行解或最优解(如0/1背包、TSP问题),其时间性能与解空间树类型(子集树、排列树)相关。限界剪枝法基于广度优先策略,通过限界函数估算目标函数值并剪枝,尤其适合最优化问题。两者均通过剪枝减少搜索空间,但回溯法侧重深度优先+递归,限界法侧重广度优先+队列及目标函数界限优化。此外,文章还简述了P类问题(多项式时间可解的判定问题)和NP类问题的概念,为理解问题复杂性奠定基础。
2026-06-22 20:42:01
507
原创 PowerBI_Chapter 1_Introduction to Data Visualization
数据可视化通过图表、图形等工具将复杂数据转化为直观易懂的视觉信息,帮助用户快速识别趋势、模式和异常值。其优势包括直观高效的分析、实时决策支持、易于共享和广泛可访问性,尤其适合企业和非技术人员使用。然而,过度简化、设计不良或偏见可能导致误导。在当今大数据时代,数据可视化对提升决策效率、挖掘数据价值至关重要,是企业分析销售、运营等海量数据的核心工具。
2026-06-22 18:14:52
251
原创 Powerbi_考前冲刺版复习笔记
Power BI 综合复习摘要 本文基于2023年Power BI复习资料整理,涵盖数据可视化基础与Power BI核心应用。主要内容包括: 数据可视化:定义、重要性、优缺点及大数据场景下的应用,强调可视化在识别趋势、支持决策中的作用; Power BI概述:介绍其作为微软商业智能工具的核心功能,包括数据连接(Excel/SQL/云服务)、清洗(Power Query)、建模、可视化(图表/仪表板)及报表共享; 关键流程:从数据源连接到最终报表生成的四个阶段,以及Power BI的核心构建模块
2026-06-22 13:10:44
237
原创 算法设计与分析第一章、第二章:设计与分析基础
本文系统阐述了算法的核心概念和评价方法。算法是指解决特定问题的有限指令序列,具有输入、输出、有穷性、确定性和可行性五大特性。算法可通过自然语言、流程图、伪代码和程序设计语言四种方式描述,各具优缺点。 评价算法优劣的关键在于正确性、健壮性、可理解性和高效性,其中时间效率是核心指标。通过渐进分析(大O、Ω、Θ符号)可度量算法运行时间的增长趋势,重点关注最高次项而忽略低次项和系数。
2026-06-21 10:23:20
377
原创 Flink第八章:Flink Table API
Apache Flink Table API 为开发者提供了基于 SQL 和关系代数的流批统一处理接口,大幅降低了实时计算的门槛。本文系统讲解 Flink Table API 的核心概念与开发流程,包括: 环境搭建:通过 StreamTableEnvironment 创建表环境,集成流处理与表操作。
2026-06-19 19:21:04
295
原创 Flink第七章:Flink中的状态和检查点
摘要:本文系统介绍了Apache Flink中的状态管理机制。首先区分了无状态算子(如map、filter)和有状态算子(如聚合、窗口),重点分析了托管状态的两种类型:算子状态(Operator State)和按键分区状态(Keyed State)。其中Keyed State包含ValueState、ListState等多种形式,文章通过代码示例演示了ValueState的具体应用。此外,还详细讲解了Flink的容错机制——检查点(Checkpoint)和保存点(Savepoint)的配置与恢复流程。
2026-06-19 17:52:17
237
原创 Flink第六章:flink中的时间和窗口
本文介绍了Flink中的窗口机制,核心要点包括: 窗口概念:窗口是对无界数据流进行切分的机制,本质上是动态创建的"数据桶",用于实现实时统计。 窗口分类: 按驱动类型:时间窗口(时间触发)和计数窗口(数据量触发) 按分配规则: 滚动窗口:固定大小、不重叠 滑动窗口:可重叠,通过步长控制触发频率 会话窗口:基于数据间隔动态划分 全局窗口:无界窗口,需自定义触发器
2026-06-15 10:21:56
319
原创 算法分析与设计实验:装箱问题First-Fit 与 Best-Fit
装箱问题是经典的NP难组合优化问题,广泛应用于物流、内存管理等场景。本文分析了两种贪心近似算法:First-Fit(首次适应)和Best-Fit(最佳适应)。First-Fit将物品放入第一个能容纳的箱子,Best-Fit则选择剩余空间最小的箱子。两者都能在多项式时间内得到较优解,但实现策略不同:First-Fit顺序扫描提前终止,Best-Fit需要全局搜索最优匹配。文章通过C++实现展示了两种算法的具体步骤,并比较了它们在时间复杂度、空间利用率上的差异,为后续学习更高级算法奠定了基础。
2026-06-10 20:45:09
249
原创 算法分析与设计实验:回溯法求三着色问题
本文介绍了图着色问题的背景、算法分析与实现。图着色问题要求用三种颜色为无向图顶点着色,相邻顶点颜色不同,应用于地图着色、考试安排等场景。算法采用深度优先搜索(DFS)与回溯法,通过递归尝试颜色并在冲突时回溯剪枝。核心函数dfs(v)和isSafe(v,c)确保着色合法性,邻接矩阵表示图结构。测试用例包括常规图、完全图和无解情况,展示了算法在不同场景下的表现。最终通过回溯法找到一个合法着色方案(如[1,2,3,3,1]),并分析了搜索树的遍历过程。算法高效剪枝,避免无效搜索,适用于小规模图着色问题。
2026-06-04 09:00:00
176
原创 算法分析与设计实验:贪心法求解0/1背包问题的局限性
摘要: 本文探讨贪心法在0/1背包问题中的应用与局限性。贪心法通过优先选择单位价值最高的物品进行局部最优决策,时间复杂度为O(n log n),但无法保证全局最优解。通过测试用例分析发现,贪心策略可能因物品不可分割而错过更优组合(如容量为4时,选性价比次高的两个物品优于单个高性价比物品)。相比之下,动态规划能获得精确解但复杂度更高(O(nC))。贪心法适用于分数背包问题,而在0/1背包中仅作为快速近似方案,其核心缺陷在于缺乏全局视野,无法调整已选物品。代码实现展示了按性价比排序与贪心选择的完整流程
2026-06-01 19:51:04
231
原创 算法分析与设计实验:动态规划法求解0/1背包问题
本文介绍了0-1背包问题的动态规划解法。该问题要求在背包容量限制下,选择物品使总价值最大。核心思想是将问题分解为子问题,使用二维数组dp[i][j]记录前i件物品在容量j下的最优解。状态转移方程考虑两种情况:当容量不足时继承上一行结果;当容量足够时比较放入与不放入当前物品的价值。通过填表计算后,从dp[n][c]回溯可得到具体物品选择方案。文中给出了详细填表示例,展示了如何逐步计算最优解。该方法时间复杂度为O(nc),空间复杂度为O(nc),是解决0-1背包问题的经典算法。
2026-05-14 00:37:44
419
原创 算法分析与设计实验:最小生成树
本文介绍了最小生成树(MST)问题的两种经典算法:Prim和Kruskal。Prim算法基于顶点扩展,适合稠密图,通过优先队列选择最小边;Kruskal算法基于边排序,适合稀疏图,使用并查集避免环路。两者均采用贪心策略,但实现方式和适用场景不同:Prim时间复杂度O((N+M)logN),Kruskal为O(MlogM)。文章通过测试用例和对比表格,帮助读者根据图结构选择合适算法,并强调了特判N=1的情况。掌握这两种算法能有效解决网络布线、电力传输等实际问题。
2026-05-13 11:35:50
524
原创 数据结构:邻接矩阵和邻接表的区别
本文对比了图的两种主要存储结构:邻接矩阵和邻接表。邻接矩阵使用N×N二维数组存储边权值,适合稠密图,能快速查询边但空间复杂度高;邻接表采用数组+链表结构,仅存储实际边,适合稀疏图,便于遍历邻居但查询边效率较低。在最小生成树算法中,邻接矩阵适合朴素Prim算法处理稠密图,邻接表则适用于堆优化Prim和Kruskal算法处理稀疏图。实际应用中应根据图规模、密度及操作需求选择合适的存储方式,邻接矩阵适合小规模稠密图,邻接表更适合大规模稀疏图。
2026-05-13 08:52:47
567
原创 算法分析与设计实验:动态规划法求解最长公共子序列
本文介绍了最长公共子序列(LCS)问题的动态规划解法。通过分析测试用例X="abcbdb"和Y="acbbabdbb",详细阐述了状态转移方程的构建过程,包括字符相等和不等时的递推策略。文章展示了完整的DP表格填充过程,并给出C++代码实现。最后讨论了LCS不唯一的原因。
2026-05-06 19:56:46
391
原创 Flink第三章:Flink运行及部署
Apache Flink作为领先的分布式流处理框架,其灵活的部署和运行模式是支撑各类实时计算场景的核心基础。本文档系统梳理了Flink的三种主要运行模式——Standalone、YARN与Kubernetes,并重点剖析了生产环境中应用最广泛的YARN集成方案。在此基础上,详细介绍了Flink集群的核心组件角色、三种部署模式(会话模式、单作业模式、应用模式)的差异与适用场景,以及历史服务器的配置与使用。通过对这些内容的掌握,读者能够根据实际业务需求选择合适的部署策略,高效构建和管理Flink集群。
2026-05-04 22:24:29
487
原创 Flink第四章:运行架构
Flink运行时架构解析:核心组件与并行处理机制 本文深入剖析Apache Flink在Standalone会话模式下的运行时架构,重点介绍两大核心进程:JobManager和TaskManager。JobManager作为主进程,包含Dispatcher、JobMaster、ResourceManager等关键组件,负责作业调度、资源分配和中央协调。TaskManager作为工作进程,详细解析了任务槽、并行度和算子链等核心概念。文章通过图解方式展示了并行子任务的执行原理,并系统介绍了并行度的多种设置方法
2026-05-04 20:34:00
608
原创 Flink第五章:DataStream API
本文系统介绍了Apache Flink DataStream API的基础知识,包括执行环境配置、源算子读取、转换算子使用以及程序触发执行等核心内容。重点讲解了流式和批处理两种执行模式的选择,以及map、filter等基本转换算子的使用方法。通过匿名内部类、lambda表达式等多种实现方式,帮助开发者快速掌握Flink流处理程序的构建方法,为大数据实时处理提供实用指南。
2026-05-03 23:16:52
578
2
原创 算法分析与设计实验:动态规划法求解多阶段图的最短路径
基于本实验,可延伸出多个有价值的研究方向:如何扩展算法处理含环图(如结合拓扑排序检测环,或改用Bellman-Ford算法);如何支持动态图(边权实时变化时的增量更新策略);如何优化负权边处理(当前算法在负权DAG中仍有效,但需验证边界条件);如何并行化计算(各阶段内节点的dp值计算可并行,但阶段间存在依赖);如何应用于实际场景(如项目调度中的关键路径分析、资源分配优化、VLSI布线);如何结合启发式方法(在大型图中引入A*启发式函数加速搜索);如何支持多目标优化(同时最小化距离、时间和成本);
2026-04-22 13:34:23
417
原创 Flink第一章:Flink概述
Apache Flink是一个分布式流处理框架,支持无界和有界数据流的高性能计算。它以低延迟、高吞吐和精确一次的状态一致性为特点,提供分层API(包括SQL、Table API、DataStream/DataSet API)满足不同开发需求。Flink起源于Stratosphere项目,2014年成为Apache顶级项目,并在阿里巴巴支持下快速发展。相比Spark Streaming的微批处理模式,Flink采用真正的流处理架构,具有更灵活的时间语义和窗口功能。已经成为现代大数据处理的重要工具。
2026-04-07 01:40:49
448
原创 RDD Checkpoint机制详解
Spark的Checkpoint机制是一种跨作业持久化方案,通过将RDD数据写入可靠存储系统(如HDFS)并切断依赖链来解决长计算链的容错问题。与Cache相比,Checkpoint具有更高的数据可靠性但性能开销更大,适用于迭代算法和流式计算等场景。最佳实践包括合理设置checkpoint频率、与Cache协同使用,以及选择关键RDD进行checkpoint。使用前需设置存储目录,并通过行动操作触发持久化过程,注意checkpoint会改变原始Lineage。该机制能有效提升Spark作业的稳定性
2026-03-02 14:05:07
245
原创 软件工程笔记第三章:结构化分析与设计
本文介绍了结构化分析与设计方法(SA/SD)的基本概念与模型组成。SA模型主要包括数据流图(DFD)、实体联系图(E-R)和状态变换图(STD),分别描述系统数据处理、数据关系和状态变化。SD模型通过SC图将DFD转化为软件结构设计。文章还阐述了分层数据流图的自顶向下设计方法,以及E-R图、DFD和STD图的配合使用,为结构化系统分析提供了完整的方法论框架。
2026-01-08 11:14:54
500
原创 软件工程第六章、第七章:面向对象分析及设计
本文系统介绍了面向对象设计(OOD)的核心概念与方法。主要内容包括:1)OOD金字塔模型的四层结构(子系统设计、类和对象、消息、责任);2)系统设计的四类构件(领域、人机交互、任务管理、数据管理);3)设计模板的使用原则,强调"复合优于继承";4)OOA与OOD的区别分析;5)软件设计基础概念(模块/构件、抽象/细化、信息隐藏等);6)模块化设计原则(高内聚低耦合)。文章提供了清晰的对比表格和记忆口诀,重点突出OOD的关键考点与设计原则,适合作为软件工程学习者快速掌握面向对象设计要点的参
2026-01-08 10:23:11
861
原创 软件工程第八章:编码与测试
本文概述了软件编码与测试的核心内容。编码阶段将设计模型转化为可执行程序,强调编码风格应注重清晰性、文档化和用户友好性。测试部分区分了测试与调试,指出测试是系统性发现错误的过程,具有挑剔性、复杂性、不彻底性和经济性特点。文章详细介绍了黑盒测试(功能测试)和白盒测试(结构测试)的方法,包括等价分类法、边界值分析法和逻辑覆盖测试等。测试作为软件开发的关键环节,需平衡全面性与经济性,通过科学方法确保软件质量。
2026-01-08 00:35:56
958
原创 软件工程第九章、第十章:软件维护、软件重构、软件复用
本文介绍了软件维护的相关概念,包括四种维护类型:完善性维护(占比50-60%)、适应性维护(25%)、纠错性维护(20%)和防御性维护。阐述了软件可维护性的三个关键属性:可理解性、可修改性和可测试性,并提出通过完整文档和现代化开发方法来提高可维护性。此外,还简要说明了软件重构和软件复用技术。文章旨在帮助读者理解软件维护的基础知识,提升软件系统的可持续性和适应能力。
2026-01-07 22:45:55
1088
原创 Sqoop复习笔记
Apache Sqoop是一个用于在Hadoop分布式文件系统(HDFS)和关系型数据库管理系统(RDBMS)之间进行高效批量数据传输的工具。2012年3月成为Apache顶级项目支持HDFS、Hive、HBase等Hadoop生态组件支持MySQL、Oracle、PostgreSQL等主流数据库开源工具,广泛用于大数据生态系统
2026-01-06 23:57:23
1369
原创 Flume笔记:Flume的基本介绍和使用
Apache Flume是一种分布式服务,旨在有效地收集、聚合和移动大量日志数据到集中式存储系统,如HDFS。它具有具有源、通道和接收器的灵活架构,支持来自各种来源的可靠数据流。Flume具有高度可扩展性和可定制性,支持日志聚合和实时数据分析等多种用例。它与Hadoop生态系统的集成使其成为大数据管道的关键工具,确保可靠高效的数据摄取和传输。Apache Flume是一种分布式、高可靠性、高可用性的工具,用于收集、聚合大量日志数据,并将其从不同来源传输到中央数据仓库。
2026-01-06 23:54:47
2428
2
原创 Hive第四章:HIVE Operators and Functions
Hive和其他关系数据库一样,提供了大量的操作符和函数。函数可以进一步分为内置函数和自定义函数。Hive功能可以满足各种应用的统计需求。本章主要介绍Apache Hive中使用的操作符和功能,以及Apache Hive的重要特性。OperatorTypeA+B所有数字类型使用 + 操作符进行加法运算。结果值取决于表达式中使用的最大数据类型(largest data type)。A-B所有数字类型使用 - 操作符进行减法运算。
2026-01-05 23:58:47
1408
原创 Hive第六章:Hive Optimization and Miscellaneous
Hive性能优化策略与实践 摘要:本文系统介绍了Hive查询性能优化的关键技术,包括本地模式、JVM重用、并行执行、Map/Reduce数量优化和EXPLAIN诊断工具。本地模式通过避免集群开销加速轻量级查询,JVM重用减少短任务启动成本,并行执行利用资源并发处理独立阶段。合理设置Reducer数量可防止数据倾斜,而EXPLAIN工具能分析执行计划瓶颈。这些优化技术可显著提升Hive查询效率,案例显示执行时间从475秒降至49秒。优化策略需根据数据规模、集群负载等因素灵活应用,平衡资源利用率与性能提升。
2026-01-05 21:51:42
1024
原创 软件工程第二章:软件生存周期与软件过程
本文系统介绍了软件生存周期及其相关过程模型。首先阐述了软件生存周期的概念、阶段划分及环节,包括计划、开发、维护三大阶段和七个具体环节。其次详细分析了传统软件过程模型(瀑布模型、快速原型模型)和软件演化模型(增量模型、螺旋模型)的特点、流程及适用场景。随后介绍了统一过程(RUP)和敏捷过程等现代开发方法。最后简要提及可行性研究和风险分析。全文通过比较不同模型的优缺点,为软件开发过程选择提供了理论依据,特别强调了迭代开发和风险管理在现代软件开发中的重要性。
2026-01-04 23:49:38
1503
原创 Hive第五章:Integeration with HBase
HBase是Hadoop上的高性能NoSQL键值存储。Hive提供了一个存储处理程序机制,通过使用HBaseStorageHandler类来创建由Hive管理的HBase表,从而与HBase集成。通过Hive与HBase的集成,Hive用户可以利用HBase的实时事务性能进行实时大数据分析。目前,集成特性仍在开发中,特别是在提供更高性能和快照支持方面。HBase是一种用于存储大容量数据的分布式数据库。它是用Java编写的,运行在HDFS之上。因此,它是一种快速、高吞吐量地读写大量数据的方法。
2026-01-04 19:49:38
1068
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅