基于开放共享的自主研发—MaxCompute 持续增强生态与开放性建设

MaxCompute产品与生态架构

MaxCompute是一个具有先进架构的Serverless云数据仓库,自从商业化后,使用的用户涉及各个行业的头部客户。在生态上需要支持主流的开源产品以及阿里云云产品。其主要包括以下几个方面:

  • 数据接入生态。目前官方提供多种数据接入方式,可以接入绝大多数的数据库,NOSQL库,消息队列,日志等业务系统。
  • 数据引擎生态。MaxCompute除了自身支持SQL引擎,Spark,mars,Graph等,还支持第三方引擎平台接入,例如实现底层直读Hologres引擎,PAI人工智能平台,智能搜索,智能推荐等。
  • 数据开发管理工具生态。MaxCompute除了官方推出的Dataworks以外,还支持开源的Kettle,Airflow以及Azkaban平台,对数据进行开发治理调度等操作。
  • 数据湖生态。MaxCompute除了可以计算自身存储数据,还可以联合mysql等关系型数据库,Hbase,TableStore,Lindorm等NoSQL数据库,DLF+OSS对象存储,HDFS和HUDI等大数据文件系统做联合计算。
  • 数据应用生态。目前除了可以直接接入QuickBI官方数据BI平台,同时也支持市面主流的开源和商业化BI数据分析工具,例如Superset和Tableau等。

MaxCompute产品生态架构

MaxCompute产品生态

数据接入生态

MaxCompute官方提供DataWorks数据集成,可以支持几十种数据集成接入或者数据导出。同时也支持主流的时实Kafka,Datahub数据直接写入;也支持SLS日志直接写入。

DataWorks数据集成

提供数据读取(Reader)和写入插件(Writer)实现对数据源的读写操作,您可以根据要同步的来源与去向数据源,并结合离线同步支持的数据源情况,进行同步任务的配置。离线同步支持单表的增量与全量数据读写、分库分表的增量与全量数据读。也可以支持您将多种输入及输出数据源搭配组成同步链路进行单表或整库数据的实时增量同步,还可以支持多种数据源之间进行不同数据同步场景(整库离线同步、全增量实时同步)的同步解决方案。

数据集成为MaxCompute提供丰富的数据通道,方便用户直接接入数据或者导出数据。详细操作请点击。

DataHub

DataHub是流式数据(Streaming Data)的处理平台,提供对流式数据的发布 (Publish),订阅(Subscribe)和分发功能,让您可以轻松构建基于流式数据的分析和应用。数据总线 DataHub服务可以对各种移动设备,应用软件,网站服务,传感器等产生的大量流式数据进行持续不断的采集,存储和处理。用户可以编写应用程序或者使用流计算引擎来处理写入到数据总线 DataHub的流式数据比如实时Web访问日志、应用日志、各种事件等,官方已经深度集成DataHub数据写入MaxCompute。详细操作请点击。

消息队列Kafka版

消息队列Kafka版是阿里云提供的分布式、高吞吐、可扩展的消息队列服务。消息队列Kafka版广泛用于日志收集、监控数据聚合、流式数据处理、在线和离线分析等大数据领域,已成为MaxCompute大数据生态中不可或缺的部分,用户可以方便的通过Kafka把数据写入MaxCompute。详细操作请点击。

日志服务SLS

日志服务SLS是云原生观测与分析平台,为Log、Metric、Trace等数据提供大规模、低成本、实时的平台化服务。日志服务一站式提供数据采集、加工、查询与分析、可视化、告警、消费与投递等功能,全面提升您在研发、运维、运营、安全等场景的数字化能力。用户可以方便快捷的把数据从SLS写入MaxCompute。详细操作请点击。

DTS

数据传输服务DTS(Data Transmission Service)是阿里云提供的实时数据流服务,支持RDBMS、NoSQL、OLAP等,集数据迁移/订阅/同步于一体,为您提供稳定安全的传输链路。详细操作请点击。

数据引擎生态

MaxCompute自研SQL引擎,兼容hive语法,同时也支持开源Spark引擎,集成了Mars,Graph图计算引擎。用户还可以通过MaxCompute CUPID自主接入Presto,kylin等开源引擎进行数据分析计算。同时用户可以适配不同业务场景,引入不同计算引擎,其中就包括:

Hologres

