自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(140)
  • 收藏
  • 关注

原创 使用cube studio开发机器学习建模的pipeline

在使用cube studio进行模型训练或推理的过程中,我们有时会发现没有符合自己要求的模板,此时我们就需要自己创建模板,并构建pipeline,以便今后在相似的建模或监控场景中直接使用,方便复用和调度。以下就以构建random forest建模的pipeline为例,记录一下如何用cube studio构建pipeline。

2023-04-29 12:55:04 3346 4

原创 k8s部署hadoop

配置和模板参考helm仓库:https://artifacthub.io/packages/helm/apache-hadoop-helm/hadoop。

2024-03-15 21:52:28 348

原创 helm部署hadoop

比如我现在只有1个datanode,我想改成3个datanode,复制粘贴配置信息到values.yaml(没有就自己创建),更改datanode的replicas为3,先卸载,再重新执行install命令。如果需要修改配置,在官方仓库中,点击default values按钮,可以获取默认的配置,将配置信息粘贴到values.yaml,通过helm uninstall卸载后,再通过命令。可以根据新配置重新部署。

2024-03-15 21:40:34 302 1

原创 influxdb2使用

influxdb2是不支持sql的,在web界面可以看到具体的使用命令,比如写入数据,可以直接用influx write命令来写,下面我们尝试把一个csv文件写入数据库,再查询。在页面上,data-bucket-submit可以查看,但是看不太懂那个图,再用官方示例数据试试。先在k8sdashboard找到influx的pod,点击执行,即可进入命令行界面。influxdb2首次使用时,通过k8s部署的,所以进入pod内部执行命令。除了命令行,直接通过ip+端口的形式也是可以访问web界面的。

2024-03-14 18:06:26 326

原创 k8s部署InfluxDB

pv和pvc都创建成功,但dp显示no such file or directory,说明读取不到主机路径,修改了rancher的配置,加入了/home目录,就可以了。主机看到的和实际pv挂载的路径不一致,实际默认根目录是/data.根据配置文件创建configmap。

2024-03-13 23:36:32 377

原创 datax错误记录:1. 找不到插件[streamwriter,clickhouse];2.有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数

datax使用clickhouse导出数据时配置json的官方文档:https://github.com/alibaba/DataX/blob/master/clickhousereader/doc/clickhousereader.md。这个问题我用的是偷懒的方法,直接把json配置中的speed下面的byte参数删掉了,只保留了channel,问题解决,也有更复杂的办法,修改datax的配置的,我没有去动datax的配置,网上也能搜到,这里不赘述了,

2024-03-12 20:35:49 209

原创 python调用clickhouse并把结果存储为csv

【代码】python调用clickhouse并把结果存储为csv。

2024-03-12 15:31:48 91

原创 python调用clickhouse

使用clickhouse-driver包,先通过pip install clickhouse-driver安装包,再通过以下代码执行sql。

2024-03-12 11:30:47 284

原创 使用helm部署clickhouse

这个问题的解决方案,目前只找到一个修改权限,改为root权限的,可能不是最好的,但修改后确实pod可用了,具体是将zk-clickhouse的yaml文件中的spec部分修改securityContext,原来都是1000,没有创建文件的权限。ot权限后,再重启pod依然是ok的,猜测可能是后续不需要再创建文件夹了,因为挂载目录下的文件夹已经存在,其他操作又都不需要root权限。比较神奇的事情是,一开始不是root权限,修改为root权限后,文件夹创建成功,再修改为非ro。部署clickhouse客户端。

2024-03-11 18:07:58 733

原创 dolphin schedulerAPI调用(二)——创建任务

工作流code、项目code、上流节点code等可以在后端是数据库查询,可以在k8s上查看一下起的数据库是mysql还是postgresql,我这边是postgresql,根据values.yaml中配置的账号密码信息登录到数据库,可以查询到code。实际使用中,发现文档写得很不全乎,创建任务的api接口不对,具体的传参文档中也没写全,于是决定直接在前端查看创建任务实际调用的api,以及传递的参数。打开dolphinscheduler的界面,右键,检查,选择network,提交任务,查看api及参数。

