Hadoop 大数据系统在文件存储 HDFS 版上的最佳实践

本文涉及的产品
对象存储 OSS,20GB 3个月
云备份 Cloud Backup,100GB 3个月
文件存储 NAS,50GB 3个月
简介: 介绍Hadoop 大数据系统在文件存储 HDFS 版上的最佳实践

在当前的数字经济时代,数据被列为跟土地,资本等并列的新生产要素,数据的存储和处理被众多行业所深度依赖。Hadoop经过多年的发展,已经成为了事实上的开源大数据标准解决方案,被众多公司采纳和使用;而且随着技术的不断迭代更新,Hadoop生态也已经从最初狭义的HDFS,MapReduce和YARN三大服务组件,逐渐发展出了Spark,Flink等新的处理框架,成长为功能更加完善和丰富的广义Hadoop生态。同时以阿里云和AWS为代表的的云服务平台,也提供了支持广义Hadoop生态系统的编排产品EMR,进一步推动了大数据生态的发展。

虽然Hadoop生态中的计算框架不断演进,但都继续选择HDFS作为底层的分布式存储系统,HDFS也因此成长为开源大数据场景的统一分布式存储系统,是自建大数据存储的首选系统:



随着大数据领域的深入发展,在HDFS之上直接生长着丰富的基础计算引擎,KV存储引擎,多种OLAP引擎,以及不同领域的机器学习引擎;另外还有多种数据导入系统,方便不同来源的数据进入HDFS:负责结构化数据导入的Sqoop,负责日志数据导入的Flume,负责消息数据导入的Kafka。这些引擎和系统在数据处理的不同阶段发挥各自的特有的作用,HDFS作为统一的中转站来存储和交换数据,共同来完成数据全生命周期的处理。


HDFS经过多年的发展已经相对成熟,但由于分布式存储系统自身的复杂性,在应对日渐重要且复杂的大数据处理需求的时候,自建HDFS集群面临诸多痛点:

  1. 成本高
  1. 硬件成本高
  1. 集群起建成本高:为了保证数据安全性,即使初始需要较少的存储空间,HDFS集群也需要保证3台机器以上的规模。
  2. 单次扩容步长大:每次都需要以整物理机的粒度进行扩容,新增存储需求很小的情况下也不例外。
  3. 容量下降后无法自动缩容:为了应对容量峰值扩容的机器,在容量下降后也无法自动缩容。
  1. 存算分离难,存储和计算资源必须同步扩容
  1. 链接和线程是Stream独占,难以支撑存算分离后的高并发
  2. Shuffle数据依赖本地存储,存储和计算无法完全分离
  1. 运维难
  1. 运维复杂
  1. 硬件运维:需要解决硬件机型设计,预算采购,集群扩缩容,硬件故障,机器过保等诸多问题。
  2. 软件运维:需要面对访问失败/访问慢,社区版本引入与测试,软件版本线上升级等软件难题。
  1. 运维人才要求高:系统复杂度高,需要专业的运维人才。
  2. 稳定性难以保证:没有SLA保障,复杂的开源存储系统对监控报警和故障响应要求高,容易导致故障。
  1. 性能差
  1. 隔离性差:多业务公用集群的情况下无法做到性能隔离,相互干扰影响性能。
  2. 延迟高:软件栈复杂,难以发挥高速介质 US级别的延迟优势,延迟敏感性业务难以落地。
  3. 无异步接口:没有异步接口,存储访问并发度受限于线程资源,难以提升。


考虑到HDFS在大数据领域的发展现状,阿里云的文件存储HDFS版提供了一个云上统一的大数据存储方案:既能够兼容HDFS,保证原有的大数据处理系统可以无缝迁移,继续正常运转;同时又能够解决掉自建HDFS的痛点,上层业务更专注于大数据处理系统本身的演进,更好的解决业务问题。


为了方便Hadoop生态系统平滑的迁移到文件存储HDFS版,会陆续推出常用的大数据系统在文件存储HDFS版的最佳实践。

  • 在文件存储HDFS版上使用 Apache Spark
  • 文件存储HDFS版和对象存储OSS双向数据迁移
  • 在文件存储HDFS版上使用 Apache Flink
  • 在文件存储HDFS版上使用 Apache HBase
  • 在文件存储HDFS版上使用 Presto
  • 在文件存储HDFS版上使用 Apache Tez
  • 使用 Fuse-DFS 挂载文件存储HDFS版
  • 文件存储HDFS版和数据库MySQL双向数据迁移
  • 迁移开源HDFS数据到文件存储HDFS版
  • 在文件存储HDFS版上使用 CDH6
  • 在文件存储HDFS版上使用 TensorFlow

  • 了解更多关于文件存储HDFS版的产品信息,欢迎访问https://www.aliyun.com/product/alidfs

    如果您对文件存储HDFS版有任何问题,欢迎钉钉扫描以下二维码加入文件存储HDFS版技术交流群。

    相关实践学习
    基于MaxCompute的热门话题分析
    本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
    SaaS 模式云数据仓库必修课
    本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
    目录
    相关文章
    |
    2月前
    |
    分布式计算 Kubernetes Hadoop
    大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
    大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
    195 6
    |
    2月前
    |
    分布式计算 资源调度 Hadoop
    大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
    大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
    83 2
    |
    2月前
    |
    SQL 分布式计算 监控
    Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
    Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
    72 3
    |
    2月前
    |
    消息中间件 分布式计算 关系型数据库
    大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
    大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
    62 0
    |
    7天前
    |
    存储 分布式计算 大数据
    Flume+Hadoop:打造你的大数据处理流水线
    本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
    35 4
    |
    1月前
    |
    存储 分布式计算 Hadoop
    数据湖技术:Hadoop与Spark在大数据处理中的协同作用
    【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
    115 2
    |
    1月前
    |
    存储 分布式计算 Hadoop
    数据湖技术:Hadoop与Spark在大数据处理中的协同作用
    【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
    85 1
    |
    2月前
    |
    分布式计算 Hadoop 大数据
    大数据体系知识学习(一):PySpark和Hadoop环境的搭建与测试
    这篇文章是关于大数据体系知识学习的,主要介绍了Apache Spark的基本概念、特点、组件,以及如何安装配置Java、PySpark和Hadoop环境。文章还提供了详细的安装步骤和测试代码,帮助读者搭建和测试大数据环境。
    83 1
    |
    2月前
    |
    SQL 分布式计算 Hadoop
    Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
    Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
    53 2
    |
    2月前
    |
    SQL 分布式计算 大数据
    大数据平台的毕业设计01:Hadoop与离线分析
    大数据平台的毕业设计01:Hadoop与离线分析
    167 0