按关键词阅读: 微信 特约 白名单 收款 条码 央行 商户 支付宝 数字货币 收款码
著名的计算机专家David Wheeler曾说过,“在计算机领域所有的问题,没有任何一个问题不能通过添加一层抽象来解决。”
Alluxio创立于2015年,是全球首创开源云原生数据编排软件开发商,为解决数据本地、数据抽象以及可访问等技术难题,Alluxio在计算和存储的中间插入了一个数据编排层。该数据编排层就是Alluxio带给计算机领域的一层抽象。
Alluxio的创始人兼CEO李浩源本科毕业于北京大学计算机系,曾代表北京大学获得大学生国际编程比赛(ACM ICPC)全球第11名。在康奈尔大学获取硕士学位后,又继续在加州大学伯克利分校AMPLab攻读博士,博士期间,师从分布式系统和网络领域的泰斗Ion Stoica教授和Scott Shenker教授。在SOSP/NSDI等国际顶级会议发表论文10余篇,Google Scholar 引用量达3000+。
博士期间,李浩源在AMP实验室里孵化了Alluxio(曾用名Tachyon)的技术原型,并获得了硅谷和中国著名风投机构的投资,而后正式成立Alluxio公司并致力于该技术的商业化。今年,依据Google在Github上发布的评选结果,Alluxio领导的开源社区项目被评为全球最重要的Java开源项目前十名。
公司的核心产品Alluxio系统,是全球首个分布式超大规模数据编排系统。自项目开源以来,已有超过来自300多个组织机构的1100多位贡献者参与开发。Alluxio能够在跨集群、跨区域、跨国家的任何云中将数据更紧密地编排,以接近数据分析和AI/ML应用程序,从而向上层应用提供了内存级别的数据访问速度。
如今,人们已经身处信息爆炸时代,用大数据来引发一场新的革命不再是一次对几年后的预言。越来越多的企业数据量已经达到上亿级,数据源爆炸式增长、数据云上迁移,以及大数据技术栈和厂商呈碎片化趋势等问题,对数据平台的架构提出了敏捷性、成本效益、性能等各种要求。面对如此庞大的数据,企业如何更稳定、快速的调取出来进行计算和机器学习,成了很多技术人员要去解决的问题。
SQL是一种访问、处理数据库的计算机语言,MySQL、oracle这些都是SQL数据库,能够快速查询和处理数据,但它们的不足之处是只能查询和处理一些小规模数据,碰到以亿为单位的海量数据时,性能和速度就会明显下降。这种限制使得它们难以满足当下超大型企业的需求。
而它们难以做到的,Presto可以做到。Presto是一款Facebook开源的MPP架构的OLAP查询引擎,也是一款可以针对不同数据源执行大容量数据集的分布式SQL执行引擎。
不同于传统的数据库去管理数据存储,Presto是一款分布式SQL执行引擎,它将计算和存储分离,将存储交给了HDFS、GCS、S3等第三方平台,而自己只负责计算。如此,Presto就可以实现处理海量数据的功能。但也正是由于Presto不负责存储,导致了企业在调取数据时,需要从储存数据的源头去读取,在速度等方面表现较差。
举个例子,虽然大家都觉得互联网的速度非常快,但当你去国外旅行,跟家人视频通话时,就会发现视频的清晰度和流畅度远不如你和家人都在国内时。原因在于数据的传输距离,传输距离变长了,就会有更多的网关、路由器,延时就会增长。Presto没有存储自己的数据,要查询任何数据,都需要将数据集读出来,将每行都扫描一遍,如此,读取速度就非常依赖于网络传输的速度。
现在很多新兴的互联网公司最常用的一种架构,就是将数据完全上云,放在云平台上,这样企业自己就不用建数据中心了。但从云上调取数据,一方面费用很高,另一方面调取速度很慢,更不用提如今有越来越多的将数据存放在硬盘上的企业了。
Alluxio对此的解决方法是,在计算和存储之间做一层缓存机制,将该缓存机制和Presto或其他的计算引擎部署到一起。由于这类计算引擎并不负责存储工作,该缓存机制作为中间层来负责存储工作,这个中间层就是Alluxio。
文章插图
Alluxio的数据编排层
那么Alluxio具体是如何工作的呢?
其实,在第一次调取数据时,Alluxio的速度会和Presto等计算引擎调取数据的速度是一样的,真正的差别要从第二次开始计算。
因为Alluxio会在第一次调取数据后对数据进行缓存,当企业第二次调取同样的数据时,速度自然会成倍提高,加上如今企业的海量数据中,其实有很多数据都会被反复调取使用,缓存机制就大大提高了第二次调取后的效率。简而言之即如果数据在Alluxio集群里边,从Alluxio中就可以拿到,不用去数据中心重新读取,如果该数据没在Alluxio集群里,就让Alluxio到云上将数据拿回来,并进行存储。
稿源:(创业邦)
【傻大方】网址:/c/112EL2122021.html
标题:存储|做计算和存储的中间层,「Alluxio」用"缓存机制"提高企业调取数据的效率