邵楠:数据湖存储的现状和未来趋势

news2024/11/24 11:56:26

近几年数据湖的概念非常火热,但是数据湖的定义并不统一,我们先看下数据湖的相关定义。

Wikipedia对数据湖的定义:

数据湖是指使用大型二进制对象或文件这样的自然格式储存数据的系统。它通常把所有的企业数据统一存储,既包括源系统中的原始副本,也包括转换后的数据,比如那些用于报表, 可视化, 数据分析和机器学习的数据。数据湖可以包括关系数据库的结构化数据(行与列)、半结构化的数据(CSV,日志,XML, JSON),非结构化数据 (电子邮件、文件、PDF)和 二进制数据(图像、音频、视频)。储存数据湖的方式包括 Apache Hadoop分布式文件系统, Azure 数据湖或亚马逊云 Lake Formation云存储服务,以及诸如 Alluxio 虚拟数据湖之类的解决方案。数据沼泽是一个劣化的数据湖,用户无法访问,或是没什么价值。

AWS的定义相对简洁:

数据湖是一个集中式存储库,允许您以任意规模存储所有结构化和非结构化数据。您可以按原样存储数据(无需先对数据进行结构化处理),并运行不同类型的分析 – 从控制面板和可视化到大数据处理、实时分析和机器学习,以指导做出更好的决策。

Azure等其他云厂商也有各自的定义,本文不再赘述。

但无论数据湖的定义如何不同,数据湖的本质其实都包含如下四部分:

  1. 统一的存储系统

  2. 存储原始数据

  3. 丰富的计算模型/范式

  4. 数据湖与上云无关

从上述四个标准判断,开源大数据的Hadoop HDFS存储系统就是一个标准的数据湖架构,具备统一的原始数据存储架构。而近期被广泛谈到的数据湖,其实是一个狭义的概念,特指“基于云上托管存储系统的数据湖系统,架构上采用存储计算分离的体系”。例如基于AWS S3系统或者阿里云OSS系统构建的数据湖。 

下图是数据湖技术架构的演进过程,整体上可分为三个阶段:

图片

▲图3 数据湖技术架构演进

阶段一:自建开源Hadoop数据湖架构,原始数据统一存放在HDFS系统上,引擎以Hadoop和Spark开源生态为主,存储和计算一体。缺点是需要企业自己运维和管理整套集群,成本高且集群稳定性差。

阶段二:云上托管Hadoop数据湖架构(即EMR开源数据湖),底层物理服务器和开源软件版本由云厂商提供和管理,数据仍统一存放在HDFS系统上,引擎以Hadoop和Spark开源生态为主。

这个架构通过云上 IaaS 层提升了机器层面的弹性和稳定性,使企业的整体运维成本有所下降,但企业仍然需要对HDFS系统以及服务运行状态进行管理和治理,即应用层的运维工作。同时因为存储和计算耦合在一起,稳定性不是最优,两种资源无法独立扩展,使用成本也不是最优。

阶段三:云上数据湖架构,即云上纯托管的存储系统逐步取代HDFS,成为数据湖的存储基础设施,并且引擎丰富度也不断扩展。除了Hadoop和Spark的生态引擎之外,各云厂商还发展出面向数据湖的引擎产品。

如分析类的数据湖引擎有AWS Athena和华为DLI,AI类的有AWS Sagemaker。这个架构仍然保持了一个存储和多个引擎的特性,所以统一元数据服务至关重要,如AWS推出了Glue,阿里云EMR近期也即将发布数据湖统一元数据服务。

该架构相对于原生HDFS的数据湖架构的优势在于:

  • 帮助用户摆脱原生HDFS系统运维困难的问题。HDFS系统运维有两个困难:1)存储系统相比计算引擎更高的稳定性要求和更高的运维风险 2)与计算混布在一起,带来的扩展弹性问题。存储计算分离架构帮助用户解耦存储,并交由云厂商统一运维管理,解决了稳定性和运维问题。

  • 分离后的存储系统可以独立扩展,不再需要与计算耦合,可降低整体成本

  • 当用户采用数据湖架构之后,客观上也帮助客户完成了存储统一化(解决多个HDFS数据孤岛的问题)

下图是阿里云EMR数据湖架构图,它是基于开源生态的大数据平台,既支持HDFS的开源数据湖,也支持OSS的云上数据湖。

图片

▲图4 阿里云EMR数据湖架构

