简介: 本文由阿里云计算平台事业部 MaxCompute 产品经理孟硕为大家带来《继续定义Saas模式云数据仓库+实时搜寻》的相干分享。以下是视频内容精髓整顿,次要包含以下三个局部:1.Why:概述与价值;2.What:利用场景;3.How:最佳实际。

一、Why:概述与价值
(一)MaxCompute
咱们把MaxCompute定义为SaaS模式的企业级云数据仓库。在之前,咱们可能会认为MaxCompute是一个离线数据处理引擎,也就是一个传统的数仓,然而MaxCompute所能做的事件要比传统数仓多的多。因而,咱们更偏向于把MaxCompute看成一个数据处理的平台,在它下面咱们能够做离线数据的解决,包含数据库的利用,传统数据仓库的利用,以及近实时的数据采集和近实时的数据查问,当初将其与MC-Holegres组件联合,咱们还能做到实时数仓的利用场景。
MaxCompute是阿里云的一个托管服务,它依靠于阿里云弱小的基础设施,为用户提供优质、便捷的服务,其架构如下图所示。

MaxCompute有着宽泛的利用场景,传统数仓所能做的,MaxCompute都能做,次要包含:
1.广告场景:用户标签计算、剖析等;
2.业务经营场景:交互式业务指标计算、查问等;
3.各行业搭建数据仓库,比方流批一体、湖仓一体等;
4.云上弹性扩大大数据计算和存储。
得益于牢靠的架构和弱小的技术实力,MaxCompute有着十分优良的产品技术个性,次要包含:
(1)全托管的Serverless的在线服务
1.对外以API形式拜访的在线服务,开箱即用;
2.预铺设的大规模集群资源,近乎有限资源,按需应用和付费;
3.无需平台运维,最小化运维投入。
(2)弹性能力与扩展性
1.存储和计算独立扩大,反对TB到EB级别数据规模的扩大能力,能够让企业将全副数据资产保留在一个平台上进行联动剖析,打消数据孤岛;
2.Serverless资源按需分配,实时依据业务峰谷变动带来的需要变动分配资源,主动扩大;
3.单作业可依据须要秒级取得成千上万Core。
(3)数据湖摸索剖析
1.默认集成对数据湖(如OSS服务)的拜访剖析,解决非结构化或凋谢格局数据;
2.反对表面映射、Spark间接拜访形式发展数据湖剖析;
3.对用户敌对:在同一套数据仓库服务和用户接口下,实现数据湖剖析和数据仓库的关联剖析。
(4)集成AI能力
1.与阿里云机器学习平台PAI无缝集成,提供弱小的机器学习解决能力;
2.可应用用户相熟的Spark-ML发展智能剖析;
3.提供SQLML能够间接应用规范SQL训练机器学习模型,并对数据进行预测剖析;
4.Mars:应用Python机器学习第三方库。
(5)反对流式采集和近实时剖析
1.反对流式数据的实时写入(Tunnel),并在数据仓库中发展剖析;
2.与云上次要流式服务深度集成,轻松接入各种起源流式3.高性能秒级弹性并发查问,满足近实时剖析场景。
(6)深度集成Spark引擎
1.内建Apache Spark引擎,提供残缺的Spark性能;
2.与MaxCompute计算资源、数据和权限体系深度集成。
(7)对立而丰盛的运算能力
1.离线计算(MR,DAG,SQL,ML,Graph);
2.实时计算(流式,内存计算,选代计算);
3.涵盖通用关系型大数据,机器学习,非结构化数据处理,图计算。
(8)提供对立的企业数据视图
1.提供租户级别的对立元数据,让企业可能轻松取得残缺的企业数据目录;
2.对于更宽泛的数据源,通过表面建设数据仓库与内部数据源的连贯,Connect not Collect。
(9)企业级服务
1.SLA保障:99.9%服务可用性保障;
2.自助运维与自动化运维;
3.欠缺的故障容错(软件,硬件,网络,人为)机制。

一般来讲咱们的大数据我的项目是须要很多个组件能力实现的,包含离线组件和实时组件。下图一个罕用的场景,它是集实时、离线、剖析、服务于一体的一套计划,实用于数据化经营,如智能举荐、日志采集剖析、用户画像、数据治理、业务大屏、搜寻等场景。这套计划是阿里巴巴最佳实际的大数据平台,具备技术当先性,降本提效,高附加值业务收益等劣势。当然,整个计划波及到的产品也十分多,包含日志服务SLS、数据传输DTS、DataHub、实时计算Flink等等,具体如下图所示。

下图是MaxCompute和Hologres两个组件交融之后的实时剖析简略架构,即云原生HASP零碎,通过该架构咱们能够实现实时写入和实时查问。与其余的OLAP利用不同的是这种架构下Hologres和MaxCompute是一体的,能够共享存储,也就是说Hologres能够间接读取MaxCompute的数据,大大降低了存储老本。通过这两个组件,咱们还能够解决离线减速、联邦剖析、交互式剖析等问题。

