分类:大数据框架
外观
大数据框架是用于处理大规模数据集的分布式系统的软件组件集合。这些框架可以处理结构化、半结构化或非结构化的数据,数据量可以从TB级别到PB级别甚至EB级别。本分类包含了各种大数据处理框架的条目。
大数据框架的分类[编辑 | 编辑源代码]
按处理模式分类[编辑 | 编辑源代码]
批处理框架[编辑 | 编辑源代码]
批处理框架主要处理静态数据,一次性处理大量数据并输出结果。这些框架适用于不需要实时响应的工作负载。
- Apache Hadoop:最知名的批处理框架,使用MapReduce处理模型和HDFS存储系统
流处理框架[编辑 | 编辑源代码]
流处理框架处理"无限"或无界的数据集,实时处理数据。常见用例包括监控用户活动、处理游戏日志和检测欺诈交易。
- Apache Storm:分布式实时计算系统,应用程序设计为有向无环图形式。Storm专为轻松处理无界流而设计,可与任何编程语言一起使用
- Apache Samza:适用于Hadoop和Kafka已经可用或易于实施的流工作负载。Samza非常适合有多个团队在处理流程的各个阶段使用(但不一定紧密协调)数据流的组织
混合处理框架[编辑 | 编辑源代码]
混合处理框架可以同时处理批处理和流处理工作负载。
- Apache Spark:被认为是第三代数据处理框架,原生支持批处理和流处理。Spark利用微批处理,将无界事件流划分为小块(批次)并触发计算
- Apache Flink:被认为是第四代数据处理框架,原生支持批处理和流处理。它推广连续流处理,一旦接收到事件就触发事件计算
按性能特点分类[编辑 | 编辑源代码]
低延迟框架[编辑 | 编辑源代码]
优化了处理速度,提供快速响应时间的框架。
- Apache Flink:提供真正的流引擎,使用连续流、基于操作符的流模型。Flink的低延迟性能始终优于Spark,即使在更高的吞吐量下也是如此
- Apache Storm:提供非常低的延迟处理,但在默认配置下可能会传递重复项且无法保证顺序
高吞吐量框架[编辑 | 编辑源代码]
优化了数据处理量,能够在给定时间内处理更多数据的框架。
- Apache Spark:批处理提供令人难以置信的速度优势,但需要较高的内存使用量。Spark Streaming是一个适用于重视吞吐量而非延迟的工作负载的流处理解决方案
内存管理优化框架[编辑 | 编辑源代码]
针对内存使用进行了特殊优化的框架。
- Apache Spark:提供可配置的内存管理。Spark 1.6的最新版本已开始自动化内存管理
- Apache Flink:提供自动内存管理。它有自己的内存管理系统,与Java的垃圾收集器分开
按适用场景分类[编辑 | 编辑源代码]
数据仓库和ETL[编辑 | 编辑源代码]
适合数据提取、转换和加载的框架。
- Apache Hadoop:结合Hive可以进行类似SQL的查询和分析
- Apache Flink:结合了有状态流处理与处理ETL和批处理作业的能力
机器学习和图形处理[编辑 | 编辑源代码]
针对AI和图形算法优化的框架。
- Apache Spark:包含MLlib库,设计用于覆盖各种批处理应用程序、机器学习、流数据处理和交互式查询
- Apache Flink:支持控制循环依赖图,以非常高效的方式表示机器学习算法
实时分析和监控[编辑 | 编辑源代码]
适合需要即时响应的应用场景的框架。
- Apache Storm:适用于需要快速响应的应用程序,如检测安全漏洞。被设计为可扩展性和高度容错性
- Apache Flink:非常适合事件驱动的工作负载,例如网站上的用户交互或在线购买订单
框架比较[编辑 | 编辑源代码]
速度比较[编辑 | 编辑源代码]
如果将Hadoop比作2G,Spark比作3G,那么Flink可以被视为大数据处理的4G。Flink还提供低延迟和高吞吐量应用程序。各框架速度排名(从快到慢):
- Apache Flink
- Apache Spark
- Apache Storm
- Apache Hadoop
处理模型比较[编辑 | 编辑源代码]
- Apache Hadoop:MapReduce是面向批处理的工具。它一次性接收大量数据集作为输入,处理它并产生结果
- Apache Spark:Apache Spark Streaming以微批处理方式处理数据流。每个批次包含在批处理期间到达的事件集合
- Apache Flink:Apache Flink是真正的流引擎。它对工作负载使用流:流处理、SQL、微批处理和批处理。批处理是有限集的流数据
社区和生态系统[编辑 | 编辑源代码]
- Apache Hadoop:Hadoop生态系统非常庞大,提供许多其他工具,这些工具在Hadoop之上工作并使其具有高度特性
- Apache Spark:被认为是最活跃开发(和采用)的开源数据工具
- Apache Flink:相对较新的项目,但发展迅速
相关类别[编辑 | 编辑源代码]
外部链接[编辑 | 编辑源代码]
分类“大数据框架”中的页面
以下200个页面属于本分类,共670个页面。
(上一页)(下一页)A
- Airflow API安全
- Airflow API扩展
- Airflow API触发
- Airflow BashOperator
- Airflow BashOperator详解
- Airflow catchup参数
- Airflow Connections加密
- Airflow Connections概念
- Airflow Connections类型
- Airflow Connections配置
- Airflow Cron表达式
- Airflow DAG优化技巧
- Airflow DAG命名规范
- Airflow DAG基础
- Airflow DAG定义语法
- Airflow DAG文件结构
- Airflow DAG测试方法
- Airflow DAG测试自动化
- Airflow DAG版本控制
- Airflow DAG触发规则
- Airflow DAG部署流程
- Airflow DateTimeSensor
- Airflow DevOps最佳实践
- Airflow Docker Compose
- Airflow DockerOperator
- Airflow Docker部署
- Airflow EmailOperator 详解
- Airflow ETL流程设计
- Airflow ExternalTaskSensor
- Airflow FileSensor
- Airflow Helm Charts
- Airflow Hooks与Variables结合
- Airflow Hooks概念
- Airflow HttpOperator 详解
- Airflow HttpSensor
- Airflow KubernetesOperator
- Airflow Kubernetes部署
- Airflow Operator Hook集成
- Airflow Operators概述
- Airflow Operator参数传递
- Airflow Operator最佳实践
- Airflow Operator模板
- Airflow PythonOperator
- Airflow PythonOperator高级用法
- Airflow RBAC机制
- Airflow REST API使用
- Airflow S3KeySensor
- Airflow Secret Backend
- Airflow Sensors基础
- Airflow Sensors概念
- Airflow Sensor最佳实践
- Airflow Sensor模式
- Airflow Sensor负载管理
- Airflow Sensor超时设置
- Airflow Sensor重试机制
- Airflow SqlOperator 详解
- Airflow SqlSensor
- Airflow SSHOperator
- Airflow SubDagOperator 详解
- Airflow TaskFlow API
- Airflow Tasks分组
- Airflow TimeSensor
- Airflow UI界面介绍
- Airflow Variables加密
- Airflow Variables基础
- Airflow Variables管理
- Airflow Web服务器
- Airflow XComs基本使用
- Airflow XComs大数据处理
- Airflow XComs安全性
- Airflow XComs数据传递
- Airflow XComs数据清理
- Airflow XComs数据类型
- Airflow XComs概念
- Airflow XComs自定义后端
- Airflow与AWS集成
- Airflow与Azure Blob交互
- Airflow与Azure集成
- Airflow与BigQuery交互
- Airflow与CI CD集成
- Airflow与EC2交互
- Airflow与GCP集成
- Airflow与GCS交互
- Airflow与GitHub Actions集成
- Airflow与GitLab CI集成
- Airflow与Grafana集成
- Airflow与Hadoop集成
- Airflow与Jenkins集成
- Airflow与LDAP集成
- Airflow与MongoDB集成
- Airflow与MySQL集成
- Airflow与OAuth集成
- Airflow与PostgreSQL集成
- Airflow与Prometheus集成
- Airflow与RDS交互
- Airflow与S3交互
- Airflow与S3集成
- Airflow与Spark集成
- Airflow与多云环境管理
- Airflow与大数据平台集成
- Airflow与数据仓库集成
- Airflow与数据库集成
- Airflow与数据湖集成
- Airflow事件日志系统
- Airflow云安全最佳实践
- Airflow云平台概述
- Airflow云成本优化
- Airflow云资源监控
- Airflow代码风格指南
- Airflow任务Dependencies
- Airflow任务上下文
- Airflow任务优先级
- Airflow任务优化方法
- Airflow任务命名规范
- Airflow任务状态监控
- Airflow任务通信最佳实践
- Airflow任务重试机制
- Airflow任务间通信模式
- Airflow任务队列管理
- Airflow企业级应用案例
- Airflow元数据库访问
- Airflow共享数据方案:XComs与任务通信
- Airflow关键指标监控
- Airflow内存优化
- Airflow内置监控
- Airflow分布式部署
- Airflow功能开关
- Airflow加密配置
- Airflow动态DAG生成
- Airflow单元测试实践
- Airflow单机部署
- Airflow变量命名规范
- Airflow可扩展性设计
- Airflow可维护性提升
- Airflow告警系统
- Airflow命令行工具
- Airflow回填机制
- Airflow团队协作模式
- Airflow国际化支持
- Airflow基础设施即代码
- Airflow外部日志存储
- Airflow外部触发
- Airflow子DAG
- Airflow安全审计
- Airflow安全最佳实践
- Airflow安全概述
- Airflow安装与配置
- Airflow工作流定义
- Airflow工作流管理
- Airflow工作节点优化
- Airflow常用Hooks
- Airflow常见问题诊断
- Airflow性能优化策略
- Airflow性能监控
- Airflow手动触发
- Airflow执行历史访问
- Airflow执行器类型
- Airflow执行器选择
- Airflow指标收集
- Airflow插件系统
- Airflow操作器插件
- Airflow故障恢复
- Airflow敏感信息保护
- Airflow敏感数据处理
- Airflow数据工程概述
- Airflow数据库优化
- Airflow数据库后端
- Airflow数据库扩展
- Airflow数据流管理
- Airflow数据管道模式
- Airflow数据质量控制
- Airflow文档编写规范
- Airflow日志系统
- Airflow日志轮转
- Airflow日志配置
- Airflow时区设置
- Airflow权限管理
- Airflow架构概述
- Airflow核心概念
- Airflow水平扩展
- Airflow滚动更新
- Airflow灾难恢复计划
- Airflow版本升级策略
- Airflow环境管理
- Airflow瓶颈识别
- Airflow生产环境配置
- Airflow用户管理
- Airflow监控概述
- Airflow简介
- Airflow系统调优
- Airflow网络安全
- Airflow网页UI定制
- Airflow自定义Hooks
- Airflow自定义Operator
- Airflow自定义Sensor
- Airflow自定义插件开发
- Airflow菜单扩展
- Airflow蓝图集成
- Airflow蓝绿部署
- Airflow视图扩展