用户在做实时报表,实时数据看板,在线数据服务等高可用,高响应的场景,需要引入Hologres做实时数仓分析服务。为用户提供快速响应的在线数据分析服务。目前MaxCompute跟Hologres已经完成底层数据打通,可以直接进行读写。更进一步提升数据服务效率。详细操作请点击。

PAI人工智能平台

用户在营销场景,金融交易风控场景,已经智能决策,智能语音客服等场景都需要智能化算法模型支持,PAI可以提供一站式的机器学习解决方案。同时PAI也跟MaxCompute深度集成,PAI可以利用MaxCompue强大的分布式计算能力,为PAI进行模型训练,数据计算。详细操作请点击。

智能搜索引擎

用户在文字、图片等搜索场景需要强大的搜索引擎,MaxComput可以为搜索和推荐引擎提供海量的数据存储和计算能力。

  • OpenSearch

OpenSearch是大规模分布式搜索引擎搭建的一站式智能搜索业务开发平台,通过内置各行业的查询语义理解、机器学习排序算法等能力,提供充分开放的引擎能力,助力开发者快速搭建智能搜索服务。同时跟MaxCompute深度集成,MaxCompute为OpenSearch提供海量数据存储与数据计算能力。详细操作请点击。

  • Elasticsearch

Elasticsearch致力于打造基于开源生态的、低成本、场景化的云上Elasticsearch解决方案,源于开源,又不止于开源。基于云上超强的计算和存储能力,以及在集群安全和运维领域积累的技术经验,阿里云Elasticsearch不仅支持集群一键部署、弹性伸缩、智能运维和各类内核引擎优化,还提供了迁移、容灾、备份和监控等全套解决方案。MaxCompute为Elasticsearch提供海量数据存储与数据计算能力。详细操作请点击。

智能推荐

智能推荐AIRec(Artificial Intelligence Recommendation,简称AIRec)基于阿里巴巴大数据和人工智能技术,结合在电商、内容、新闻资讯、视频直播和社交等多个行业领域的积累,MaxCompute为AIRec提供海量数据存储与数据计算能力。详细操作请点击。

数据开发管理工具生态

数据管理

目前MaxCompute支持以下几种开源数据仓库管理工具对接MaxCompute,对MaxCompute的项目进行管理。

DBeaver

DBeaver是一款免费的多平台数据库工具,适用于开发人员、数据库管理员、分析师和所有需要使用数据库的人员。更多DBeaver信息,请参见DBeaver。对接MaxCompute后,可以通过DBeaver对MaxCompute的项目进行管理,可以直接查看MaxCompute的表,表结构,以及表数据等操作。详细操作请点击。

DataGrip

DataGrip是面向开发人员的数据库管理环境,为查询、创建和管理数据库提供便利。数据库可以在本地、服务器或云中工作。更多DataGrip信息,请参见DataGrip。对接MaxCompute后,可以通过DataGrip对MaxCompute的项目进行管理,可以直接查看MaxCompute的表,表结构,以及表数据等操作。详细操作请点击。

SQL Workbench/J

SQL Workbench/J是一个免费的、独立于DBMS(Database Management System)的、跨平台的SQL查询工具。SQL Workbench/J采用Java语言编写,可以在任何提供Java运行环境的操作系统上运行。更多SQL Workbench/J信息,请参见SQL Workbench/J。对接MaxCompute后,可以通过SQL Workbench/J对MaxCompute的项目进行管理,可以直接查看MaxCompute的表,表结构,以及表数据等操作。详细操作请点击。

数据开发调度平台

MaxCompute除了可以用官方推出的DataWorks做数据集成,数据开发任务调度,任务运维,数据分析以及数据服务等,同时也支持主流开元数据开发管理工具。

官方平台

DataWorks

DataWorks基于MaxCompute大数据引擎,为数据仓库、数据湖、湖仓一体等解决方案提供统一的全链路大数据开发治理平台。详细操作请点击。

开源工具

目前MaxCompute支持以下开源数据开发调度工具对接MaxCompute,可以在这些平台上开发数据任务作业,作业调度等。

  • Kettle

MaxCompute支持您通过ETL工具Kettle实现MaxCompute作业调度。您可以通过拖拽控件的方式,方便地定义数据传输的拓扑结构。详细操作请点击。

  • Airflow

MaxCompute支持您使用Apache Airflow通过Python接口实现作业调度。详细操作请点击。

  • Azkaban