2024-03-11 14:27:32 514 6

原创 dolphinescheduler调用API

language=zh_CN&lang=cn,我是用k8s部署的,所以ip和端口是由service决定的,一般访问文档是在集群外的机器访问,要记得把dolphinscheduler-api的service中的type改为NodePort,端口也不一定是12345,要看你的service暴露的是哪个端口。官方的api使用文档:https://dolphinscheduler.apache.org/zh-cn/docs/3.2.1/guide/api/open-api。返回结果显示创建成功,上ui看看。

2024-03-05 21:44:05 699

原创 dolphinscheduler试用(一)(边用边修bug。。。。create tenant error)

我这个是standalone,修改/home/apache-dolphinscheduler-3.1.8-src/deploy/kubernetes/dolphinscheduler/values.yaml,我的resource.storage.type本身就是HDFS,所以只改动resource.hdfs.fs.defaultFS: file:///,重新用helm部署一下,再用就可以创建租户了。工作流创建完成后,默认是下线状态,点击“上线”,再点击运行,即可运行工作流。项目管理-创建项目-保存。

2024-03-05 17:17:06 784

原创 在k8s上部署dolphinscheduler

1.下载安装包,下载地址:https://dolphinscheduler.apache.org/zh-cn/download/3.1.8,通过命令wget -c https://archive.apache.org/dist/dolphinscheduler/3.1.8/apache-dolphinscheduler-3.1.8-src.tar.gz下载;以下步骤安装的是二进制版本,如果通过脚本安装,可以直接参考链接:https://helm.sh/docs/intro/install/。

2024-03-04 21:16:26 987 2

原创 k8s单机部署zookeeper

参考文章:https://blog.csdn.net/fushan2012/article/details/129556052。出现以上图片,表示可以正常执行zookeeper。

2024-03-01 21:26:35 336

原创 k8s部署mysql

一、前置条件已部署k8s,服务端版本为1.21.14二、部署mysql执行下面的命令来创建configmap。mysql默认都是Root用户,所以只填了个密码。执行下面的命令来创建pv及pvc。kubectl创建deployment。这一步一开始我mountPath搞错了,然后在k8sdashboard上看pod日志才发现哪里错了,所以验证有问题时要注意排查。kubectl创建service。

2024-02-29 15:43:33 436

原创 K8S部署postgresql

主要是要注意其中selector的app和metadata中的app名称要一致,另外引入的configmap名称要和前面的configmap一致等等。创建好yaml文件后,通过kubectl创建deployment。replica写1就好,数据库的副本数一般1就够了,避免读写冲突。注意targetPort要和deployment暴露出来的一致,否则无法转发到deployment创建的pod。同样,写好yaml之后通过kubectl apply -f创建service。4. 创建deployment。

2024-02-28 21:24:07 818

原创 k8s学习笔记-基础概念

11. deployment部署的是服务pod,所以才有下面这张图是吗?是不是表示,deployment部署服务pod,然后service可以去代理对应标签的服务pod?所以daemonset部署的应该不是服务pod,而是监控的pod对吗?

2024-02-24 21:26:46 862

原创 没有安装拼多多却总是弹出拼多多的广告

(作者:陈玓玏)最近发现明明没安装拼多多,却总是弹出拼多多的广告,严重影响了我耍手机!!基本上是你玩任何一个APP都会自动弹出拼多多广告的程度!!一定要找出这个垃圾app,卸载掉!!但是搞了一堆扫描,也没找到是哪个APP推送的。找了好久才找到办法,记录一下。。。手机的设置中,找到应用设置,找到应用管理,找到应用行为记录,就能看到有一个桌面上图标都没有的垃圾软件,推送也不显示图标,1分钟就要推送一次广告!!!!一分钟就要读取一次我的应用列表!!!!果断卸载,世界都清净了。。。。每个人的手机可能不一样,但总之就

