当前位置: 首页 > news >正文

江西省城乡建设培训网站官方网站重庆奉节网站建设公司推荐

江西省城乡建设培训网站官方网站,重庆奉节网站建设公司推荐,网站建设的规划,陆良建设局网站文章目录 准备连接hive的配置申请kerberos tgt在scala项目启动本地spark本地Jupyter Notebook启动pyspark 解决在wsl下进行开发、调试时,需要连接kerberos鉴权的hdfs、hive的问题 准备连接hive的配置 core-site.xml、hdfs-site.xml、yarn-site.xml、hive-site.xml复…

文章目录

  • 准备连接hive的配置
  • 申请kerberos tgt
  • 在scala项目启动本地spark
  • 本地Jupyter Notebook启动pyspark

解决在wsl下进行开发、调试时,需要连接kerberos鉴权的hdfs、hive的问题

准备连接hive的配置

core-site.xml、hdfs-site.xml、yarn-site.xml、hive-site.xml复制到本地;
不知道为什么yarn-site.xml里的配置也必须存在,即使不使用yarn运行spark

申请kerberos tgt

在/etc/krb5.conf记录账户域名对应的授权服务地址,注意配置default_ccache_name(Ticket Granting Ticket存放路径)的格式,让java程序能够自动读取到tgt

[libdefaults]dns_lookup_realm = falseticket_lifetime = 24hrenew_lifetime = 7dforwardable = truerdns = falsepkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crtspake_preauth_groups = edwards25519default_realm = COMPANY.UAT.COM# default_ccache_name = KEYRING:persistent:%{uid}default_ccache_name = FILE:/tmp/krb5cc_%{uid}
[realms]
COMPANY.UAT.COM = {kdc = 10.0.0.1admin_server = 10.0.0.1
}

申请当前操作系统用户的进程都可使用的tgt(Ticket Granting Ticket)

# 24小时过期,每天要执行一次
kinit -kt /etc/kerberos/hive.keytab hive@COMPANY.UAT.COM

使用klist命令可以看到已申请的tgt存储在/tmp/krb5cc_%{uid}文件里;
java默认会访问/etc/krb5.conf记录的授权服务地址,使用/tmp/krb5cc_%{uid}文件里的tgt信息,申请访问具体服务的ticket

在scala项目启动本地spark

连接配置文件全放到项目的src/test/resources后,可执行单元测试

import org.scalatest.funsuite.AnyFunSuite
import org.apache.spark.sql.SparkSessionclass SparkTest extends AnyFunSuite with BeforeAndAfterAll {val catalogImpl: String = "hive"lazy val spark: SparkSession = SparkSession.builder().appName("scala test").master("local[1]").enableHiveSupport()// 如果不使用kinit命令预先申请tgt,也可让spark自行申请// .config("spark.kerberos.keytab", "/etc/kerberos/hive.keytab")// .config("spark.kerberos.principal", "hive@COMPANY.UAT.COM")    .getOrCreate()test("select hive") {val df = spark.sql("select * from default.temp_test1 limit 10")df.printSchema()df.show()}test("sleep") {// 挂起测试线程,可在localhost:4040访问spark控制台,确认是否加载了hdfs、spark相关配置Thread.sleep(1000000)}
}

本地Jupyter Notebook启动pyspark

vscode的Jupyter插件自动为一个打开的.ipynb文件在本地启动一个对应的ipykernel_launcher,并支持为每个.ipynb文件指定python venv;
修改spark启动配置后,需要点击重启ipykernel的按钮,再重新运行启动spark的代码单元格。

在指定的python venv下,安装pyspark:

pip3 install pyspark==3.2.4

连接配置文件全放到本地/apps/conf/SPARK目录内

from pyspark.sql import SparkSession
import os
# spark-submit能够读取环境变量SPARK_CONF_DIR指定的配置目录
os.environ["SPARK_CONF_DIR"] = "/apps/conf/SPARK"
# pyspark调用spark-submit,启动driver
# 查看driver的java进程: ps -ef | grep pyspark-shell
spark = (SparkSession.builder.appName("pyspark test").master("local[1]").enableHiveSupport()# 下载hive相关依赖包.config("spark.sql.hive.metastore.version", "3.1.3").config("spark.sql.hive.metastore.jars", "maven").config("spark.jars.repositories", "https://maven.aliyun.com/repository/public").getOrCreate()
)

在后续notebook代码单元格里随意编辑、执行spark代码

df1 = spark.sql("SHOW TABLES IN default")
df1.show()
http://www.yayakq.cn/news/534119/

相关文章:

  • 做ppt的图片素材网站开淘宝网店的全流程
  • 律师事务所 网站模板做网站的公司怎么做业务
  • 杭州做网站用ps做网站的临摹
  • 网站建设中古典武侠中文字幕百度搜到自己网站
  • 微云怎么做网站全国企业查询系统
  • 中企动力网站建设 长春凡科网站 怎么开支付
  • 凡科二级网站怎么做兰州企业 网站建设
  • 儿童网站欣赏宁波万华建设
  • 南通网站建设公司排名优化网站要多少钱
  • 做网站的画布是多少世纪佳缘网站模板
  • 沈阳企业网站开发wordpress关键字替换
  • 编辑网站绑定清远市专业网站制作
  • 网站建设费用报价成立公司股权怎么分配
  • wordpress侧边栏html搜索引擎优化怎么推广
  • 太仓网站优化驰够网官方网站
  • 里水网站设计用什么l软件做网站了
  • 新春祝福图片在线制作网络优化培训要多少钱
  • 公司网页制作网站搭建网站是seo的入门
  • 网站描述代码常见的简单的营销软件
  • 广州网站空间财务公司如何找客户
  • 国外的旅游网站开发深圳宝安网站建设
  • 做金融培训的网站好的网站建设商家
  • 专业商城网站建设价格低企业融资的10种方法
  • 网站平面图要怎么做大学网站建设课程课综
  • 优秀国内个人网站社保网站做员工用工备案
  • 了解目前网站建设情况seo排名公司
  • 网站怎么做用密码网站开发校园经历范文
  • 新潮远网站建设西安网络推广优化培训
  • 8个公开大数据网站无锡网站建设上海韵茵
  • 聚合页做的比较好的教育网站谷歌浏览器不支持wordpress插件