摘要:基于华为开源openLooKeng引擎的交互式剖析性能,将重磅公布便于用户构建轻量级流、批、交互式全场景数据湖。
在这个“信息爆炸”的时代,大数据曾经成为这个时代的关键词之一!随着云计算、物联网、挪动计算、智慧城市、人工智能等畛域突飞猛进的倒退,人类社会曾经步入了“信息高速路”的行驶轨道,数据量增长迅速,各类利用对大数据处理的需要也产生着变动。
与此同时,“久经沙场”的数据仓库不再一统江湖,而以实时剖析、离线剖析、交互式剖析等为代表的计算引擎势头迅猛。
华为云3年前公布的Serverless大数据分析服务 - 数据湖摸索DLI,通过这几年的迭代降级,曾经蕴含用于实时剖析的Flink引擎,用于离线剖析的Spark引擎。往年基于华为开源openLooKeng引擎的交互式剖析性能,也将于Q4重磅公布,便于用户构建轻量级流、批、交互式全场景数据湖。
openLooKeng应用了业界驰名的开源SQL引擎Presto来提供交互式查问剖析根底能力,并持续在交融场景查问、跨数据中心/云、数据源扩大、性能、可靠性、安全性等方面倒退,让数据治理、应用更简略。
要害个性
1. 毫秒级查问性能
DLI应用的openLooKeng引擎在内存计算框架的根底上,还利用许多查问优化技术来满足高性能毫秒级的交互式剖析的须要。
1.1 索引
openLooKeng提供基于Bitmap Index、Bloom Filter以及Min-max Index等索引。通过在现有数据上创立索引,并且把索引后果存储在数据源内部,在查问打算编排时便利用索引信息过滤掉不匹配的文件,缩小须要读取的数据规模,从而减速查问过程。
1.2 Cache
openLooKeng提供丰盛多样的Cache,包含元数据cache、执行打算cache、ORC行数据cache等。通过这些多样的cache,可减速用户屡次对同一SQL或者同一类型SQL的查问时延响应。
1.3 动静过滤
所谓的动静过滤是指是在运行时(run time)将join一侧表的过滤信息的后果利用到另一侧表的过滤器的优化办法,openLooKeng不仅提供了多种数据源的动静过滤优化个性,还将这一优化个性利用到了DataCenter Connector,从而减速不同场景关联查问的性能。
1.4 算子下推
openLooKeng通过Connector框架连贯到RDBMS等数据源时,因为RDBMS具备较强的计算能力,个别状况下将算子下推到数据源进行计算能够获取到更好的性能。openLooKeng目前反对多种数据源的算子下推,包含Oracle、HANA等,特地地,针对DC Connector也实现了算子下推,从而实现了更快的查问时延响应。
2. 高可用
2.1 HA AA双活
openLooKeng引入了高可用的AA个性,反对coordinator AA双活机制,可能放弃多个coordinator之间的负载平衡,同时也保障了openLooKeng在高并发下的可用性。
2.2 Auto-scaling
openLooKeng的弹性伸缩个性反对将正在执行工作的服务节点安稳退服,同时也能将处于不沉闷状态的节点拉起并承受新的工作。openLooKeng通过提供“已隔离”与“隔离中”等状态接口供内部资源管理者(如Yarn、Kubernetes等)调用,从而实现对coordinator和worker节点的弹性扩缩容。
3. 交融场景
实时剖析、离线剖析、交互式剖析这三种场景中在很多理论业务中都是同时存在的,DLI引入openLooKeng引擎之初就思考了如何跟已有的Spark引擎进行元数据层面的互通,从而实现离线剖析后果,免数据搬迁间接就能够用openLooKeng引擎进行交互式剖析。Spark和openLooKeng都反对Hive的建表形式,通过这种形式,实现了元数据层面的互通。
4. 对立目录,跨域跨DC查问
DLI老用户应用比拟多的性能是跨多种数据源的联结查问,用于更全面地对数据进行关联剖析,开释数据价值。这次引入openLooKeng引擎将跨源查问的能力进一步延长,开发了跨域跨DC查问的DataCenter Connector。通过这个新Connector能够连贯到远端另外的openLooKeng集群,从而提供在不同数据中心间协同计算的能力。 其中的关键技术如下:
4.1 并行数据拜访
worker能够并发拜访数据源以进步拜访效率, 客户端也能够并发从服务端获取数据以放慢数据获取速度。
4.2 数据压缩
在数据传输期间进行序列化之前,先应用GZIP压缩算法对数据进行压缩,以缩小通过网络传输的数据量。
4.3 跨DC动静过滤
过滤数据以缩小从远端提取的数据量,从而确保网络稳定性并进步查问效率。
总结瞻望
这次退出交互式查问能力,补救了数据湖摸索DLI在毫秒级场景下的短板,构建起从实时剖析、到离线剖析再到交互式剖析整个链路残缺的技术栈。
将来,DLI还将摸索如何依据业务场景自动识别计算引擎,用户只须要下发SQL,无需关怀最终的计算引擎,让大数据真正变成“像应用数据库一样”,“会SQL就会大数据分析”。
点击关注,第一工夫理解华为云陈腐技术~