HDFS, Druid, Presto, Alluxio之间是什么关系?

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: HDFS, Druid, Presto, Alluxio之间是什么关系?

这是个极为宏大的分布式存储与计算话题,本文先简单介绍它们之间的作用和架构关系。后续有机会再慢慢细聊:


技术介绍


首先这四种技术分别代表:分布式文件系统(HDFS)、实时数据库(Druid)、大数据查询引擎(Presto)和内存中的分布式文件系统(Alluxio)。


HDFS是我们最常听到的分布式文件系统,也就是说它主要还是以文件的组织形式保存客户端传来的数据,关键是在多节点多副本的条件下提供文件的高可靠。


Druid是结合了数仓、时序和日志搜索为一体的实时分析数据库。Druid是列式结构存储,主要是针对日志、工业和实时交易之类的海量数据写入和实时分析。它的分布式结构非常庞大,面向实时流数据、也面向批量冷数据的定时存储,为各种实时、离线提供全面的支撑。


Presto是大数据的查询引擎,具有分布式结构,我们可以让它与hive,impala,spark sql并列去对比,都是面向mpp的大规模并行计算引擎,presto的强大之处还是在于它的查询速度很高,在计算过程中,因为对内存的极致利用,使得查询速度是其最大的优势。


Alluxio是基于内存的分布式文件系统,也是以文件组织形式提供给客户端,它可以介于spark和hdfs之间(不止于这两种大数据框架)形成内存映射磁盘的分布式文件缓冲架构,既可以同hdfs形成内存与磁盘的文件数据交换,又可以适配spark建立内存级的checkpoint点,做到分布式环境下在内存中完成检测点的计算恢复,用于加速spark等查询计算引擎的处理能力,还能提供计算容错的支持,相对于在线事务领域,我们可以理解Alluxio为大数据领域的Redis,但Redis只是字典,不具备文件组织能力,也不具备数据在内存与磁盘的实时交换能力。


架构用法


介绍完它们的作用,我们从架构的用法上看,hdfs肯定是大数据的底座,用于全量数据的高可靠存储,尤其是高性能的写入与复制,如果用spark进行批量分析,例如数据挖掘,机器学习,那么在hdfs之上加一层Alluxio,这会让spark通过Alluxio来缓存数据,并无缝建立与hdfs的桥梁,处理速度效果会非常好。


如果使用presto,则不需要考虑Alluxio,因为presto本身就是数据与计算分离的架构,也是纯内存计算的架构,他可以和很多数据存储平台对接,如果做通用型大数据离线分析,对接hdfs即可,如果做工业时序查询分析,也可以对接Druid。


作为Druid,它本身既是一个时序数据的存储平台,也是一个实时查询分析的计算平台,而且它还可以连接hdfs批量获取数据,也可以连接kafka流式获取数据,但最终都会归集到它的历史数据库,在进入历史数据库之前,它还可以外接hdfs作为批量冷数据的临时中转地,等待协调节点的调度后,再将hdfs上的冷数据转移到历史数据中。总之Druid是面向时序、数仓的全套解决方案,架构也非常开放。


但是作为一般的大数据技术实施公司,切莫追逐于技术上的先进性,满足SLA服务承诺的条件下,稳定性更重要,数据量大的环境下,各种技术框架里面都会产生很多坑,例如presto虽然内存应用到极致,但是海量数据频繁操作下,jvm对内存的垃圾回收会有很多意想不到的问题。


再比如Druid,分布式架构非常复杂,可以和TiDB、OceanBase的分布式架构角色之多有一拼了,那么对于Druid的部署就涉及到实时节点,历史节点,协调节点,查询节点,还有zookeeper,hdfs的接入,任何角色节点出现故障都是麻烦事,那么你是否能应付的过来呢?


因此一定要循序渐进的使用大数据技术,例如:hdfs和spark sql是否就已经可以解决问题了,是否一定因为速度需求要换成presto;再比如,es栈(elk)就能解决日志问题,influxdb栈(tick)就能解决工业监测问题,是否对数据业务的功能需求的复杂程度一定要将所有采集和分析统一融合到Druid上呢?这都是架构上需要慎之又慎的事情。


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
SQL 分布式计算 Hadoop
在文件存储HDFS版上使用 Presto
本文档主要介绍在文件存储HDFS版上搭建及使用 Presto。
588 0
|
1月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
155 6
|
1月前
|
SQL 分布式计算 监控
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
62 3
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
42 4
|
1月前
|
存储 分布式计算 资源调度
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(一)
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(一)
76 5
|
1月前
|
资源调度 数据可视化 大数据
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(二)
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(二)
36 4
|
1月前
|
XML 分布式计算 资源调度
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
153 5
|
1月前
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
96 3
|
1月前
|
XML 资源调度 网络协议
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
92 4
|
1月前
|
分布式计算 资源调度 Hadoop
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
77 4
下一篇
无影云桌面