presto具备特点包括 prestosuchus_Docker


该博客介绍Wormhole,一个开源的基于Docker的Presto和Alluxio集群部署解决方案。通过该方案可以对文件系统进行快速分析(我们使用S3,GCS,OSS)。在数据分析方面,人们通常手动编写SQL查询并喜欢分析仓库中的数据(例如MySQL数据库)。但是随着数据的增长,这些存储开始能以支撑,因此需要在相同或更少的时间范围内更快地获得的结果。这可以通过分布式计算解决,事实上Presto就是为此而设计的。当Presto与Alluxio连接后,它的工作速度甚至会更快。这就是Wormhole项目产生的全部动机。

常用链接

  • Alluxio项目官网
  • Alluxio在各大厂用例
  • 关注Alluxio微信公众号:Alluxio_China

下图为解决方案的架构图:


presto具备特点包括 prestosuchus_Docker_02


让我们按照Wormhole中配置顺序来逐一介绍每个组件:

  • Consul
  • Docker
  • Alluxio Master
  • Alluxio Worker
  • Hive metastore
  • Presto Coordinator
  • Presto Worker

除了上述组件外,我们还需要一个Zookeeper quorum组件及配置,这是为了使Alluxio主服务器和Presto协调器高度可用(HA)。有关配置的完整文档,请参阅此处。

实际运行

现在我们已经在Alluxio的顶层配置了Presto,那么应当如何使它可供所有人使用呢?答案是需要使用其他一些工具,例如Metabase,提供与Presto的连接。我们只需要添加适当的配置,它们就可用于各种数据分析。
Presto和Alluxio还提供UI来跟踪当前状态,这对用户作用很有帮助。


presto具备特点包括 prestosuchus_数据_03


presto具备特点包括 prestosuchus_Docker_04


下一步计划

后面我们的工作重点将是通过用户界面使该解决方案提供自助服务,并使其实现自扩展(可能可以在Kubernetes上部署)。

关于作者

本文作者是一位专业的数据工程师,喜欢学习和使用分布式系统。他也是一名开源爱好者,乐于贡献社区,可以参考github和medium上的工作。此外,他还是喜欢探索远方并享受长途骑行的旅行者。