2022-06-27 10:49:33 6640

原创 机器学习平台cube studio部署

(作者:陈玓玏)想要部署机器学习平台,但平台对机器还是有一定要求的,所以在腾讯云购买了一台服务器,配置信息如下,以避免在部署过程中因为机器的性能问题而部署失败。购买完成后,直接登录服务器,是酱紫的打开机器学习平台的主页,网比较好就看https://github.com/tencentmusic/cube-studio,网不太好就看https://gitee.com/data-infra/cube-studio,滑到平台部署那个位置,直接看怎么部署!部署流程和所需环境在install/readme.

2022-05-27 09:07:06 4036 3

原创 通过Pycharm中的版本控制工具VCS使用Git

日常开发中,如何使用git做好版本管理是个很重要的课题,除了在Git Bash中使用命令行来管理代码外,我们还有更简洁的,不通过命令行来管理代码,追踪变动的工具,就是直接在IDE中使用VCS,对于Python开发同学来说,这个IDE通常就是Pycharm。​clone项目在弹出的对话框中输入项目地址,并选择本地存储位置即可完成clone。如果是要新建一个项目,有两种方法:一. 可以直接在VCS中选择VCS - > Import into Version Control -> Cr

2021-04-08 11:33:38 6680 1

翻译 2021及之后的云原生预测

原文地址:https://www.aniszczyk.org/2021/01/19/cloud-native-predictions-for-2021-and-beyond/本文内容翻译自Chris Aniszczyk的个人博客我希望每个人都能度过一个美好的假期,因为2021年1月的头几个星期,从暴动到新的COVID毒株都相当疯狂。 在云原生领域,CNCF最近发布了有关我们去年完成的所有工作的年度报告。 我建议大家趁此机会阅读这份报告,鉴于大流行情况,我们度过了坚实的一年。https://twitte

2021-04-08 11:28:36 1023

原创 Pyspark获取hdfs上多个文件

(作者:陈玓玏)这个需求可以一分为二:我想直接读取所有文件并合并结果;我想获取文件路径,然后再一个一个获取结果。第一种,可以用sc.textFile(path),直接批量读取文件第二种,我暂时没找到pyspark里的好方法,所以我直接用命令行+解析命令行结果的操作进行的。命令行获取文件路径:d = os.popen("hadoop fs -ls /user/log/ctm_api_logs | awk ‘{print $8}’ ").read().split(’\n’)解析命令

2020-11-17 14:30:21 3888

原创 Python读取snappy后缀文件

(作者:陈玓玏)需要读取个hbase表调用的日志文件,是snappy后缀的。snappy是压缩文件,如果要读取其中内容,我们需要先进行解压操作。#不是这个包pip3.6 install snappy --user#是这个包pip3.6 install python-snappy --user安装好之后,python3.6进入python,读文件的时候最好加上’rb‘,否则可能报编码问题import snappycompressed = open('logs.snappy','rb').r

2020-11-17 14:25:08 4597 4

转载 如何阅读公司年报

2020-09-02 18:14:15 994

原创 Bert源码修改完成多分类任务

(作者:陈玓玏 data-master)一直以来,我自己处理文本分类都是用的正则,但正则需要经常去维护,短信模板如果更新了,就需要考虑把新模板加到正则表达式中。这样其实挺费神的,虽然我们可以使用pyltp对文本做一些机构名/人名的替换,然后将文本去重,清洗出相对好提取正则的模板,但分类和消息来源多了之后,需要处理,测试的模板量还是很大的,所以就想,能不能把已经用正则进行分类的文本,以及正则判别出的分类做label,然后用bert进行文本分类,这样就不需要自己手动去更新正则表达式啦。但是关于bert,网上

