【数据中台】开源项目(3)-Linkis

关于 Linkis

      Linkis 在上层应用程序和底层引擎之间构建了一层计算中间件。通过使用Linkis 提供的REST/WebSocket/JDBC 等标准接口,上层应用可以方便地连接访问MySQL/Spark/Hive/Presto/Flink 等底层引擎,同时实现统一变量、脚本、用户定义函数和资源文件等用户资源的跨上层应用互通,以及通过REST标准接口提供了数据源管理和数据源对应的元数据查询服务。 作为计算中间件,Linkis 提供了强大的连通、复用、编排、扩展和治理管控能力。通过将应用层和引擎层解耦,简化了复杂的网络调用关系,降低了整体复杂度,同时节约了整体开发和维护成本。

     Linkis 自2019年开源发布以来,已累计积累了700多家试用企业和1000多位沙盒试验用户,涉及金融、电信、制造、互联网等多个行业。许多公司已经将Linkis 作为大数据平台底层计算存储引擎的统一入口,和计算请求/任务的治理管控利器。

     开源地址:GitHub - apache/linkis: Apache Linkis builds a computation middleware layer to facilitate connection, governance and orchestration between the upper applications and the underlying data engines.

核心特点

  • 丰富的底层计算存储引擎支持:Spark、Hive、Python、Shell、Flink、JDBC、Pipeline、Sqoop、OpenLooKeng、Presto、ElasticSearch、Trino、SeaTunnel 等;

  • 丰富的语言支持:SparkSQL、HiveSQL、Python、Shell、Pyspark、Scala、JSON 和 Java 等;

  • 强大的计算治理能力: 能够提供基于多级标签的任务路由、负载均衡、多租户、流量控制、资源控制等能力;

  • 全栈计算存储引擎架构支持: 能够接收、执行和管理针对各种计算存储引擎的任务和请求,包括离线批量任务、交互式查询任务、实时流式任务和数据湖任务;

  • 统一上下文服务:支持跨用户、系统、计算引擎去关联管理用户和系统的资源文件(JAR、ZIP、Properties 等),结果集、参数变量、函数、UDF等,一处设置,处处自动引用;

  • 统一物料: 提供了系统和用户级物料管理,可分享和流转,跨用户、跨系统共享物料;

  • 统一数据源管理: 提供了Hive、ElasticSearch、Mysql、Kafka、MongoDB 等类型数据源信息的增删查改、版本控制、连接测试和对应数据源的元数据信息查询能力;

  • 错误码能力:提供了任务常见错误的错误码和解决方案,方便用户自助定位问题;

支持的引擎类型

引擎名

支持底层组件版本

Linkis 1.X 版本要求

是否默认包含在发布包中

说明

Spark

Apache 2.0.0~2.4.7,

CDH >= 5.4.0,

(默认Apache Spark 2.4.3)

>=1.0.0_rc1

Spark EngineConn, 支持SQL, Scala, Pyspark 和R 代码。

Hive

Apache >= 1.0.0,

CDH >= 5.4.0,

(默认Apache Hive 2.3.3)

>=1.0.0_rc1

Hive EngineConn, 支持HiveQL 代码。

Python

Python >= 2.6,

(默认Python2*)

>=1.0.0_rc1

Python EngineConn, 支持python 代码。

Shell

Bash >= 2.0

>=1.0.0_rc1

Shell EngineConn, 支持Bash shell 代码。

JDBC

MySQL >= 5.0, Hive >=1.2.1,

(默认Hive-jdbc 2.3.4)

>=1.0.0_rc1

JDBC EngineConn, 已支持Mysql,Oracle,KingBase,PostgreSQL,SqlServer,DB2,Greenplum,DM,Doris,ClickHouse,TiDB,Starrocks,GaussDB和OceanBase, 可快速扩展支持其他有JDBC Driver 包的引擎, 如SQLite

Flink

Flink >= 1.12.2,

(默认Apache Flink 1.12.2)

>=1.0.2

