欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Jupyter notebook搭建Spark集群開發(fā)環(huán)境的詳細(xì)過程

 更新時(shí)間:2021年10月12日 11:38:59   作者:apr鵬鵬  
Jupyter Notebook是一個(gè)開源并且使用很廣泛項(xiàng)目,本文介紹如何基于Jupyter notebook搭建Spark集群開發(fā)環(huán)境,通過實(shí)例截圖相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧

一、概念介紹:

1、Sparkmagic:它是一個(gè)在Jupyter Notebook中的通過Livy服務(wù)器 Spark REST與遠(yuǎn)程Spark群集交互工作工具。Sparkmagic項(xiàng)目包括一組以多種語言交互運(yùn)行Spark代碼的框架和一些內(nèi)核,可以使用這些內(nèi)核將Jupyter Notebook中的代碼轉(zhuǎn)換在Spark環(huán)境運(yùn)行。

2、Livy:它是一個(gè)基于Spark的開源REST服務(wù),它能夠通過REST的方式將代碼片段或是序列化的二進(jìn)制代碼提交到Spark集群中去執(zhí)行。它提供了以下這些基本功能:提交Scala、Python或是R代碼片段到遠(yuǎn)端的Spark集群上執(zhí)行,提交Java、Scala、Python所編寫的Spark作業(yè)到遠(yuǎn)端的Spark集群上執(zhí)行和提交批處理應(yīng)用在集群中運(yùn)行

二、基本框架

為下圖所示:

三、準(zhǔn)備工作:

具備提供Saprk集群,自己可以搭建或者直接使用華為云上服務(wù),如MRS,并且在集群上安裝Spark客戶端。同節(jié)點(diǎn)(可以是docker容器或者虛擬機(jī))安裝Jupyter Notebook和Livy,安裝包的路徑為:https://livy.incubator.apache.org/download/

四、配置并啟動Livy:

修改livy.conf參考:https://enterprise-docs.anaconda.com/en/latest/admin/advanced/config-livy-server.html

添加如下配置:

livy.spark.master = yarn
livy.spark.deploy-mode = cluster
livy.impersonation.enabled = false
livy.server.csrf-protection.enabled = false
livy.server.launch.kerberos.keytab=/opt/workspace/keytabs/user.keytab
livy.server.launch.kerberos.principal=miner
livy.superusers=miner

修改livy-env.sh, 配置SPARK_HOME、HADOOP_CONF_DIR等環(huán)境變量

export JAVA_HOME=/opt/Bigdata/client/JDK/jdk
export HADOOP_CONF_DIR=/opt/Bigdata/client/HDFS/hadoop/etc/hadoop
export SPARK_HOME=/opt/Bigdata/client/Spark2x/spark
export SPARK_CONF_DIR=/opt/Bigdata/client/Spark2x/spark/conf
export LIVY_LOG_DIR=/opt/workspace/apache-livy-0.7.0-incubating-bin/logs
export LIVY_PID_DIR=/opt/workspace/apache-livy-0.7.0-incubating-bin/pids
export LIVY_SERVER_JAVA_OPTS="-Djava.security.krb5.conf=/opt/Bigdata/client/KrbClient/kerberos/var/krb5kdc/krb5.conf -Dzookeeper.server.principal=zookeeper/hadoop.hadoop.com -Djava.security.auth.login.config=/opt/Bigdata/client/HDFS/hadoop/etc/hadoop/jaas.conf -Xmx128m"

啟動Livy:

./bin/livy-server start

五、安裝Jupyter Notebook和sparkmagic

Jupyter Notebook是一個(gè)開源并且使用很廣泛項(xiàng)目,安裝流程不在此贅述

sparkmagic可以理解為在Jupyter Notebook中的一種kernel,直接pip install sparkmagic。注意安裝前系統(tǒng)必須具備gcc python-dev libkrb5-dev工具,如果沒有,apt-get install或者yum install安裝。安裝完以后會生成$HOME/.sparkmagic/config.json文件,此文件為sparkmagic的關(guān)鍵配置文件,兼容spark的配置。關(guān)鍵配置如圖所示