2020-08-25 18:00:31 2859 4

转载 预训练语言模型在网易严选的应用

导读:随着Bert的发布,预训练 ( pre-train ) 成为NLP领域最为热门的方向之一,大规模的无监督语料加上少量有标注的语料成为了NLP模型的标配。本文将介绍几种常见的语言模型的基本原理和使用方式,以及语言模型在网易严选NLP业务上的实践,包括分类、文本匹配、序列标注、文本生成等。01前言文本的表征经历了漫长的发展历程,从最简单经典的bow词袋模型、以LDA为代表的主题模型、以word2vec为代表的稠密向量模型、到现在以Bert为代表的通用语言模型。词语是文本细粒度的表达,早期的预训练词向

2020-08-06 22:32:53 1267 1

原创 spark错误记录:Container on host: was preempted(没有彻底解决,只是理解这个问题)

(作者:陈玓玏 data-master)spark-sql任务跑着跑着,碰到一个bug:Container on host: was preempted又是一个新鲜的bug呢!!一通查资料,得出一个初步结论:因为我的任务,其中有task占用的内存太大,而我们的yarn又是使用的公平调度机制,当有新任务来的时候,我的task对应的容器就会被别的任务抢占。于是就简单了解下yarn的公平调度机制。yarn有先入先出调度器,容量调度器,公平调度器三种调度器。先入先出调度器,先来的任务先执行,任务

2020-07-28 17:09:17 3208 1

原创 Spark报错:The pivot column feature has more than 10000 distinct values

(作者:陈玓玏 data-master)用pyspark做窄表转宽表的时候,出现报错:pyspark.sql.utils.AnalysisException: u'The pivot column feature has more than 10000 distinct values, this could indicate an error. If this was intended, set spark.sql.pivotMaxValues to at least the number o

2020-07-27 18:26:47 1304

原创 Spark报错:grows beyond 64 KB

(作者:陈玓玏 data-master)spark脚本执行中,碰到错误:2020-06-24 16:59:53,246 [Thread-44] ERROR org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator - failed to compile: org.codehaus.janino.InternalCompilerException: Compiling "GeneratedClass": Code of meth

2020-07-22 22:59:49 3380

原创 加载模型文件后,进行predict时报错feature_names not match

(作者:陈玓玏 data-master)记一个很早以前碰到的bug。每次训练模型,我们都要保存模型文件。比如训练好一个xgboost模型,我们通过joblib来保存模型文件:import joblibjoblib.dump('xgb_model.pkl')那我们下次再加载模型,进行预测的时候model = joblib.load('xgb_model.pkl')y_pred = model.predict_proba(X)[:,1]报错:feature_names not match

2020-07-22 16:39:06 1722

原创 Hive中插入数据全为空(sql无误的情况下)

