数据处理思维导图
中心主题:数据处理

一级分支 1:数据采集
- 目标:从各种来源获取原始数据。
- 数据源
- 内部系统
- 业务数据库 (MySQL, PostgreSQL, Oracle)
- 日志文件 (Web服务器, 应用日志)
- CRM/ERP 系统
- 外部数据
- 第三方 API (天气, 社交媒体)
- 公开数据集 (政府, 研究机构)
- 爬虫/网络抓取
- 实时数据流
- 传感器数据 (IoT)
- 用户行为点击流
- 消息队列 (Kafka, RabbitMQ)
- 内部系统
- 采集方法
- 批量采集
- 定时任务 (Cron Jobs)
- ETL/ELT 工具
- 实时采集
- Flume, Logstash
- CDC (Change Data Capture) 工具
- 批量采集
- 数据格式
- 结构化 (CSV, JSON, XML, Parquet, Avro)
- 半结构化 (日志, HTML)
- 非结构化 (文本, 图像, 音频, 视频)
一级分支 2:数据存储
- 目标:安全、高效、可扩展地存储采集到的数据。
- 存储系统类型
- 数据仓库
- 特点:面向主题、集成、稳定、反映历史变化。
- 代表:Google BigQuery, Snowflake, Amazon Redshift, ClickHouse, Apache Doris。
- 数据湖
- 特点:存储任何类型、任何规模的数据,原始格式。
- 代表:Amazon S3, Azure Data Lake Storage (ADLS), HDFS (Hadoop)。
- NoSQL 数据库
- 文档型 (MongoDB, CouchDB):存储 JSON/BSON 文档。
- 键值型 (Redis, DynamoDB):高性能缓存和简单数据查询。
- 列式型 (HBase, Cassandra):适合大规模读写和分布式存储。
- 图数据库 (Neo4j):处理复杂关系网络。
- 关系型数据库
- 特点:结构化、ACID 事务、强一致性。
- 代表:MySQL, PostgreSQL, SQL Server。
- 数据仓库
- 存储策略
- 冷热数据分离
- 数据分区与分桶
- 数据压缩与编码
一级分支 3:数据清洗
- 目标:处理数据中的“脏”部分,提高数据质量,为后续分析奠定基础。
- 常见问题
- 缺失值:空值、null、默认值。
- 异常值/离群点:不符合业务逻辑或统计规律的值。
- 重复数据:完全或部分重复的记录。
- 数据不一致:格式、单位、命名不统一 (如 "男"/"1"/"M")。
- 错误数据:类型错误、逻辑错误。
- 清洗策略
- 处理缺失值
- 删除 (删除行或列)
- 填充 (均值、中位数、众数、固定值、预测值)
- 处理异常值
- 删除
- 盖帽法
- 视为特殊值处理
- 处理重复数据
去重
- 处理不一致数据
- 数据标准化/规范化
- 规则转换
- 处理错误数据
- 类型转换
- 正则表达式匹配
- 处理缺失值
- 工具
- 编程语言:Python (Pandas), R
- 可视化工具:OpenRefine, Trifacta Wrangler
- SQL:
WHERE,CASE WHEN,COALESCE,NULLIF
一级分支 4:数据转换
- 目标:将清洗后的数据转化为适合分析和建模的格式。
- 核心任务
- 数据集成:合并来自不同来源的数据。
- 数据聚合:将细粒度数据汇总为粗粒度数据 (如按天汇总销售额)。
- 数据拆分:将一个字段拆分为多个字段 (如将 "姓名" 拆分为 "姓" 和 "名")。
- 数据规范化:将数据缩放到特定范围 (如 0-1)。
- 特征工程:为机器学习模型创建新特征。
- 数据排序与分组:为分析做准备。
- 处理模式
- ETL (Extract, Transform, Load):先转换,再加载到数据仓库。
- ELT (Extract, Load, Transform):先加载到数据湖,再利用数据仓库的算力进行转换。
- 工具
- 编程语言:Python (Pandas, NumPy), SQL
- ETL/ELT 工具:Apache Spark, Flink, Airflow, Talend, Informatica
- 查询引擎:Presto, Trino, Spark SQL
一级分支 5:数据分析
- 目标:探索数据,发现隐藏的模式、趋势和关联。
- 分析方法
- 描述性分析
- 目标:回答“发生了什么?”
- 技术:数据聚合、计算指标 (平均值、总和、计数)。
- 工具:BI 报表、数据看板。
- 诊断性分析
- 目标:回答“为什么会发生?”
- 技术:下钻、关联分析、根本原因分析。
- 预测性分析
- 目标:回答“未来会发生什么?”
- 技术:机器学习、回归分析、时间序列预测。
- 指导性分析
- 目标:回答“我们应该做什么?”
- 技术:优化算法、模拟仿真、决策树。
- 描述性分析
- 分析技术
- 统计分析
- 数据挖掘
- 机器学习
- 工具
- BI 工具:Tableau, Power BI, Superset, Metabase
- 编程语言:Python (Pandas, Scikit-learn, Matplotlib), R (dplyr, ggplot2)
- 交互式分析:Jupyter Notebook, JupyterLab
一级分支 6:数据可视化
- 目标:将分析结果以图形化方式呈现,使信息更易于理解和传播。
- 可视化原则
- 清晰:准确传达信息,避免误导。
- 简洁:去除不必要的元素。
- 美观:使用合适的颜色和布局。
- 图表类型
- 比较类:柱状图、条形图、折线图、散点图。
- 分布类:直方图、箱线图、密度图。
- 构成类:饼图、环形图、堆叠柱状图。
- 关系类:散点图、热力图、关系网络图。
- 地图: choropleth map (分级统计图)。
- 工具
- BI 工具:Tableau, Power BI, FineBI
- 编程库:Python (Matplotlib, Seaborn, Plotly), JavaScript (D3.js, ECharts, AntV)
- 在线平台:Flourish, Datawrapper
一级分支 7:数据治理与管理
- 目标:确保数据在整个生命周期中的质量、安全、合规和可用性。
- 核心领域
- 数据质量
- 定义质量标准 (准确性、完整性、一致性、及时性)。
- 建立监控和度量体系。
- 数据安全
- 访问控制:身份认证与授权。
- 数据加密:传输中和静态数据加密。
- 数据脱敏:保护个人隐私信息。
- 元数据管理
- 业务元数据:业务术语表、数据所有者。
- 技术元数据:数据结构、ETL 脚本、数据血缘。
- 操作元数据:数据访问日志、任务运行状态。
- 主数据管理
管理核心业务实体 (如客户、产品) 的单一可信版本。
- 数据血缘
追踪数据从源头到最终消费的完整链路,用于影响分析和故障排查。
- 数据质量
- 工具与框架
- 数据目录:Amundsen, DataHub, Collibra, Alation
- 数据质量工具:Great Expectations, Soda Core
- 数据血缘工具:Apache Atlas, Marquez
一级分支 8:应用与价值
- 目标:将处理后的数据转化为商业洞察和智能决策。
- 应用场景
- 商业智能:生成报表、KPI 监控、绩效分析。
- 机器学习/AI:训练模型、预测分析、智能推荐、自然语言处理。
- 个性化服务:推荐系统、精准营销、用户体验优化。
- 运营优化:供应链管理、生产流程优化、风险控制。
- 战略决策:市场趋势分析、新业务机会探索。
- 价值体现
- 提升效率
- 增加收入
- 降低成本
- 改善客户体验
- 创造新的商业模式
一级分支 9:技术栈与工具
- 目标:支撑数据处理流程的技术和软件集合。
- 编程语言
- Python:数据科学事实标准,库生态丰富。
- SQL:数据查询和处理的通用语言。
- R:统计分析和可视化。
- Scala/Java:大规模数据处理 (Spark)。
- 大数据框架
- 批处理:Apache Spark, Hadoop MapReduce
- 流处理:Apache Flink, Spark Streaming, Kafka Streams
- 统一引擎:Spark, Flink
- 云服务
- AWS: S3, Redshift, EMR, Glue, Athena
- Azure: ADLS, Synapse Analytics, Databricks
- GCP: BigQuery, Dataproc, Dataflow
- 工作流调度
- Airflow, Dagster, Luigi, Oozie
一级分支 10:挑战与趋势
- 挑战
- 数据量巨大:海量数据的存储和计算压力。
- 数据质量差:“垃圾进,垃圾出”。
- 数据孤岛:数据分散在不同系统中,难以整合。
- 实时性要求高:低延迟处理和分析需求。
- 数据安全与隐私:法规合规 (如 GDPR) 和数据泄露风险。
- 人才稀缺:复合型数据人才难求。
- 趋势
- 云原生数据架构:数据处理全面上云。
- 数据湖仓一体:融合数据湖的灵活性和数据仓库的管理能力。
- AI 与数据融合:AI 自动化数据准备和特征工程。
- 实时与流处理普及:从批处理向流处理演进。
- 数据民主化:让更多非技术人员能够使用数据。
- 可观测性:从数据处理扩展到系统监控和日志分析。