企业使用数据湖技术构建大数据平台,主要包括数据接入、数据存储、计算和分析、数据管理、权限控制等,下图是Gartner定义的一个参考架构。当前数据湖的技术因其架构的灵活性和开放性,在性能效率、安全控制以及数据治理上并不十分成熟,在面向企业级生产要求时还存在很大挑战。

数据湖(Data Lake)以集中式存储各种类型数据,包括:结构化、半结构化、非结构化数据。数据湖无需事先定义Schema,数据可以按照原始形态直接存储,覆盖多种类型的数据输入源。数据湖无缝对接多种计算分析平台,对Hadoop生态支持良好,存储在数据湖中的数据可以直接对其进行数据分析、处理、查询,通过对数据深入挖掘与分析,洞察数据中蕴含的价值。

• 一份存储、多种引擎:各种类型的数据用集中方式统一存储在OSS,解决数据孤岛,避免多份数据分散在多种不同的系统,无缝对接多种计算引擎,对Hadoop生态体系有良好支持;

• 数据无需处理、直接存储:支持结构化、半结构化、非结构化多种类型数据,数据可以按照原始产生的形态直接存储,在需要分析阶段,再通过数据引擎进行处理,对接多种数据输入源,提供便捷的数据接入和数据消费通道

• 计算与存储解耦合:提供客户更灵活系统架构设计,让计算、存储资源具备更好的扩展性,极大降低运维管理难度、优化TCO。

下载链接:数据湖存储的现状和趋势

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1936630.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

生产力工具|Endnote 21 Macwin版本安装

一、软件下载: (一)mac版本 Endnote 21版本下载:点击下载 Endnote 20版本下载:点击下载 Endnote X9版本下载:点击下载 (二)Endnote 20 Win版本 第一步:安装好官网软…

分享:一次性查找多个PDF文件,如何根据txt文本列出的文件名批量查找指定文件夹里的文件,并复制到新的文件夹,不需要写任何代码,点点鼠标批量处理一次性搞定

简介: 该文介绍了一个批量查找PDF文件(不限于找PDF)的工具,用于在多级文件夹中快速查找并复制特定文件。用户可以加载PDF库,输入文件名列表,设置操作参数(如保存路径、复制或删除)及…

树莓派4B从装系统raspbian到vscode远程编程(python)

1、写在前面 前面用的一直是Ubuntu系统,但是遇到一个奇葩的问题: 北通手柄在终端可以正常使用,接收到数据 但在python程序中使用pygame库初始化时总是报错:Invalid device number,检测不到手柄 经过n次重装系统&am…

【.NET全栈】ASP.NET开发Web应用——计算器

文章目录 一、简单计算器二、复杂计算器 一、简单计算器 新建Web应用项目&#xff0c;窗体页面 窗体设计代码&#xff1a; <% Page Language"C#" AutoEventWireup"true" CodeBehind"Default.aspx.cs" Inherits"AdoDemo.Default"…

打造智慧图书馆:AI视频技术助力图书馆安全与秩序管理

一、背景需求 随着信息技术的飞速发展&#xff0c;图书馆作为重要的知识传播场所&#xff0c;其安全管理也面临着新的挑战。为了确保图书馆内书籍的安全、维护读者的阅读环境以及应对突发事件&#xff0c;TSINGSEE青犀旭帆科技基于EasyCVR视频监控汇聚平台技术与AI视频智能分析…

《0基础》学习Python——第十九讲__爬虫\<2>

一、用get请求爬取一般网页 首先由上节课我们可以找到URL、请求方式、User-Agent以及content-type 即&#xff1a;在所在浏览器页面按下F12键&#xff0c;之后点击网路-刷新&#xff0c;找到第一条双击打开标头即可查看上述所有内容&#xff0c;将上述URL、User-Agent所对应的…

WGS84经纬度坐标 GCJ02火星坐标 BD09百度坐标互相转换

WGS84经纬度坐标 GCJ02火星坐标 BD09百度坐标互相转换 背景&#xff1a;uniapp做的微信小程序&#xff0c;使用到了相机拍照并获取位置坐标信息&#xff1b;在腾讯地图上展示坐标点位置信息&#xff1b; 由于业务需要我们的PC端用的不是腾讯地图&#xff0c;需要使用WGS84坐标或…

目标检测 | YOLO v1、YOLO v2、YOLO v3与YOLO v3 SPP理论讲解

☀️教程&#xff1a;霹雳吧啦Wz ☀️链接&#xff1a;https://www.bilibili.com/video/BV1yi4y1g7ro?p1&vd_sourcec7e390079ff3e10b79e23fb333bea49d 一、YOLO v1 针对于two-stage目标检测算法普遍存在的运算速度慢的缺点&#xff0c;YOLO创造性的提出了one-stage目标检测…