Flink EngineConn, 支持FlinkSQL 代码,也支持以Flink Jar 形式启动一个新的Yarn 应用程序。

Pipeline

-

>=1.0.2

Pipeline EngineConn, 支持文件的导入和导出。

openLooKeng

openLooKeng >= 1.5.0,

(默认openLookEng 1.5.0)

>=1.1.1

openLooKeng EngineConn, 支持用Sql查询数据虚拟化引擎openLooKeng。

Sqoop

Sqoop >= 1.4.6,

(默认Apache Sqoop 1.4.6)

>=1.1.2

Sqoop EngineConn, 支持 数据迁移工具 Sqoop 引擎。

Presto

Presto >= 0.180

>=1.2.0

Presto EngineConn, 支持Presto SQL 代码。

ElasticSearch

ElasticSearch >=6.0

>=1.2.0

ElasticSearch EngineConn, 支持SQL 和DSL 代码。

Trino

Trino >=371

>=1.3.1

Trino EngineConn, 支持Trino SQL 代码

Seatunnel

Seatunnel >=2.1.2

>=1.3.1

Seatunnel EngineConn, 支持Seatunnel SQL 代码

linkis架构

     Linkis 基于微服务架构开发,其服务可以分为3类:计算治理服务、公共增强服务和微服务治理服务。

  • 计算治理服务,支持计算任务/请求处理流程的3个主要阶段:提交->准备->执行。

  • 公共增强服务,包括上下文服务、物料管理服务及数据源服务等。

  • 微服务治理服务,包括定制化的Spring Cloud Gateway、Eureka、Open Feign。

     下面是Linkis的架构概要图: 

     基于Linkis 计算中间件,我们在大数据平台套件WeDataSphere 中构建了许多应用和工具系统,下面是目前可用的开源项目。

  • DataSphere Studio - 数据应用集成开发框架

  • Scriptis - 数据研发IDE工具

  • Visualis - 数据可视化工具

  • Schedulis - 工作流调度工具

  • Qualitis - 数据质量工具

  • MLLabis - 容器化机器学习notebook 开发环境

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

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

相关文章

web:very_easy_sql(sql、ssrf、gopher协议sql注入)

题目 页面显示如下 显示不是内部用户,无法识别信息 查看源码,找到一个use.php 访问之后显示如下 随便输入了一个,发现url有参数显示 试一下靶机的网址,返回nonono 联系之前原始页面写的“不是内网用户,无法别识身份”…

【PTA-C语言】实验三-循环结构I

如果代码存在问题,麻烦大家指正 ~ ~有帮助麻烦点个赞 ~ ~ 实验三-循环结构I 7-1 求交错序列前N项和 (分数 15)7-2 寻找250(分数 15)7-3 最大公约数和最小公倍数(分数 15)7-4 统计字符&#xff0…

Redis 发布订阅机制深入探索

Redis 的发布订阅(pub/sub)机制是一种消息传递模式,允许消息的发送者(发布者)和消息的接收者(订阅者)通过一个中介层(频道)进行通信,而无需彼此直接交互。以下…

231202 刷题日报

周四周五,边值班边扯皮,没有刷题。。 今天主要是做了: 1. 稀疏矩阵压缩,十字链表法 2. 快速排序 3.349. 两个数组的交集​​​​​ 4. 174. 地下城游戏 要注意溢出问题!

外包搞了6年,技术退步明显......

先说情况,大专毕业,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试&#xf…

vue项目报错及解决npm run build:prod打包错误

vue项目报错及解决npm run build:prod打包错误 执行dev环境时加载失败了该变量,在package.json文件中 删掉 解决方法: 打包成功:

使用 OpenFunction 在任何基础设施上运行 Serverless 工作负载

作者: 霍秉杰:KubeSphere 可观测性、边缘计算和 Serverless 团队负责人,Fluent Operator 和 OpenFunction 项目的创始人,还是多个可观测性开源项目包括 Kube-Events、Notification Manager 等的作者,热爱云原生技术&am…

Hdoop学习笔记(HDP)-Part.16 安装HBase

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