MaxCompute支持您通过Azkaban实现作业调度,帮助您高效地完成高频数据分析工作。详细操作请点击。

数据湖生态

MaxCompute不仅可以对自身存储的数据进行高效快捷的进行计算,同时也可以通过外表,湖仓一体(External Schema+Foriegn Server)的方式进行数据联合计算。

外部表

目前MaxCompute支持RDS,OSS,TableStore,Hbase/Lindorm以外表的方式进行联合计算。用户可以不加载数据进MaxCompute,也可以方便的用MaxCompute进行数据联合计算。详细操作请点击。

湖仓一体

目前MaxCompute湖仓一体,可以支持DLF+OSS/HDFS/HUDI等多种数据源,进行湖仓一体联合计算。用户可以在MaxCompute建立外围数据源,通过External Schema对外围数据源进行元数据统一管理,做联合计算。详细操作请点击。

数据应用生态

目前MaxCompute已经对接市场上主流的BI智能分析工具,可以让用户方便的在BI智能分析工具上对MaxCompute的数据进行分析以及展现。主要对接的商业智能分析工具有阿里云产品Quick BI,同时也支持主流的开源和商业化BI产品,例如开源BI分析工具superset商业BI分析工具Tableau等。

Quick BI

智能分析套件Quick BI是一个专为云上用户量身打造的新一代智能BI服务平台。Quick BI可以提供海量数据实时在线分析服务,支持拖拽式操作和丰富的可视化效果,帮助您轻松自如地完成数据分析、业务数据探查、报表制作等工作。MaxCompute深度集成Quick Bi,方便用户在Quick BI做数据分析展现。详细操作请点击。

Tableau

MaxCompute支持您将MaxCompute项目数据接入Tableau进行可视化分析,您可以利用Tableau简便的拖放式界面,自定义视图、布局、形状、颜色等,帮助您展现自己的数据视角。详细操作请点击。

FineBI

MaxCompute支持您将MaxCompute项目数据接入FineBI,帮助企业的业务人员和数据分析师开展以问题为导向的探索式分析工作。连接FineBI和MaxCompute项目,并进行可视化数据分析。详细操作请点击。

FineReport

MaxCompute支持您将MaxCompute项目数据接入FineReport,您通过简单拖拽式操作便可制作中国式复杂报表。连接FineReport和MaxCompute项目,并进行报表分析。详细操作请点击。

观远BI

MaxCompute支持您将MaxCompute项目数据接入观远BI,帮助企业的业务人员和数据分析师开展以问题为导向的探索式分析工作以及制作数据卡片和数据看板。连接观远BI和MaxCompute项目,并进行可视化数据分析。详细操作请点击。

网易有数BI

MaxCompute支持您将MaxCompute项目数据接入网易有数BI,帮助您轻松完成数据分析和数据可视化工作。使用网易有数BI连接MaxCompute项目,并进行可视化数据分析具体详细操作请点击。

Yonghong BI

MaxCompute支持您将MaxCompute项目数据接入Yonghong BI,帮助您轻松完成数据分析和数据可视化工作。详细操作请点击。

Superset

MaxCompute支持您将MaxCompute项目数据接入Superset,帮助您快速、轻量、直观地探索和可视化分析数据。详细操作请点击。

Davinci

MaxCompute支持您将MaxCompute项目数据接入Davinci,您只需在可视化UI界面上简单配置即可服务多种数据可视化应用。详细操作请点击。

MaxCompute架构与开放性

MaxCompute为了让用户更好的用好产品,对外提供了开放连接集成能力。MaxCompute团队聚焦做好核心存储与计算能力。目前可以通过以下几种对接方式与MaxCompute做集成。

MaxCompute开放架构

SDK

目前MaxCompute支持Java和Python版本的SDK提供给外围系统进行集成管理。用户也可以通过SDK对MaxCompute的实例,资源,项目,表等进行管理,同时可以通过SDK提交SQL Task进行数据计算,如果用户需要自定义函数,可以通过java/python开发UDF,UDAF跟UDTF,开发自己的业务逻辑,然后上传并注册。在SQL作业中直接使用。详细操作请点击。

JDBC

为了方便用户使用,MaxCompute还提供了JDBC驱动,用户可以通过JDBC接入,可以通过标准的JDBC接口基于MaxCompute执行海量数据的分布式计算查询,目前用户主要用JDBC对MaxCompute的数据进行查询,例如BI智能分析平台,采用的都是JDBC方式连接进行数据分析查询。详细操作请点击。

