Apache Linkis 中间件架构及快速安装步骤

下面我将为你详细讲解Apache Linkis中间件架构及快速安装步骤。

Apache Linkis 中间件架构

Apache Linkis是受LinkedIn Data Platform启发而构建的开源数据工作流平台。它为数据工作者提供了一个易于使用,可扩展,多租户的数据智能解决方案。Apache Linkis架构由五个关键组件组成:

  1. Gateway:网关是整个Linkis架构中的入口,负责请求的路由和安全验证等功能。Web请求和Linkis服务通过此网关进行通信。

  2. Engine:Engine是运行引擎,用于处理用户提交的作业。Engine为用户提供了一个隔离的环境,主要用于代码编排、资源分配和代码执行,该架构目前支持Spark,Flink,Hive,Presto等多种计算框架。

  3. Metadata:Metadata是元数据服务,负责存储相关的数据元和业务元。此服务支持数据库(MySQL/Oracle)或其他存储库,例如Cassandra,Es等,以灵活管理数据元和业务元。

  4. Usher:Usher是Linkis的通知服务,承载了Linkis发起的异步事件。(如,任务执行通知等)

  5. Entrance:Entrance是用户与Engine之间的接口,用于编排代码和发送请求,支持多种脚本语言(如SQL、Python、Java等)。

安装Apache Linkis步骤

下面是Apache Linkis的安装步骤:

环境准备

  1. Java环境:必须安装Java 1.8及以上版本。

  2. MySQL环境:必须安装MySQL Server 5.7.x。

下载Linkis

  1. 访问Apache Linkis官网,下载最新的稳定版本的二进制可执行文件,解压文件到指定目录。

  2. 配置环境变量。

  3. 配置数据库,执行linkis/lis-db/lis.sql脚本,将创建Linkis所需的数据库。

修改配置文件

  1. 进入conf目录,修改linkis.properties文件,将以下配置信息修改为你自己的:

```
# Hive配置
hive.server2.url=<你的Hive Server2链接>
hive.zookeeper.quorum=<你的Hive zookeeper链接>

# JAVA环境路径
java.home=<你的java运行环境路径>

# 元数据存储配置
metadata.db.url=<你的数据库链接>
metadata.db.user=<你的数据库用户名>
metadata.db.password=<你的数据库密码>

# 网关服务配置
gateway.port=<你的网关端口号>
gateway.token.user=<你的网关服务令牌用户名>
gateway.token.password=<你的网关服务令牌密码>
gateway.token.expires-after=<你的网关服务令牌过期时间>
```

  1. 修改entrance.properties文件,设置可用的引擎类型。

engines=Flink,Spark,Hive,Presto
spark.home=<你的Spark路径>
spark.version=<你的Spark版本号>
spark.master=<你的Spark主节点链接>
spark.cores.max=<你的最大Spark核心数>
spark.executor.memory=<你的Spark执行器最大内存>
spark.yarn.jars=<你的Spark JAR文件所在路径>
spark.uis=<你的Spark UI显示地址>
spark.dependencies.zookeeper=<你的Spark zookeeper链接>

启动Linkis

  1. 启动Linkis网关服务:运行bin/start-gateway.sh脚本。

  2. 启动Linkis元数据服务:运行bin/start-manager.sh脚本。

  3. 启动Linkis引擎服务:运行bin/start-engine.sh <ENGINE_TYPE>脚本,<ENGINE_TYPE>是你要启动的引擎类型,例如,Spark,Hive,Flink或Presto。

部署Linkis任务

在启动Linkis后,你可以使用Entrance接口编写和提交任务,在Linkis管理界面上查看和跟踪任务的执行状态,关于如何编写和提交任务可以参考Linkis官方文档中的入门教程。

下面是一个使用Linkis提交Hive查询的示例。

  1. 首先在Entrance页面选择Hive引擎,在代码输入框中输入Hive查询:

sql
select * from employees where salary > 50000;

  1. 点击运行,任务将被发送到Engine,Engine将解析和执行查询。

  2. 查看任务执行更新和结果,可以在Linkis管理界面的“任务信息”面板中找到任务的详细信息和状态,包括任务开始和结束时间、运行状态和查询结果等。