MathType 7.5.2中文版软件使用期到了怎么办?

MathType 7.5.2中文版作为一款专业的公式编辑器,MathType受到很多人的青睐,它可以将编辑好的公式保存成多种图片格式或透明图片模式,可以很方便的添加或移除符号、表达式等模板(只需要简单地用鼠标拖进拖出即可),也可以…

基于SpringBoot蜗牛兼职网的设计与实现

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,蜗牛兼职网当然也不能排除在外。蜗牛兼职网是以实际运用为开发背景,运用软件工程原理和开发方法&#xff0c…

css中元素水平居中的方式

文章目录 前言水平居中:垂直居中方法一: text-align: centerdisplay: table-cell方法二:父元素静态定位子元素通过相对定位来实现方法三:通过静态和相对定位方法四 css图片居中用text-align:center无效怎么回事?如何让图片在DIV中水平和垂直两个方向都居…

接口自动化测试思路和实战之模块化测试脚本框架

模块化测试脚本框架 需要创建独立的可描述的模块、程序片断以及待测试应用程序的脚本。这些小脚本进行组合,就能组成用来独立运行特定的测试的测试用例脚本。 场景一: 开发把 access_token接口地址由/cgi-bin/token 改为/cgi-bin/get_token或者修改参数等 》开发把…

【LeetCode】链式二叉树OJ题---C语言版

链式二叉树OJ题 一、单值二叉树(1)题目描述:(2)思路表述:(3)代码实现: 二、二叉树最大深度(1)题目描述:(2)思路…

docker容器中创建非root用户

简介 用 docker 也有一段时间了,一直在 docker 容器中使用 root 用户肆意操作。直到部署 stable diffusion webui 我才发现无法使用 root 用户运行它,于是才幡然醒悟:是时候搞个非 root 用户了。 我使用的 docker 镜像文件是 centos:centos…

LeetCode的几道题

一、捡石头 292 思路就是: 谁面对4块石头的时候,谁就输(因为每次就是1-3块石头,如果剩下4块石头,你怎么拿,我都能把剩下的拿走,所以你就要想尽办法让对面面对4块石头的倍数, 比如有…

Linux shell中的函数定义、传参和调用

Linux shell中的函数定义、传参和调用: 函数定义语法: [ function ] functionName [()] { } 示例: #!/bin/bash# get limit if [ $# -eq 1 ] && [ $1 -gt 0 ]; thenlimit$1echo -e "\nINFO: input limit is $limit" e…

CPU 使用率和负载Load

优质博文:IT-BLOG-CN 一、CPU 使用率 CPU使用率是 CPU处理非空闲任务所花费的时间百分比 。例如单核CPU 1s内非空闲态运行时间为0.8s,那么它的CPU使用率就是80%;双核CPU 1s内非空闲态运行时间分别为0.4s和0.6s,那么,…

IDEA2023安装教程(超详细)

文章目录 前言安装IntelliJ IDEA1. 下载IntelliJ IDEA2. 运行安装程序3. 选择安装路径4. 选择启动器设置5. 等待安装完成6. 启动IntelliJ IDEA7. 配置和设置8. 激活或选择许可证9. 开始使用 总结 前言 随着软件开发的不断发展,IntelliJ IDEA成为了许多开发人员首选…

基于JSP的网络考试系统/在线考试系统的设计与实现

摘 要 网络考试系统是由高校的一个网络考试,按照章程自主开展网络考试系统。网络考试是实施素质教育的重要途径和有效方式,在加强校园文化建设、提高学生综合素质、引导学生适应社会、促进学生成才就业等方面发挥着重要作用,是新形势下有效凝…

RHCE学习笔记(RHEL8) - RH294

Chapter Ⅰ 介绍Ansible ansible ansible是一款开源自动化平台 ansible围绕一种无代理架构构建,在控制节点上安装ansible,且客户端不需要任何特殊的代理软件;ansible使用SSH等标准协议连接受管主机,并在受管主机上运行代码或命令来…