Repolode
apache

apache/linkis

Apache Linkis 是连接上层应用与底层计算引擎的计算中间件,通过 REST/WS/JDBC 统一接口提供资源互通与治理能力。

Star
3,417
Fork
1,168
未关闭 Issue
188
最近提交
3天前

这是什么?

Apache Linkis 在应用层与引擎层之间构建一层计算中间件。上层应用不必直接对接每个底层引擎,而是通过 REST、WebSocket、JDBC 等标准接口访问 MySQL、Spark、Hive、Presto、Flink 等引擎,从而解耦应用层与引擎层,简化复杂的网络调用关系,降低开发与维护成本。

除连接能力外,Linkis 还解决跨引擎的资源互通问题:变量、脚本、UDF、函数和资源文件可以统一设置并自动引用。它同时提供计算治理能力,例如基于多级标签的任务路由、负载均衡、多租户、流量控制和资源控制,以及物料库、上下文服务、数据源管理等公共服务。支持的引擎包括 Spark、Hive、Python、Shell、JDBC、Flink、Pipeline、Sqoop、openLooKeng、Presto、ElasticSearch、Trino、SeaTunnel 等,覆盖离线批处理、交互式查询、实时流和数据湖等任务形态。

核心功能

  • 01支持多种底层引擎:Spark、Hive、Python、Shell、Flink、JDBC、Pipeline、Sqoop、openLooKeng、Presto、ElasticSearch、Trino、SeaTunnel 等。
  • 02支持多种语言:SparkSQL、HiveSQL、Python、Shell、Pyspark、Scala、JSON 和 Java。
  • 03计算治理能力:基于多级标签的任务路由、负载均衡、多租户、流量控制和资源控制。
  • 04统一上下文服务:跨用户、跨系统、跨引擎关联资源文件(JAR、ZIP、Properties 等)、结果集、参数变量、函数和 UDF,一处设置即可自动引用。
  • 05统一物料:提供系统级和用户级物料管理,支持跨用户、跨系统共享流转。
  • 06统一数据源管理:支持 Hive、ElasticSearch、MySQL、Kafka、MongoDB 等数据源的信息增删改查、版本控制、连接测试和元数据查询。
  • 07错误码能力:为常见任务错误提供错误码与解决方案,方便用户自行定位问题。
  • 08对外提供 REST/WS/JDBC 标准接口供上层应用接入。

适用场景

  • 作为大数据平台底层计算与存储引擎的统一入口。
  • 需要在同一应用中通过一致接口调用 Spark、Hive、Presto、Flink 等多种引擎。
  • 多租户平台中做资源隔离、流量控制与任务路由。
  • 跨用户、跨系统、跨引擎共享脚本、UDF 与资源文件。
  • 通过同一套任务提交与管理流程运行政批、交互式查询、实时流和数据湖任务。

快速上手

  1. 1

    从 Linkis 发布页下载编译好的发行版或源码包

  2. 2

    首次编译前安装父 POM

    ./mvnw -N install
  3. 3

    构建后端发行包

    ./mvnw clean install -Dmaven.javadoc.skip=true -Dmaven.test.skip=true
  4. 4

    按照官方文档站的快速部署指南完成部署

使用前须知

  • 部署较重:这是一个多服务的 Java 平台,需要 Maven 构建或完整的集群环境。
  • 出于许可证原因,官方镜像未内置 MySQL JDBC 驱动,需要自行添加。

收录于专题

标签

#big-data#computation-middleware#spark#hive#flink#presto#sql#jdbc#data-governance#application-manager

常见问题

linkis 是什么?
Apache Linkis 是连接上层应用与底层计算引擎的计算中间件,通过 REST/WS/JDBC 统一接口提供资源互通与治理能力。 Apache Linkis 在应用层与引擎层之间构建一层计算中间件。上层应用不必直接对接每个底层引擎,而是通过 REST、WebSocket、JDBC 等标准接口访问 MySQL、Spark、Hive、Presto、Flink 等引擎,从而解耦应用层与引擎层,简化复杂的网络调用关系,降低开发与维护成本。
linkis 可以免费使用吗?用的什么许可证?
linkis 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
linkis 还在维护吗?
活跃维护中。linkis 最近一次提交是在 2026年11月4日。
linkis 适合用来做什么?
作为大数据平台底层计算与存储引擎的统一入口。 需要在同一应用中通过一致接口调用 Spark、Hive、Presto、Flink 等多种引擎。 多租户平台中做资源隔离、流量控制与任务路由。 跨用户、跨系统、跨引擎共享脚本、UDF 与资源文件。 通过同一套任务提交与管理流程运行政批、交互式查询、实时流和数据湖任务。
linkis 怎么安装和运行?
从 Linkis 发布页下载编译好的发行版或源码包 首次编译前安装父 POM: ./mvnw -N install 构建后端发行包: ./mvnw clean install -Dmaven.javadoc.skip=true -Dmaven.test.skip=true 按照官方文档站的快速部署指南完成部署
在哪里获取 linkis?
源代码和安装说明在 GitHub 上:https://github.com/apache/linkis

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目