写点什么

你真的需要数据湖吗?

  • 2019-12-05
  • 本文字数:1972 字

    阅读完需:约 6 分钟

你真的需要数据湖吗?

数据湖已经成为许多大数据项目的基石,就因为它们在处理高速生成的大量数据(如 web、传感器或应用程序活动数据)时,提供了更容易、更灵活的选择。由于这类数据源越来越普遍,大家对数据湖的兴趣也在快速增长。然而,数据湖真的适合你吗?本文将带你一起来看四个指标,帮助你理解是该加入数据湖的潮流,还是应该坚持传统的数据仓库。


数据湖已经成为许多大数据项目的基石,就因为它们在处理高速生成的大量数据(如 web、传感器或应用程序活动数据)时,提供了更容易、更灵活的选择。由于这类数据源越来越普遍,大家对数据湖的兴趣也在快速增长。


然而,与任何新兴技术一样,不存在放之四海而皆准的解决方案:数据湖可能非常适合某些场景,但在其他情况下,坚持使用经实践检验过的数据库架构将是更好的解决方案。在本文中,我们将研究四个指标,它们应该有助于你理解是应该加入数据湖的潮流,还是应该坚持传统的数据仓库。但首先,让我们通过定义术语“数据湖”来设定讨论的范畴。

数据湖:基本定义

数据湖是一种通常被定义为大数据架构的方法,它侧重于将非结构化或半结构化数据以其原始格式存储在一个服务于多个分析用例或服务的存储库中。在此,存储和计算资源是解耦的,因此数据驻留在廉价的对象存储中,如 Hadoop on-premise 或 Amazon S3,而各种工具和服务(如Apache PrestoElasticsearch和 Amazon Athena)可以用来查询这些数据。


这与传统的数据库或数据仓库架构不同,在传统的架构中,计算和存储是耦合的,为了实施一系列模式,数据是根据摄入进行结构化的。数据湖使采用“现在存储,以后分析”的方法变得更容易,因为几乎不需要付出什么努力即可将数据输入到这个湖中;然而,在分析数据时,可能会出现一些传统的数据准备挑战


现在定义有了,接下来的问题是,你的组织需要数据湖吗?让我们从这 5 个关键指标开始。

1. 数据的结构是怎样的?

数据湖非常适合存储大量的非结构化和半结构化数据。将这类数据存储在数据库中需要做大量的数据准备,因为数据库是围绕结构化表构建的,而不是 JSON / XML 格式的原始事件。


如果你的大部分数据是由结构化的表格组成的——例如,预先处理过的 CRM 记录或财务资产负债表——那么坚持使用数据库会更容易。但是,如果你正在处理大量基于事件的数据,比如服务器日志或点击流,那么以原始形式存储这些数据并根据你的用例构建特定的 ETL 流可能会更容易一些。

2. 你的 ETL 过程有多复杂?

ETL (extract-transform-load,抽取-转换-加载)通常是实际使用数据的前提条件;但是,在处理大数据或流数据时,由于使用 Spark/Hadoop 等代码密集型框架编写 ETL 作业的复杂性,它会成为一个主要的障碍。


为了最小化花费在 ETL 上的资源数量,请尝试确定主要瓶颈发生在哪里。如果你在尝试将半结构化和非结构化数据“调整适应”到关系数据库方面遇到了很大的困难,那么现在是时候考虑转换到数据湖了。然而,创建从湖中向你将用于分析、机器学习的各种目标服务的 ETL 流仍然可能遇到很多挑战。在这种情况下,你可能想要使用一个数据湖 ETL 工具来自动化这些过程。

3.数据保持是问题吗?

由于数据库将存储与计算结合在一起,在数据库中存储非常大的数据量就变得非常昂贵。这就导致了很多数据保留方面的问题——为了控制成本,要么删除数据中的某些字段,要么限制保存历史数据的时间。


如果你的组织在不断努力寻找为了分析而保持数据和为了控制成本而删除数据之间的平衡点,数据湖解决方案可能是为了——数据湖架构建立在廉价的对象存储之上,允许你持有“嗅”到的 tb 甚至海量历史数据而不必花费多少成本。

4. 你的用例是可预测的还是实验性的?

你应该问的最后一个问题是,你打算如何处理这些数据。如果你只是试图建立一个报告(或一组报告,或仪表板),基本上是针对定期更新的表运行一组预先确定的查询,那么数据仓库可能会是一个很好的解决方案,你可以使用 SQL 和可用的数据仓库和业务智能工具简单地实现此类解决方案。


然而,对于更多的实验性用例(比如机器学习和预测分析),提前知道你需要什么数据以及你想要如何查询它是比较困难的。在这些情况下,数据仓库的效率可能非常低,因为预定义的模式将限制你研究数据的能力。在这些情况下,数据湖可能是更好的选择。