Tunnel

用户可以通过Tunnel upload命令把指定目标地址上数据上传到MaxCompute,支持表,分区级别的数据上传。可以通过download的命令把MaxCompute的数据下载到指定目标地址或者本地,可以支持下载某个表或者某个分区的数据,同时也支持下载某个SQL instance计算好的结果数据。为了避免网络因素导致数据上传下载中断的情况,MaxCompute tunnel还支持断点续传功能。详细操作请点击。

开放性与生态场景实践

某金融互联网公司,全业务上了阿里云后,大数据选择了MaxCompute作为核心计算引擎,搭建了大数据平台,相比之前自建的模式,计算速度提升了10倍,成本节省了三成。

  1. 数据源的数据通过kafka,DTS实时同步。
  2. 接入Flink后做实时数据计算,计算完后的数据实时写入MaxCompute做离线分析,数据仓库搭建。
  3. 集成Dataworks数据开发调度平台,对数据进行加工开发调度,数据管理,包括数据安全,数据质量,权限等。
  4. 数据同步到Hologres,kylin,ES,Hbase做实时数据业务场景应用,包括在线分析,标签服务,报表看板,搜索,推荐等。

产品架构

总结

MaxCompute的生态在不断完善中,为企业带来更丰富的组件,为用户提供更好服务。在开放性上,MaxCompute会开放更多能力,跟大数据生态产品做集成。在资源调度上会基于K8s推出fuxi调度引擎统一调度版,在平台管理上会逐渐开发标准restful API接口,更方便用户做集成。在开放更多能力的同时,会推出明确的产品限制项和能力边界,提供有保障的高质量服务。

作者:夏俊伟 阿里云智能高级产品专家

原文链接

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510477.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

还是畅通工程(思想+代码)

Description 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设…

构建数据中台的组织架构

一、中台是一种企业架构 1.TOGAF企业架构标准 TOGAF是一套企业架构标准。企业架构是指整个公司或企业的软件和其他技术的整体观点和方法。企业架构又细分为业务架构、应用架构、数据架构、技术架构几个方向。 其中业务架构的定义是“定义业务战略和组织,关键业务…

源于加速,不止加速——10年沉淀,破局改变

20余年技术,面临破局。CDN(Content Delivery Network,内容分发网络) 是一个超大规模的分布式系统,为互联网各类App和Web站点提供动 / 静态内容、实时流媒体加速以及网络安全防护等能力。在线购物、直播、音乐、游戏、社交等等一切&#xff0c…

C++注释符问题

#include<iostream>using namespace std;int main(){std::cout<<"/*";std::cout<<"*/";std::cout<</*"*/"*/;std::cout<</*"*/"/*"/*"*/;return 0;} 运行出错&#xff0c;第二行无法识别[Wa…

5分钟让你在大火的多模态领域权威榜单VQA上超越人类

ModelScope上开源了达摩院众多业界最强多模态模型&#xff0c;其中就有首超人类的多模态预训练视觉问答模型mPLUG&#xff0c;小编激动的搓搓小手&#xff0c;迫不及待的体验了一下。 一探&#xff1a;浅草才能没马蹄 市面上有好多号称“用户上手简单”&#xff0c;“一步到位…

表达式类型出错

#include<iostream>using namespace std;int main(){int a-1;unsigned b1;cout<<a*b<<endl;return 0;} 编译结果为一个随机数&#xff0c;因为a&#xff0c;b分别为带符号类型和无符号型整数。

私有化输出的服务网格我们是这样做的

介绍 微服务开发的问题 微服务架构下我们在开发中遇到的常见的问题有以下 4 个&#xff1a; 多语言问题&#xff1a;有多种编程语言&#xff0c;node.js, JAVA, GoLang…微服务需要为每种语言都维护一种中间件 SDK升级推动难&#xff1a;SDK 升级需要推动业务应用进行代码修…

技术解读:Dragonfly 基于 P2P 的智能镜像加速系统

背景 网络下载 提起网络下载领域&#xff0c;你应该首先会想到基于 TCP/IP 协议簇的 C/S 模式。这种模式希望每一个客户机都与服务器建立 TCP 连接&#xff0c;服务器轮询监听 TCP 连接并依次响应&#xff0c;如下图&#xff1a; 上世纪末期&#xff0c;基于 C/S 模式的思想&…

多行书写的字符串字面值

