1.1. 数据整理是一个迭代的过程,涉及处理错误值、异常值、缺失值、估算值、数据不平衡和数据编码
1.1.1. 包括结构化、清洗、丰富和验证数据
1.1.2. 流程中的每一步都隐含了可能“重新整理”数据的新方法,目的是整理出最健壮的数据以提取洞察
1.2. 痛点
1.2.1. 数据用户在探索性分析过程中会接触大量的数据集,因此需要快速发现数据的属性并检测准备工作所需的整理转换
1.2.1.1. 评估数据集属性并确定要应用的整理方式是临时的和手动的
1.2.2. 应用整理转换需要用Python、Perl和R等编程语言编写特殊的脚本,或者使用Microsoft Excel等工具进行烦琐的手工编辑
1.2.2.1. 数据用户需要更简单的编码技能,以高效、可靠和重复的方式大规模地应用转换
1.2.3. 需要在日常工作中可靠地操作这些转换,并主动防止瞬时问题影响数据质量
1.3. 整理是产生洞察的关键一步,它会影响整体的洞察耗时
1.4. 理想情况下,自助式数据整理服务加快了在生产规模上进行可视化、转换、部署和操作的过程
1.5. 数据整理没有通用的解决方案
1.6. 数据用户可以很容易地定义转换,而不需要进行底层编程—转换函数会自动编译到对应的处理框架中,并针对数据规模和转换类型调整到最佳的运行配置
1.7. 数据用户可以为数据集定义质量验证规则,主动防止低质量数据污染已清洗的数据集
1.8. 该服务为数据用户提供了一个交互式的详细可视化展示,允许在细粒度级别对数据进行更深层次的探索和理解
1.8.1. 该服务为广泛的数据用户提供了智能、敏捷的数据整理,以帮助最终提取更准确的洞察
1.9. 原始数据并不总是可信的,也可能无法正确地代表事实,数据整理可以使数据变得有用
1.9.1. 通过构建用于数据整理的自助服务框架,企业可以显著减少洞察耗时
1.9.2. 整理服务通过集成数据可视化、转换和验证来实现流程自动化
2. 路线图2.1. 数据发现
2.1.1. 通常是第一步
2.1.2. 利用元数据目录来理解数据和模式的属性,以及分析探索需要哪些整理转换
2.1.3. 还包括记录匹配—寻找多个数据集之间的关系,即使这些数据集不共享标识符或标识符不可靠
2.2. 数据验证
2.2.1. 数据验证有多个维度,包括验证数据字段的值是否遵守语法约束,比如布尔值为真/假,而不是1/0
2.2.2. 分布式约束验证数据属性的值范围
2.2.3. 交叉属性检查验证跨数据库引用的完整性
2.3. 数据结构化
2.3.1. 数据有各种各样的结构和大小
2.3.1.1. 不同的数据格式可能不符合下游分析的要求
2.3.2. 将邮政编码、州名等特定属性标准化
2.3.3. 机器学习算法通常不使用原始形式的数据,通常需要编码,比如使用独热编码
2.4. 数据清洗
2.4.1. 最常见的形式是删除异常值、缺失值、空值和不平衡数据
2.4.2. 清洗需要数据质量和数据一致性方面的背景知识,即了解各种数据值对最终分析的影响
2.4.3. 清洗还包括删除数据集中记录的重复数据
2.5. 数据丰富
2.5.1. 包括连接其他数据集
2.5.2. 数据丰富还包括从数据集派生新的数据形式
3. 最小化数据整理耗时3.1. 定义需求
3.1.1. 数据整理需要工具来同时支持程序员用户和非程序员用户
3.1.2. 数据科学家通常使用Python pandas和R库等编程框架,而非程序员则依赖于可视化解决方案
3.1.3. 挑战
3.1.3.1. 考虑到多维度和不断增长的规模,可视化的难度较大
3.1.3.1.1. 对于大型数据集来说,实现动态聚合视图等快速链接选择(rapid-linked selection)并非易事
3.1.3.2. 不同类型的可视化适用于不同形式的结构化、半结构化和非结构化数据
3.1.3.3. 可视化工具对推理脏的、不确定的或缺失的数据毫无帮助
3.1.3.3.1. 自动化方法可以帮助识别异常情况,但确定具体错误取决于上下文,需要人为判断
3.1.3.4. 分析人员通常必须手工构建必要的视图来将异常情况置于上下文中,这需要大量的专业知识
3.1.4. 企业在多个方面存在差异:数据组织的现状、生成的洞察对数据质量的敏感度以及数据用户的专业知识
3.1.5. 建立数据整理服务首先要关注哪些任务拖慢了数据管理过程
3.2. 管理数据
3.2.1. 有通用的模式可以实现大规模数据转换,但流行的方法是使用可视化分析工具,这些工具将数据的迭代可视化编辑转化为应用于数据集的整理规则
3.2.2. 关键挑战
3.2.2.1. 大型数据集的可扩展性
3.2.2.2. 自动应用于相似数据集的智能性(减少人工干预)
3.2.2.3. 支持正确性规范、数据质量问题、数据重新格式化以及不同类型数据值之间的转换
3.2.2.4. 从人工输入中学习并利用交互式转换的历史记录进行数据转换过程
3.2.3. 可视化分析是一个活跃的研究领域
3.3. 操作监控
3.3.1. 需要持续监控其正确性和性能SLA
3.3.2. 包括为数据准确性创建模型,将验证作为预定作业运行,扩展整理功能以及调试操作问题
3.3.3. 关键挑战是处理失败、作业重试和优化,以及调试数据问题的模式
4. 实现模式4.1. 探索性数据分析模式
4.1.1. 加快对数据集的理解,以定义整理转换
4.1.2. 探索性数据分析(EDA)模式关注理解和总结数据集,以确定数据所需的数据整理转换
4.1.3. 在开始进行机器学习或仪表盘建模之前,这是至关重要的一步
4.1.4. 组成部分
4.1.4.1. 结构发现,有助于确定数据是否一致和格式是否正确
4.1.4.2. 内容发现,关注数据质量,需要对数据进行格式化、标准化,并及时有效地与现有数据进行集成
4.1.4.3. 关系发现,标识不同数据集之间的连接
4.1.5. 理解数据构成有助于有效地选择预测算法
4.1.6. 数据可视化分析为数据完整性、统计分布、完备性等提供了一个易于阅读的可视化视角
4.1.6.1. Profiler
4.1.6.2. Data Wrangler
4.1.6.3. Trifacta
4.1.6.4. Rapid Miner为分析过程的设计提供了一个直观的图形用户界面,且不需要编程
4.1.7. 机器学习技术越来越多地被应用于搜索和学习用于任何特定问题的数据整理转换
4.2. 分析转换模式
4.2.1. 在生产规模上实现转换
4.2.2. 该模式侧重于在生产规模上对数据应用整理转换
4.2.3. 常见的两种模式是可视化分析和拖拽式ETL定义框架
4.2.3.1. 主要用于数据整理
4.2.3.2. 其他的转换模式是通用的
4.2.4. 可视化分析允许通过交互式系统来整理数据,这些系统集成了数据可视化、转换和验证等功能
4.2.4.1. 该模式显著减少了规范化时间,并促进使用健壮的、可审计的转换,而不是手动编辑
4.2.5. 工作原理
4.2.5.1. 数据用户通过数据可视化交互来理解数据的属性
4.2.5.1.1. 转换函数可以在数据挖掘过程中定义
4.2.5.2. 可视化分析模式自动将转换函数映射到更广泛的数据集
4.2.5.2.1. 根据用户输入,该工具学习可跨数据集应用的模式
4.2.5.3. 转换会自动转换为可重复使用的ETL流程,这些流程按照调度计划持续运行,并定期进行数据加载
4.3. 自动化质量实施模式
4.3.1. 监控数据质量的跟踪和调试