【大数据】基础概念
Hadoop
分布式系统基础架构
- HDFS 分布式文件系统
- MapReduce 并行计算编程模型
- YARN 资源管理系统
入门学习资料:
http://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html
Spark
基于内存的计算框架
https://spark.apache.org/docs/2.3.2/quick-start.html
Spark Streaming
SparkSQL
Spark的重要组成部分
- 兼容Hive语法
- 兼容标准SQL
https://spark.apache.org/docs/2.3.2/rdd-programming-guide.html
HBase
可伸缩,面向列的分布式云存储系统
- 海量数据存储
- 实时查询
https://hbase.apache.org/book.html
Hive
建立在Hadoop上的数据仓库基础架构。Hive定义了简单的类SQL查询语言,允许使用SQL查询数据。
HBase与Hive的区别
-
Hive是一种类SQL语言,最终被转化成Map/Reduce。Hive虽然类似SQL,但是不能交互查询,只能在Hadoop上批量执行。
-
HBase是一个Key/Value系统,运行在HDFS上。HBase可以实时运行。
-
Hive查询花费时间长,会默认遍历表中所有数据。
-
Hive不支持更新操作。
-
HBase需要特定语言编写,可以通过Apache Phonenix实现,但必须提供schema为代价。而且为了运行HBase,还需要提供Zookeeper支持。
-
Hive适合离线数据查询分析。
-
HBase适合大数据实时查询。
HBase与Hive的协作关系
- 通过Hive清洗、处理和计算数据数据;
- 通过ETL工具将数据抽取到HDFS存储;
- Hive清洗处理后的结果、如果是面向海量数据查询场景可以存入HBase;
- 数据应用应从HBase查询数据。
Kafka
分布式、分区、多副本的消息发布及订阅系统。
- 消息持久化
- 高吞吐
- 可靠性
- 分布式
https://kafka.apache.org/0100/documentation.html
Storm
Sotrm是一个分布式的实时计算系统,为大规模流式数据提供实时处理。适合场景:实时分析、持续计算、分布式ETL。
- 分布式实时计算框架
- 高容错
- 可靠的消息保证
- 灵活的拓扑定义及部署
- 与外部组件集成,包括Kafka、HDFS、HBase。
https://storm.apache.org/
Flume
分布式和高可用的海量日志聚合系统
-
收集、聚合时间流数据的分布式框架
-
通常用于日志数据
-
支持动态更新配置
-
提供上下文路由功能
-
支持负载均衡和故障转移
-
完全的可扩展
https://flume.apache.org/releases/1.6.0.html -
可以用Spark/Hive进行大数据,复杂处理的离线计算。
-
定时批量分析。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?