#include<iostream>using namespace std;int main(){cout<<"Hello Word!""Best Coder!"<<endl;return 0;}

c++中值得初始化

代码中四种初始化&#xff0c;a中都为0 #include<iostream> using namespace std;int main(){int a0;cout<<a<<endl;int a1{0};cout<<a1<<endl;int a2{0};cout<<a2<<endl;int a3(0);cout<<a3<<endl;return 0;}

Kruise Rollout:灵活可插拔的渐进式发布框架

前言 Kruise Rollout 是 OpenKruise 社区开源的渐进式交付框架。Kruise Rollout 支持配合流量和实例灰度的金丝雀发布、蓝绿发布、A/B Testing 发布&#xff0c;以及发布过程能够基于 Prometheus Metrics 指标自动化分批与暂停&#xff0c;并提供旁路的无感对接、兼容已有的多…

最小生成树的Prime算法的思想

Prime算法的核心步骤是&#xff1a;在带权连通图中V是包含所有顶点的集合&#xff0c; U已经在最小生成树中的节点&#xff0c;从图中任意某一顶点v开始&#xff0c;此时集合U{v}&#xff0c;重复执行下述操作&#xff1a;在所有u∈U,w∈V-U的边(u,w)∈E中找到一条权值最小的边…

c++引用“”

常见的是“左值引用”在c11中新增了“右值引用” 引用&#xff1a;为对象起另外一个名字&#xff0c;引用类型引用另外一种类型。通过声明符写成&d的形式来定义引用类型&#xff0c;其中d是引用类型名。 例如&#xff1a; int a1024; int &ba;//那么b就等于a的值了…

一线技术人应该关注的四种思维能力

引言 作为长期奋战在一线的技术人&#xff0c;我深刻体会到如下几个思维能力对技术人成长的重要性&#xff0c;熟练运用这几种思维可以帮助我们快速的进入到新的领域&#xff0c;在分析、定位和解决问题上有很大帮助。 抽象思维&#xff1a;帮助我们快速抽取面对问题的关键要素…

Nacos 企业版如何提升读写性能和可观测性

概述 微服务引擎 MSE 发布 2.0.4.0 版本&#xff0c;新版本主要在性能和可观测能力升大幅提升&#xff0c;也加固了安全性。性能方面&#xff0c;基于 Dragonwell 进行构建&#xff0c;服务发现和配置性能提升达 40%以上&#xff1b;可观测方面&#xff0c;提供了服务注册的轨…

「技术人生」第9篇:如何设定业务目标

写在前面 上一篇文章讲了如何构建业务大图&#xff0c;看到有评论说这和设定 OKR 差不多啊。希望其他读者不要被类似的看法带偏。业务大图是业务顶层设计&#xff0c;是战略目标、业务长期价值、业务维度拆分、业务组织设计、业务长期发展方向、关键业务战役、短期重点事项的综…

SPFA总结

动态逼近法&#xff1a;设立一个先进先出的队列用来保存待优化的结点&#xff0c;优化时每次取出队首结点u&#xff0c;并且用u点当前的最短路径估计值对离开u点所指向的结点v进行松弛操作&#xff0c;如果v点的最短路径估计值有所调整&#xff0c;且v点不在当前的队列中&#…

我们总结了 3 大使用建议,并首次公开 Nacos3.0 规划图

Nacos 是什么 Nacos 是 Dynamic Naming and Configuration-Service 的首字母简称&#xff0c;定位于一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。从 2018 年 7 月开始宣布开源以来&#xff0c;已经走过了第四个年头&#xff0c;在这四年里&#xff0c;备…

容斥原理 和 欧拉函数

在概率论中&#xff0c;对于概率空间中的事件A1&#xff0c;……&#xff0c;An&#xff0c;当n 2时容斥原理的公式为&#xff1a; 当n 3时&#xff0c;公式为&#xff1a; 一般地&#xff1a; 正数n的唯一素因子分解式p1^a1 * p2^a2 * p3^a3 ……* pk^ak 。求1&#xff0c;2…

递归函数时间复杂度分析

递归函数时间复杂度分析 (1) 递归执行过程 例子&#xff1a;求N!。 这是一个简单的"累乘"问题&#xff0c;用递归算法也能解决。 n! n * (n - 1)! n > 1 0! 1, 1! 1 n 0,1 因此&#xff0c;递归算法如下&#xff1a; Jav…