Alluxio 是世界上第一个面向基于云的数据分析和人工智能的开源的 数据编排技术 。 它为数据驱动型应用和存储系统构建了桥梁, 将数据从存储层移动到距离数据驱动型应用更近的位置从而能够更容易被访问。 这还使得应用程序能够通过一个公共接口连接到许多存储系统。 Alluxio内存至上的层次化架构使得数据的访问速度能比现有方案快几个数量级。
在大数据生态系统中,Alluxio 位于数据驱动框架或应用(如 Apache Spark、Presto、Tensorflow、Apache HBase、Apache Hive 或 Apache Flink)和各种持久化存储系统(如 Amazon S3、Google Cloud Storage、OpenStack Swift、HDFS、GlusterFS、IBM Cleversafe、EMC ECS、Ceph、NFS 、Minio和 Alibaba OSS)之间。 Alluxio 统一了存储在这些不同存储系统中的数据,为其上层数据驱动型应用提供统一的客户端 API 和全局命名空间。
Alluxio 项目源自 UC Berkeley 的 AMPLab (见 论文 ),在伯克利数据分析栈 (Berkeley Data Analytics Stack, BDAS ) 中扮演数据访问层的角色。 它以 Apache License 2.0 协议的方式开源。 Alluxio 是发展最快的开源大数据项目之一,已经吸引了超过 300 个组织机构的 1000多名贡献者 参与到 Alluxio 的开发中,包括 阿里巴巴 、 Alluxio 、 百度 、 CMU 、 Google 、 IBM 、 Intel 、 南京大学 、 Red Hat 、 腾讯 、 UC Berkeley 、 和 Yahoo 。 到今天为止,Alluxio 已经在 数百家机构 的生产中进行了部署,最大部署运行的集群规模超过 1500 个节点。
通过简化应用程序访问其数据的方式(无论数据是什么格式或位置),Alluxio 能够帮助克服从数据中提取信息所面临的困难。Alluxio 的优势包括:
Alluxio 将三个关键领域的创新结合在一起,提供了一套独特的功能。
世界上许多头部企业都在生产中部署Alluxio,以从数据中获取价值。我们在Powered-By页面中列出了部分企业。下面我们将介绍一些最常见的 Alluxio 应用场景。
许多企业都在公有云(AWS S3、Google Cloud 或 Microsoft Azure)对象存储上运行分析和机器学习负载(Spark、Presto、Hive、Tensorflow 等)。 虽然云对象存储通常性价比更高,易于使用和扩展,但也存在一些挑战:
Alluxio 通过提供智能多级缓存和元数据管理来解决这些挑战。在计算集群上部署 Alluxio 有助于:
本应用场景案例参见Electronic Arts(美国艺电)。
在本地部署的对象存储上运行数据驱动型应用会带来以下挑战:
Alluxio 通过提供缓存和 API 转换功能来解决这些问题。在应用端部署 Alluxio 带来以下益处:
本应用场景案例参见DBS(新加坡星展银行)。
随着越来越多的企业迁移上云,其中一种常见的过渡做法是利用云上的计算资源,同时从本地数据源读取数据。但是,这种混合架构带来了下列问题:
Alluxio提供”零拷贝”上云功能,使得云上的计算引擎能够访问本地数据,而无需持久化的数据复制或定期同步。这一功能可带来以下益处:
本应用场景案例参见Walmart(沃尔玛)。
另一种混合云架构是从私有数据中心访问云存储。使用这种架构通常会导致以下问题:
Alluxio 作为混合云存储网关,可利用本地计算处理云上数据, 从而解决这些问题。当Alluxio与本地计算一同部署时,Alluxio可管理计算集群的存储并将应用所需数据本地化,从而实现:
本应用场景案例参见Comcast(康卡斯特)。
许多企业出于性能、安全或资源隔离的目的,建立了独立于主数据集群的卫星计算集群。由于这些卫星集群需要通过主集群远程访问数据,有一定难度,这是因为:
Alluxio 可以作为一个数据逻辑副本,部署在卫星集群中的计算节点上,并配置为连接到主数据集群,因此:
参考:https://www.alluxio.com.cn/quickstart/overview/
https://www.alluxio.com.cn/quickstart/use-cases/