(二)Elasticsearch
Elasticsearch是一个开源的分布式、RESTful 格调的搜寻和数据分析引擎,它的底层是开源库Apache Lucene。Elasticsearch解决了Lucene应用时的简约性,功能强大,应用简略,可能提供实时搜寻服务。Elasticsearch利用场景宽泛,比方打车的场景中(例如滴滴打车),应用查问左近的车辆等性能时候,后盾就是Elasticsearch在为搜寻做撑持,又比方在Github中,Elasticsearch能够帮忙咱们利用关键字等在站内进行检索。当然,不只是网站利用,包含手机APP,只有用到站内搜索服务,都可能用到Elasticsearch或者其余的搜寻服务利用。
咱们为什么须要搜索引擎呢?实时搜寻为什么当初这么火呢?之前咱们在做数据分析的时候,能够通过写程序的形式,然而写程序对于一些数据分析师来说是一个高门槛的工作,须要肯定的学习老本,包含应用SQL也有肯定的学习老本。然而有了搜索引擎之后,咱们只须要依照肯定的条件进行筛选就能够失去咱们想要的信息,大大降低了学习老本。
以后,支流的搜索引擎有两个:Solr和Elasticsearch,两者都基于Lucene倒退而来。Lucene是当今最先进,最高效的全功能开源搜索引擎框架,然而Lucene只是一个框架,且比较复杂,要充分利用它的性能,须要在其根底上进行扩大开发,因而有了Solr和Elasticsearch。

下图是Google Trend中两个搜寻利用的趋势剖析,能够看出在实时搜寻畛域,近几年Elasticsearch的热度曾经超过了Solr,因为在实时搜寻畛域Elasticsearch的成果要好于Solr,然而不得不提的是Solr在现有数据的根底上进行查问搜寻的速度会更快一些。

目前,Elastic 曾经发表与阿里云建设长期单干和战略伙伴关系。将来阿里云Elasticsearch将会兼容开源 Elasticsearch 的性能,以及Security、Machine Learning、Graph、APM 等商业性能,致力于数据分析、数据搜寻等场景服务,与Elastic单干,独特为客户提供企业级权限管控、安全监控告警、主动报表生成等场景服务。

(三)为什么须要MaxCompute+实时搜寻

二、What:利用场景
以后,实时搜寻的次要利用场景有三个:
1.日志和指标剖析(Log/Indicator Analysis);
2.平安(Security);
3.站内检索(WebHosting)。
其场景的应用逻辑如上面三张图所示。

三、How:最佳实际
最佳实际次要包含数据集成和数据监控两局部,其中数据集成指的是MaxCompute和Elasticsearch两个组件之间怎么做数据交互。
(一)数据集成
下图是一个在线教育的案例,该案例大的背景是要监控企业外部包含用户的C端产生的日志,还有外部的服务端产生的日志,它由MaxCompute做数据的预剖析,而后交由Elasticsearch做数据监控,其痛点次要有如下三点:。
1.监控数据实时性要求高;
2.流量稳定大,自建集群投入老本高;
3.数据权限粒度要求高。

对于以上痛点,个别通用的解决方案如上图所示,包含数据采集和集中、数据ETL、数据分析和展示三局部,最初会失去如下图所示的DashBoard。

MaxCompute和Elasticsearch之间的数据交互是十分重要的一部分,将MaxCompute的数据导入Elasticsearch次要分为如下五步:
1.筹备工作
创立DataWorks工作空间并开明MaxCompute服务,筹备MaxCompute数据源、创立阿里云Elasticsearch实例。
2.步骤一:购买并创立独享资源组
购买并创立一个数据集成独享资源组,并为该资源组绑定专有网络和工作空间,独享资源组能够保障数据疾速、稳固地传输。
3.步骤二:增加数据源
将MaxCompute和Elasticsearch数据源接入DataWorks的数据集成服务中。
4.步骤三:配置并运行数据同步工作
配置一个数据同步的脚本,将数据集成系统同步胜利的数据存储到Elasticsearch中,而后将独享资源组作为一个能够执行工作的资源,注册到DataWorks的数据集成服务中,这个资源组将获取数据源的数据,并执行将数据写入Elasticsearch中的工作(该工作将有数据集成系统对立下发)。
5.步骤四:验证数据同步后果
在Kibana控制台中,查看同步胜利的数据,并按条件查问数据。
(二)数据监控
通过下面的步骤,数据曾经导入了Elasticsearch,咱们做数据监控次要有如下两步:
1.应用Kibana的discover,view,dashboard和其余对象来查看这些数据。

2.通过导入事后筹备好的Kibana对象,能够对立显示直播数据。

原文链接
本文为阿里云原创内容,未经容许不得转载。