Jupyter notebook如何快速的插入一张图片?如何控制插入图片的缩放、靠左展示(ChatGPT)

在Jupyter Notebook中&#xff0c;你可以使用Markdown语法快速插入图片&#xff0c;并且可以通过HTML标签来控制图片的展示方式和缩放。 注意&#xff1a;以下所有操作都有一个前提&#xff0c;即选择Cell-CellType-Markdown 1. 快速插入图片 要在Jupyter Notebook中插入图…

【Langchain大语言模型开发教程】模型、提示和解析

&#x1f517; LangChain for LLM Application Development - DeepLearning.AI 学习目标 1、使用Langchain实例化一个LLM的接口 2、 使用Langchain的模板功能&#xff0c;将需要改动的部分抽象成变量&#xff0c;在具体的情况下替换成需要的内容&#xff0c;来达到模板复用效…

JavaEE (1)

web开发概述 所谓web开发,指的是从网页中向后端程序发送请求,与后端程序进行 交互. 流程图如下 Web服务器是指驻留于因特网上某种类型计算机的程序. 可以向浏览器等Web客户端提供文档&#xff0c;也可以放置网站文件&#xff0c;让全世界浏览&#xff1b; 它是一个容器&…

新时代:让中药煎制自动化、信息化

新时代&#xff1a;让中药煎制自动化、信息化 现代医疗领域&#xff0c;科技创新始终在为传统医疗服务带来革命性的改进。某行业医疗巨头&#xff0c;一家拥有国家专利100多项的创新型企业&#xff0c;不仅推出了多款中药煎药包装设备&#xff0c;还自主研发了一系列医疗健康体…

tailwindcss——vscode好用的插件

tailwindcss极大的减少了css的书写&#xff0c;提升了开发效率。这个插件也特别好用。 Tailwind CSS IntelliSense

【电子数据取证】关于CoblatStrike的流量特征取证分析

文章关键词&#xff1a;电子数据取证、流量分析、流量取证 一、前言 近期&#xff0c;网络安全团队在对公司内部网络进行安全检查时发现&#xff0c;有五台电脑出现了不明的网络流量。这些电脑并没有执行任何明显的操作&#xff0c;但是网络流量却显示它们正在向外传输数据。…

如何使用 Java 框架监控和反馈持续交付状态

如何使用 Java 框架监控和反馈持续交付状态 在持续交付 (CD) 流程中&#xff0c;及时监控和反馈是至关重要的。通过实时获取有关构建、部署和测试的反馈&#xff0c;团队可以迅速发现并解决问题&#xff0c;从而改善软件质量和缩短交付周期。 Java 框架 Java 生态系统提供了…

django学习入门系列之第四点《写JavaScript的位置选择》

文章目录 往期回顾 位置1&#xff1a;head标签的尾部位置2&#xff1a;body标签的尾部 一般推荐放位置二&#xff08;无论是文件导入还是直接写&#xff09; 往期回顾 1.【快速开发网站】 2.【浏览器能识别的标签1】 3.【浏览器能识别的标签2】 4.【浏览器能识别的标签3】 5…

Linux云计算 |【第一阶段】SERVICES-DAY4

主要内容&#xff1a; DHCP概述、PXE批量装机、配置PXE引导、Kickstart自动应答、Cobbler装机平台 一、DHCP服务概述及原理 DHCP动态主机配置协议&#xff08;Dynamic Host Configuration Protocol&#xff09;&#xff0c;由IETF&#xff08;Internet网络工程师任务小组&…

最新!CSSCI(2023-2024)期刊目录公布!

【SciencePub学术】据鲁迅美术学院7月16日消息&#xff0c;近日&#xff0c;南京大学中国社会科学研究评价中心公布了中文社会科学引文索引&#xff08;CSSCI&#xff09;&#xff08;2023—2024&#xff09;数据库最新入选目录。 C刊一般指CSSCI来源期刊&#xff0c;即南大核心…

C++ | Leetcode C++题解之第263题丑数

题目&#xff1a; 题解&#xff1a; class Solution { public:bool isUgly(int n) {if (n < 0) {return false;}vector<int> factors {2, 3, 5};for (int factor : factors) {while (n % factor 0) {n / factor;}}return n 1;} };

GPT-4o mini 比gpt-3.5更便宜(2024年7月18日推出)

https://openai.com/index/gpt-4o-mini-advancing-cost-efficient-intelligence/ 人工智能学习网站 https://chat.xutongbao.top