数据湖
了解什么是数据湖,它们的特性、优势以及在 AI/ML 中的作用。 了解它们如何改变大数据管理和分析。
数据湖是一个集中式存储库,允许您存储任何规模的所有结构化、半结构化和非结构化数据。与以预定义的、经过处理的格式存储数据的传统数据仓库不同,数据湖以其原始格式保存大量原始数据,直到需要时才使用。对于人工智能 (AI) 和机器学习 (ML),这种架构非常强大,因为它为数据科学家提供了灵活、海量的原始数据池,非常适合训练复杂模型、执行探索性分析和发现新模式,而不会受到初始模式的约束。
数据湖在人工智能和机器学习中如何运作
在一个典型的人工智能工作流程中,数据湖是所有潜在数据源的主要信息来源。该过程始于数据摄取,即将来自各种来源(如用户日志、社交媒体 feed、物联网传感器读数、图像和视频)的原始数据加载到湖中。这些数据以其原始、未修改的状态存储。当一个项目开始时,例如训练一个新的计算机视觉 (CV)模型,工程师可以访问数据湖以提取相关的数据子集。这种“读取时定模式”的方法意味着在数据分析和数据预处理阶段应用结构,而不是在摄取时应用。这种灵活性对于迭代式 ML 开发至关重要,因为数据需求会随着模型的演进而变化。主要的云计算提供商,如 AWS 和 Google Cloud,提供强大的服务来构建和管理数据湖。
真实世界的AI/ML应用
数据湖是开发依赖于多样化和大量数据集的大规模AI解决方案的基础。
- 自动驾驶汽车开发: 一支自动驾驶汽车队每天生成数 TB 的原始传感器数据,包括 LiDAR 点云、高分辨率视频和雷达读数。这些大数据被流式传输到数据湖中。工程师和研究人员可以稍后查询这个庞大的存储库,以找到罕见的或具有挑战性的场景——例如,行人意外地在夜间穿过道路——用于模型训练和模拟。这使得能够持续改进用于物体检测等任务的感知模型,并确保它们对边缘情况具有鲁棒性。诸如 Databricks 之类的平台通常用于管理这些工作流程。
- 医学图像分析: 医院和研究机构从不同机器以不同格式收集医学图像(MRI、X 射线、CT 扫描)。通过将这些数据集中在数据湖中,他们为研究和开发创建了一个丰富多样的数据集。数据科学家可以访问这些原始成像数据来开发诊断 AI 模型,例如,通过在像 脑肿瘤数据集 这样的集合上训练 YOLO 模型。存储原始数据保留了在预处理格式中可能丢失的关键细节,从而支持更准确的医疗保健人工智能解决方案。
与相关概念的区别
区分数据湖和其他数据存储范式非常重要。
- 数据仓库 vs. 数据湖: 主要区别在于数据结构和用途。数据仓库 存储为特定目的(通常是商业分析)而处理的结构化、过滤后的数据。相比之下,数据湖存储所有类型的原始、未过滤的数据(结构化、半结构化和非结构化),而没有预定义的模式。这使得数据湖更适合 机器学习 的探索性。
- 数据库 vs. 数据湖: 传统的数据库,尤其是像 SQL 这样的关系数据库,要求数据在写入之前符合严格的、预定义的模式。这被称为“写入时模式”。数据湖使用“读取时模式”方法,提供了处理 AI 中常见的各种数据格式(如图像、文本和传感器日志)所需的灵活性。虽然数据库针对快速事务查询进行了优化,但数据湖是为使用 Apache Spark 等工具进行大规模分析处理而构建的。
- 数据挖掘 vs. 数据湖: 数据湖是一个存储仓库。另一方面,数据挖掘 是从大型数据集中发现模式和见解的过程。数据挖掘技术应用于存储在数据湖中的数据。
益处与挑战
益处:
- 灵活性: 存储来自任何来源的任何数据类型,无需事先进行结构化。
- 可扩展性: 使用Apache Hadoop等分布式存储系统,轻松处理从TB到PB的海量数据。
- 成本效益: 利用低成本的商品存储,使其能够经济地保留大量数据。
- 数据民主化:使原始数据可供各种团队(数据科学家、分析师、ML 工程师)用于多种用例,从报告到深度学习。
- 面向未来: 无限期地保存原始数据,以便将来可以使用当今不存在的新工具和技术进行分析。
挑战:
- 数据治理: 确保数据质量、沿袭和访问控制可能很复杂。
- 安全性: 保护敏感原始数据需要强大的数据安全和数据隐私措施。
- 数据沼泽风险: 如果没有适当的管理、元数据和编目,数据湖可能会变得杂乱无章且难以有效使用,从而变成“数据沼泽”,这是领先的数据管理公司解释的一个概念。
- 复杂性: 需要专业的管理和分析技能。有效的 MLOps 实践 对于管理从数据摄取到模型部署的生命周期至关重要。