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

自己做网站怎么做的梁山网站建设公司

自己做网站怎么做的,梁山网站建设公司,网页怎么制作超链接,小程序是什么意思背景: 项目需要对数仓千万级数据进行分析、算法建模。因数据安全,数据无法大批量导出,需在集群内进行分析建模,但CDH集群未安装python3 环境,需在无网情况下离线配置python3环境及一系列第三方库。 采取策略&#xf…

背景:

项目需要对数仓千万级数据进行分析、算法建模。因数据安全,数据无法大批量导出,需在集群内进行分析建模,但CDH集群未安装python3 环境,需在无网情况下离线配置python3环境及一系列第三方库。

采取策略,使用外部联网linux环境创建python3虚拟环境,然后整体迁移集群环境

文章目录

          • 1. 外部机器和集群统一安装anaconda3环境[官网下载地址](https://www.anaconda.com/download#downloads)
          • 2. 外部机器安装pyhive、impyla、pyspark、ipykernel
          • 3. 环境迁移
          • 4. 问题解决(坏的解释器:没有那个文件或目录)
          • 5. jupyterlab 内核生成
          • 6. pyhive、impyla连接测试
          • 7. pyspark 对接CDH集群spark测试【pyspark版本要和集群CDH spark版本一致】

1. 外部机器和集群统一安装anaconda3环境官网下载地址
>> sh Anaconda3-2023.03-1-Linux-x86_64.sh
2. 外部机器安装pyhive、impyla、pyspark、ipykernel
>> conda create -n python3.7 python=3.7  # 创建py3.7虚拟环境,CDH集群spark2.4.0最高支持python3.7
>> conda activate python3.7       # 激活虚拟环境
>> pip install pyhive,impyla,pyspark # pip会自动安装thrif等依赖包,若报gcc等系统问题,具体问题百度分析
>> pip install ipykernel        # 创建jupyter内核使用,使用jupyterlab远程进行数据分析
>> pip install scikit-learn、lightgbm # 安装其他需要第三方库
3. 环境迁移
外部机器/anaconda3/envs>> zip -r python3.7.zip ./python3.7  # 压缩整个虚拟环境
集群/anaconda3/envs>> unzip python3.7.zip                  # 大功告成
4. 问题解决(坏的解释器:没有那个文件或目录)

迁移后 >> ./pip 提示 找不到python解释器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NTKhm2QL-1692673902815)(C:\Users\zy\Desktop\集群离线配置python3+jupyterlab+pyspark+impyla.assets\image-20230801101207769.png)]

迁移后 ipykernel 提示找不到python解释器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QvUlMG9n-1692673902816)(C:\Users\zy\Desktop\集群离线配置python3+jupyterlab+pyspark+impyla.assets\image-20230815102600598.png)]

解决:

进入envs/python3.7/bin 下,修改pip、pip3、ipykernel等命令内容,将第一行改为集群python对应路径。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jGdIrACZ-1692673902816)(C:\Users\zy\Desktop\集群离线配置python3+jupyterlab+pyspark+impyla.assets\image-20230801101924909.png)]

5. jupyterlab 内核生成
#1 激活、退出虚拟环境
>> conda activate python3.7    [conda deactivate]#2. 虚拟环境下
>> ipython kernel install --user --name=python3.7#3. 重启jupyter-lab 查看即可
>> nohup ./jupyter-lab --allow-root > /data/xx/anaconda3/log.out &# 备注:jupyterlab 服务由anaconda3主环境base创建
>> jupyter-lab --generate-config (配置远程访问)
>> vim jupyter_lab_config.py
'''
c.ServerApp.ip = '0.0.0.0'
c.ServerApp.port = 8888
c.ServerApp.passwd = 8888
c.ServerApp.notebook_dir = '/data/xx/anaconda3/data'
c.ServerApp.open_browser = False
c.NotebookApp.passwords = {'user1': 'sha1:user1_password_hash', # >> python -c "from notebook.auth import passwd; print(passwd())" 生成用户密码'user2': 'sha1:user2_password_hash','user3': 'sha1:user3_password_hash'
}
'''

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oZ45Demg-1692673902817)(C:\Users\zy\Desktop\集群离线配置python3+jupyterlab+pyspark+impyla.assets\image-20230822105553580.png)]