结论:数据湖适合你吗?

以“视情况而定”结尾的文章总是让人感觉像是在逃避,但事实是,大多数技术问题并没有一个唯一解。当你的数据达到一定的规模和复杂性时,数据湖无疑是最佳选择。你的组织在处于这些的情况吗?你可以用以上四个问题来回答这个问题。


作者介绍:


Eran Levy 是Upsolver的市场总监。Upsolver 是云原生平台,你可以使用一个简单的、可视化的 UI 和 SQL 来配置它。世界上大多数创新型的公司都使用 Upsolver 来自动化所有数据湖操作:摄取、存储管理、模式管理和 ETL 流(包括聚合和连接)。


原文链接:


Do You Actually Need a Data Lake?


2019-12-05 09:043743
用户头像
蔡芳芳 InfoQ主编

发布了 802 篇内容, 共 568.3 次阅读, 收获喜欢 2796 次。

关注

评论

发布
暂无评论
发现更多内容

计划建设数据中台前,这些问题要提前考虑

Aloudata

数据中台 数据仓库 数据虚拟化 noetl

如何让数据清洗工作变得简单

RestCloud

数据同步 ETL 数据清洗 数据集成平台

1017关键词 | Nvidia模型超越GPT-4 | 全模态框架发布 | ChatGPT访问量超必应

言寡意多

专业对比:Project项目管理系统国内外8款热门工具

爱吃小舅的鱼

Databend 产品月报(2024年9月)

Databend

IT行业还有未来吗?

程序员高级码农

程序员 互联网 计算机 #编程

快速开发体育直播平台教程,源码助你一天内上线运营!

软件开发-梦幻运营部

低代码突破:工业领域应用的潜力与难题解析!

不在线第一只蜗牛

低代码

理解 Spring Boot

我爱娃哈哈😍

微服务 spring-boot

Spring Boot 的执行器是什么?

我爱娃哈哈😍

微服务 执行器 spring-boot

日志分析是什么?如何进行日志分析?

ServiceDesk_Plus

日志分析 日志采集 日志处理

有哪些常见的云桌面使用误区?

青椒云云电脑

云桌面 云桌面厂家 云桌面方案

Js数组&高阶函数

不在线第一只蜗牛

JavaScript 前端

2023开年力作!《流程挖掘白皮书》重磅发布

望繁信科技

数字化转型 流程挖掘 流程资产 流程智能 望繁信科技

干货分享|工作8年,我的职场成长笔记

京东零售技术

技术成长

复旦大学全球供应链研究中心揭牌,合合信息共话大数据赋能

合合技术团队

大数据‘’

全球CDN加速的优势与作用

HUODUNYUN

CDN CDN加速 CDN技术 CDN网络加速 全球CDN

实操上手TinyEngine低代码引擎插件化开发

OpenTiny社区

开源 前端 插件化 OpenTiny 低代码引擎

淘宝天猫商品评论数据接口 —— 电商决策的宝贵资源

tbapi

淘宝API接口 淘宝商品评论数据接口 天猫商品评论数据接口

澜舟科技新突破:大模型实现“持续学习”,应用成本大幅降低

澜舟孟子开源社区

人工智能 持续学习 企业服务

如何利用海外服务器推广国际业务?

Ogcloud

云服务器 服务器租用 海外服务器 海外高防服务器 海外云服务器

软件测试学习笔记丨宠物商店-接口自动化测试实战

测试人

软件测试

顶级云桌面套餐:远程办公的终极指南

青椒云云电脑

云桌面 云桌面方案 云桌面系统

什么样的云桌面套餐适合按需计费的用户?

青椒云云电脑

云桌面

【直播预约】下周四大咖云集,不见不散!运维生态直播之“可观测技术实践”等你来~

乘云数字DataBuff

可观测性 zabbix oceanbase 应用性能监控 一体化可观测平台Databuff

怎么提升国外服务器访问速度?实用技巧分享

Ogcloud

网络加速 国外服务器 服务器加速

一文搞懂应用架构的3个核心概念

快乐非自愿限量之名

架构 开发

2024年最佳云桌面服务:为远程工作者量身定制

青椒云云电脑

云桌面 云桌面厂家

C# 并发控制框架:单线程环境下实现每秒百万级调度

快乐非自愿限量之名

C# 前端框架

当三位神话人物,穿越到智能视频新视界……

白洞计划

AI 音视频

5大提升工作效率的桌面软件,深度评测!

秃头小帅oi

你真的需要数据湖吗?_大数据_Eran Levy_InfoQ精选文章