(作者:陈玓玏 data-master)如果sql无误的情况下,其实这个问题很好解决。一个很可能的原因就是:写入的数据类型和建表时定义的数据类型不一致。我之前碰到这个问题,检查了sql很多遍,上层表的数据也检查了很多遍,都是没有问题的。这个时候,可以选择几条数据,不写入表,直接看结果,发现是有结果的。再检查建表语句,发现建表语句是:create table tmp.a(id int,name string,class_one float,class_two float,class_thr

2020-07-22 16:20:48 4903

原创 Hive中怎么快速复制分区表

(作者:陈玓玏 data-master)我们在hive中操作底层表时,经常会在临时库中做一些测试,然后再把一些测试过程中产生的需要长期保留的结果固化到线上库中。或者是在进行数据库的大清理时,产生大量数据迁移的需求,这时候我们需要知道怎么样迁移hive表。举个栗子,比如我现在要将表A迁移为表B,以下步骤:建立一个结构相同的表;create table tmp.B like tmp.A;这样我们就建立了一个和表A结构完全一模一样的表B,但是里头是没人任务数据的,因为create like只复制

2020-07-22 15:51:40 2314

原创 设置jupyter可启动python2或python3作为kernel

(作者:小白白白又白cdllp,data-master.net)很多时候,虽然我们习惯用某个版本的python,但可能需要使用的python版本会发生改变,比如我们在合作方的机器环境下使用python时,或者拿到一份其他版本的python代码但又没时间改代码时。那么最方便的方法还是,我们让python2和python3并存,我们可以选择使用哪个版本。1. 安装python2和python3环境实现这个目标的前提,就是我们本机需要同时有python2和python3的环境,所以我们需要同时安装pyth

2020-06-20 20:27:48 2555

原创 Hive return code 2以及concat与concat_ws的区别

(作者:陈玓玏data-master.net)一、 Return code 2错误用hive跑数的时候,常会碰到一个错误:FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask关于这个错误,网上有挺多解决方法的,有说将引擎换成Tez的,这个我试过,似乎没成功,有的人成功了。说明这个return code 2的根本原因可能是不一样的。有说是数据量的问题的,这种情况我也碰到过,就是

2020-05-31 22:19:28 1476

原创 Hive表查看各个分区的更新时间

(作者:陈玓玏data-master.net)'查看hive各分区更新的时间:show create table dev.cdl_monitor;找到LOCATION,表示的就是hive表的数据存放的路径(下面的图片,有些信息被我隐掉啦,不过不影响阅读)找到路径后,在命令行输入以下命令hdfs dfs -ls hdfs://nameservice1/user/hive/warehouse/dev.db/cdl_monitor这样就能看到每个分区更新的时间了。如果你的表不止一个分区,而你

2020-05-31 19:49:29 7228

原创 Hive的架构

(作者:www.data-master.net 数据极)Hive是基于Hadoop的没所以其底层是Hadoop,主要由Data Node和Name Node组成,Data Node存放真实数据,而Name Node存放哪些数据放在哪台机器上这些信息。每一次的计算还会启动Job,所以Hadoop中还会包括Job跟踪及管理的工作,Hive的语句中,大多数命令都可能会启动计算,比如select co...

2020-05-31 19:36:55 1085

翻译 Elastic Search中如何查看索引数据?

(www.data-master.net 数据极)问题:我遇到了ElasticSearch和Rails的问题,由于attr_protected,一些数据没有正确编入索引。Elastic Search在哪里存储索引数据?怎么检查实际索引数据是否错误呢?检查映射的命令Tire.index(‘models’).mapping没有帮助,仅列出字段。(www.data-master.net 数据极)...

2020-05-31 19:36:42 29906 1

原创 Anaconda中安装不同版本的python并安装对应包

(作者:陈玓玏)在实际使用Python的过程中,我们常常需要安装不同版本的Python环境,并且安装相应的各个package。这里我们解决三个问题:anaconda中如何安装多个版本的Python;anaconda中如何安装不同版本的Python对应的各个package;如何改变镜像源加速下载。一. anaconda中如何安装多个版本的Python1)在开始菜单中找到anacon...

2020-05-31 19:36:25 10324

原创 Hive解决return code 3问题

(作者:陈玓玏)1. 问题描述使用hive跑数时,出现return code 3的错误,但没有报出代码中具体位置的错误。2. 问题原因具体原因不是非常清楚,但是网上提到的原因最有可能的是数据倾斜导致的,具体的表现就是任务执行的时间非常长,并且执行了非常长的时间之后还失败了,出现code 3错误。这类错误一般不是代码有逻辑或语法问题,而是数据层面的问题,向code 2也是这样,之前碰到的c...

2020-05-31 19:36:04 7819

原创 查找hive表的存储位置并查看表文件大小及分区文件名

(作者:陈玓玏)有时候我们需要查看Hive表对应文件的文件大小,

2020-05-31 19:35:46 11806

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除