6. pyhive、impyla连接测试
from pyhive import hive
from impala.dbapi import connect
from impala.util import as_pandas## python 读取数仓第一种方式  hive:jbdc
# pyhive 连接
conn = hive.Connection(host='namenode',port=10000,database='库名')
cursor = conn.cursor()# 执行查询
cursor.execute('desc user_info')
col_name = [i[0] for i in cursor.fetchall()]
cursor.execute('select * from user_info limit 2')
data = cursor.fetchall()
print(pd.DataFrame(data=data,columns=col_name))# 关闭hive连接
cursor.close()
conn.close()## python 读取数仓第二种方式  impala:jbdc
# 连接impala
conn = connect(host='namenode',port=21050,database='库名')
cursor = conn.cursor()# 执行查询
cursor.execute('select * from user_info where name is not null')
data = as_pandas(cursor)

备注:使用pyhive和impyla 读取数据,还是读取到一台集群节点内存上,速度慢,占内存,且分析比较困难,适合小批量处理。如处理千万级数据,还是使用pyspark进行并行分析。

7. pyspark 对接CDH集群spark测试【pyspark版本要和集群CDH spark版本一致】
## python 分析大量数据 pyspark
import os
from pyspark import SparkContext,SparkConf
from pyspark.sql import SparkSessionimport warnings
warnings.filterwarnings(action='ignore')# 制定集群spark、hadoop家目录os.environ['SPARK_HOME'] = '/opt/cloudera/parcels/CDH-6.3.4-1.cdh6.3.4.p0.6751098/lib/spark'
os.environ['HADOOP_CONF_DIR'] = '/opt/cloudera/parcels/CDH-6.3.4-1.cdh6.3.4.p0.6751098/lib/hadoop'
os.environ['PYSPARK_PYTHON'] = './py3/bin/python' parameters = [('spark.app.name','sklearn'),('spark.yarn.dist.files','hdfs://namenode:8020/python3/python3.7.zip#py3')('spark.master','yarn'),('spark.submit.deploymode','client'),]conf = SparkConf().setAll(parameters)
#sc = SparkContext.getOrCreate(conf=conf)
spark = SparkSession.builder.config(conf=conf).enableHiveSupport().getOrCreate()
spark

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hcaapiDV-1692673902817)(C:\Users\zy\Desktop\集群离线配置python3+jupyterlab+pyspark+impyla.assets\image-20230822110440084.png)]
备注:一般会报
Permission denied: user=root, access=WRITE, inode=“/user/spark/applicationHistory”:spark:spark:drwxr-xr-x 权限错误,
这是因为写代码得用户时jupyter服务启动用户,而CDH 中hadoop、hive、spark 文件的用户分别为hdfs、hive、spark用户。

http://www.yayakq.cn/news/679992/

相关文章:

  • 网站开发技术教程手机电商平台怎么做的
  • 网站推广问题怎么做百度网盘链接网站
  • 怎么做网站底部文件wordpress网站无法访问
  • 凡科建站免费淘宝网页设计网站
  • 广州网站建设费用多少网站转化低的原因
  • 广州 网站备案中装建设股票
  • 网站建设面试对策广东省建设职业注册中心网站
  • 东莞建设网官方网站首页js+下载服务器wordpress
  • 自己做的网站用别的电脑怎么访问洛阳做网站
  • 专业做毕业设计网站个人工作室 网站建设
  • 湖南长沙网站建设公司电话注册安全工程师考试结果查询
  • 百度网站快速排名公司wordpress窗口堆叠错误
  • 怎么申请自己的网站如何提高网站设计能力
  • 自建手机网站做网站是不是要学编程
  • 关于网站开发的商业计划书毕业设计网站论文
  • 做新浪网网站所需的条件优化大师电脑版下载
  • html5 做网站贵州省建设学校网站首页
  • 淘宝网站建设可行性分析报告it咨询公司排名
  • 专业律所网站建设重庆大渝网首页
  • 价格套餐网站wordpress模板代码编辑插件
  • 网站开发有哪些风险足球比赛直播比分直播
  • 泰国购物网站大全网络推广有前途吗
  • 有什么专门做电子琴音乐的网站科技与生活
  • ps网站页面设计教程wordpress的pjax主题
  • 潍坊网站建设托管网站服务器类型查询
  • 长岭网站优化公司深圳燃气公众号
  • 安徽网站推广注册证查询网站
  • 网站建设及安全制度如何提高网站的用户粘度
  • 网站代理被抓校园网站开发设计报告
  • 网站设计师岗位职责wordpress4.9.2