以上是Apache Linkis中间件架构及快速安装步骤的完整攻略,如有疑问欢迎交流。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Apache Linkis 中间件架构及快速安装步骤 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python中.py文件打包成exe可执行文件详解

    在本攻略中,我们将介绍如何使用Python将.py文件打包成.exe可执行文件。我们将提供两个示例,演示如何使用PyInstaller和cx_Freeze库将.py文件打包成.exe可执行文件。 方法1:使用PyInstaller将.py文件打包成.exe可执行文件 我们可以按照以下步骤使用PyInstaller将.py文件打包成.exe可执行文件: 安装P…

    python 2023年5月15日
    00
  • python re正则匹配网页中图片url地址的方法

    以下是详细讲解“Python re正则匹配网页中图片URL地址的方法”的完整攻略,包括正则表达式的基本语法、使用re模块匹配网页内容的方法和两个示例说明。 正则表达式基本语法 正则表达式是一种用于匹配文本的模式。Python中,我们可以使用re模块来处理正则表达式。正则表达式的基本语法如下: 符号:匹配指定的字符。 字集:匹配指定的字符集。 量词:匹配指定的…

    python 2023年5月14日
    00
  • Python实现将一个正整数分解质因数的方法分析

    Python实现将一个正整数分解质因数的方法分析 如果要将一个正整数分解质因数,可以使用质因数分解的方法。本文将详细介绍在 Python 中实现将一个正整数分解质因数的方法。 质因数分解简介 质因数分解是将一个正整数分解成若干个质数相乘的形式。比如:12 = 2 * 2 * 3。 Python实现分解质因数的方法 以下是 Python 实现将一个正整数分解质…

    python 2023年5月13日
    00
  • 详解使用PIL寻找图像之间的差异

    下面是关于使用PIL寻找图像之间的差异的完整攻略: 什么是PIL PIL(Python Imaging Library)是一个针对Python编程语言的图像处理库,它支持打开、编辑各种图片格式,处理图片的功能非常强大。我们可以使用PIL中的一些方法来寻找图像之间的差异。 安装和导入PIL 要使用PIL,首先需要安装它: pip install pillow …

    python-answer 2023年3月25日
    00
  • 详解Python如何实现Excel数据读取和写入

    下面我详细讲解如何使用Python实现Excel数据的读取和写入操作。这篇攻略主要包含以下几个部分: 如何安装必要的Python库以实现Excel读写操作; 如何使用Python打开Excel文件; 如何读取Excel文件中的数据; 如何向Excel文件中写入数据; 示例演示。 1. 安装必要的Python库 在开始实现Excel读写操作之前,必须先安装必要…

    python 2023年5月13日
    00
  • python gui开发——制作抖音无水印视频下载工具(附源码)

    下面是详细的“Python GUI开发——制作抖音无水印视频下载工具(附源码)”攻略: 1. 确认工具需求 首先需要明确工具的需求,即下载抖音视频时需要具备哪些功能,如:- 下载指定抖音视频链接的无水印视频- 可以输入多个链接同时下载- 下载过程中需要有进度条展示- 下载完成后需要有提示音效果 2. 准备开发环境和相关模块 在进行Python GUI开发前,…

    python 2023年6月3日
    00
  • 查找Numpy数组中每个字符串元素的长度

    要查找Numpy数组中每个字符串元素的长度,可以使用Numpy中的vectorized函数。 首先,需要创建一个包含字符串的NumPy数组,假设数组名为arr。 示例1: import numpy as np arr = np.array([‘hello’, ‘world’, ‘numpy’]) # 定义vectorized函数 vec_count = np…

    python-answer 2023年3月25日
    00
  • python中的全局变量与局部变量

    1,局部变量与全局变量 1,定义 局部变量:就是在函数体内的变量,在python中冒号“:”后面的变量都是局部变量,当然局部与全局也是一个相对的概念。比如出现函数嵌套的情况。 全局变量:就是在模块中所有函数都可以调用的变量,一般在函数体外被定义。   2,使用过程 函数内的局部变量,在函数体外是不可以使用的,函数内的变量就是局部变量,只在函数体内生效。 例如…

    python 2023年4月25日
    00
合作推广
合作推广
分享本页
返回顶部