其中url為Livy服務(wù)的ip和端口,支持http和https兩種協(xié)議

六、添加sparkmagic kernel

PYTHON3_KERNEL_DIR="$(jupyter kernelspec list | grep -w "python3" | awk '{print $2}')"
KERNELS_FOLDER="$(dirname "${PYTHON3_KERNEL_DIR}")"
SITE_PACKAGES="$(pip show sparkmagic|grep -w "Location" | awk '{print $2}')"
cp -r ${SITE_PACKAGES}/sparkmagic/kernels/pysparkkernel ${KERNELS_FOLDER}

七、在Jupyter Notebook中運(yùn)行spark代碼驗(yàn)證:

八、訪問Livy查看當(dāng)前session日志:

到此這篇關(guān)于基于Jupyter notebook搭建Spark集群開發(fā)環(huán)境的詳細(xì)過程的文章就介紹到這了,更多相關(guān)基于Jupyter notebook搭建Spark集群開發(fā)環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • VS CODE 使用SVN插件的方法步驟

    VS CODE 使用SVN插件的方法步驟

    這篇文章主要介紹了VS CODE 使用SVN插件的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • ChatGPT與Remix?Api服務(wù)在瀏覽器url地址中對話詳解

    ChatGPT與Remix?Api服務(wù)在瀏覽器url地址中對話詳解

    這篇文章主要為大家介紹了ChatGPT與Remix?Api服務(wù)在瀏覽器url地址中對話詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • TypeScript類型檢查詳談及火爆原因

    TypeScript類型檢查詳談及火爆原因

    這篇文章主要為大家介紹了TypeScript類型檢查以及火爆原因,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 插件下載安裝系列Eclipse/IDEA/谷歌/火狐安裝插件

    插件下載安裝系列Eclipse/IDEA/谷歌/火狐安裝插件

    這篇文章主要介紹了插件下載安裝系列Eclipse/IDEA/谷歌/火狐,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • SecureCRT的使用超詳細(xì)教程

    SecureCRT的使用超詳細(xì)教程

    SecureCRT是Windows下登錄UNIX或Linux服務(wù)器主機(jī)的軟件,優(yōu)點(diǎn)是可以一次創(chuàng)建多個(gè) Tab Page,連接多臺遠(yuǎn)程主機(jī),下面給大家介紹下SecureCRT的使用超詳細(xì)教程,感興趣的朋友一起看看吧
    2021-11-11
  • 使用 tke-autoscaling-placeholder 實(shí)現(xiàn)秒級彈性伸縮的方法

    使用 tke-autoscaling-placeholder 實(shí)現(xiàn)秒級彈性伸縮的方法

    這篇文章主要介紹了使用 tke-autoscaling-placeholder 實(shí)現(xiàn)秒級彈性伸縮的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • vscode使用nuget包管理工具

    vscode使用nuget包管理工具

    這篇文章介紹了vscode使用nuget包管理工具的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • HttpGet請求與Post請求中參數(shù)亂碼原因剖析與解決方案

    HttpGet請求與Post請求中參數(shù)亂碼原因剖析與解決方案

    這篇文章主要介紹了HttpGet請求與Post請求中參數(shù)亂碼原因剖析,文中有相關(guān)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-07-07
  • ChatGPT平替-?ChatGLM多用戶并行訪問部署過程

    ChatGPT平替-?ChatGLM多用戶并行訪問部署過程

    這篇文章主要介紹了ChatGPT平替-?ChatGLM多用戶并行訪問部署,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • git版本庫介紹及本地創(chuàng)建的三種場景方式

    git版本庫介紹及本地創(chuàng)建的三種場景方式

    這篇文章主要為大家介紹了git版本庫以及本地創(chuàng)建的三種場景方式圖文教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-04-04

最新評論