- 博客(74)
- 资源 (2)
- 收藏
- 关注

原创 clickhouse笔记
官网文档:https://clickhouse.tech/docs/zh/spark读写clickhousespark读取clickhouse数据//一:这种jdbc的了连接加载的是全量表数据val prop = new java.util.Propertiesprop.setProperty("user", "default")prop.setProperty("password", "123456")prop.setProperty("driver", "ru.yandex.clickh
2020-05-14 11:40:59
1379
原创 企业微信添加机器人,监控实时任务,如果失败就重启,并向群里推送预警
企业微信添加机器人,监控实时任务,如果失败就重启,并向群里推送预警1.添加机器人只能在企业微信的群聊里才可加机器人,如下图右键群点击添加机器人,新建一个机器人,然后给机器人起个名字就好这个时候就会在群机器人那里看到你添加的机器人,鼠标放上去就会看到机器人的Webhook地址点击地址就可以打开机器人的配置说明了。配置文档很清晰就不多说了。2.重点:监控脚本编写编写检测实时任务是否挂掉的脚本,如果任务挂了就重启并执行微信推送脚本weixin_monitor.sh发送消息推送到企业微信群检测实
2020-07-31 15:13:30
1981
原创 git 几个常见使用场景
1.首次远程提交本地代码到仓库(删掉项目老的git文件,如果存在的话)1.git init2.git status 3.git add .4.git commit -m "first" 5.git status6.git remote add origin https://gitlab.ddd.com/dbwarehouse.git7.git pull orgin master8.git status9.git push origin master --force 2.首次
2020-07-31 14:59:17
403
原创 carbondata使用笔记
carbondata:列存储格式,与Spark进行了深度集成,兼容了Spark生态功能(SQL,DataFrame,ML等)carbondata文件结构CarbonData 为每个数据块创建一个文件,每个文件都包含 File Header, Blocklets 和 File Footer。file header:文件头 保存存储格式的版本和模式信息blocklet:最大容量64m,存储数据file footer:文件尾 存储数据的索引和摘要通过支持二级索引,提升查询性能第一级:文件级索引,
2020-05-14 18:25:55
670
1
原创 数仓中全量数据和增量数据的合并方案
两张表的字段都一样base:全量表log:增量表(包括新增和修改的数据)1. ****select * from base a where 0=(select count(1) from log b where a.id=b.id) union allselect * from log先查出base表有但log表没有的数据,再查出增量log的数据,两份数据合并即可2.开窗函数...
2020-03-19 19:43:51
5879
原创 datax介绍及生产脚本配置
常用数据抽取工具:kattle sqoop datax streamsetsstreamsets kattle:偏向etl,数据会做处理sqoop datax:偏向数据同步,数据不做处理直接拿streamsets主要是对一些数据做ETL处理,如果单纯做数据同步的话用阿里的datax速度更快,效率更高datax的详细教程可以去官网看 https://github.com/alibaba/Da...
2020-01-15 18:06:27
3589
原创 ML08 -- 聚类算法K-means
聚类算法K-meansK-means最简单的聚类算法属于无监督算法聚类算法和分类算法的对比-聚类分类核心将数据分成多个组,探索每个组的数据是否有联系从已经分组的数据中去学习,把新数据放到已经分好的组中去学习类型无监督,无需标签进行训练有监督,需要标签进行训练典型算法K-Means,DBSCAN,层次聚类决策树,贝叶斯,逻辑回归算法输出聚类...
2019-12-29 19:15:21
890
原创 ML07 -- 决策树
决策树非参数学习算法可以解决分类问题天然可解决多分类问题也可解决回归问题非常好的可解释性决策树算法以树状结构表示数据分类的结果。每个决策点实现一个具有离散输出的测试函数,记为分支。信息熵熵在信息论中代表随机变量不确定度的度量。熵越大,数据的不确定性越高熵越小,数据的不确定性越低或者表示一个物体内部的混乱程度P(X,Y)=P(X)*P(Y),X和Y两个事件相互独立。...
2019-12-22 18:12:20
373
原创 ML06 -- 逻辑回归
逻辑回归是解决分类问题的,本质是求概率再分类功能:做二分类(1/0)任务,并给出相应概率。比如区分是否是垃圾邮件银行判断用户是否会办信用卡在回归问题上再多做一步,就可以作为分类算法来使用了。逻辑回归只能解决二分类问题,如果是多分类问题,LR本身是不支持的。1.逻辑回归和线性回归的比较逻辑回归和线性回归同属于广义线性模型,前者解决分类问题而后者解决回归问题。他们的本质都是得到一条...
2019-12-15 21:12:45
672
原创 ML05 -- 最优化方法:梯度下降
梯度下降梯度下降是目前机器学习、深度学习解决最优化问题的算法中,最核心、应用最广的方法。什么是梯度下降法梯度下降是一种寻找函数极小值的方法。该方法最普遍的做法是:在已知参数当前值的情况下,按当前点对应的梯度向量的反方向,并按事先给定好的步长大小,对参数进行调整。按如上方法对参数做出多次调整后,函数就会逼近一个极小值。为什么是沿梯度的反方向?因为梯度的方向实际就是函数在此点上升最快的方向,...
2019-12-08 18:36:09
293
原创 ML04 -- 线性回归算法
线性回归算法主要用于解决回归问题思想简单,实现容易许多强大的非线性模型的基础结果具有很好的可解释性寻找一条直线,最大程度的拟合样本特征和样本输出标记之间的关系对于样本的特征只有一个,称为简单线性回归样本特征有多个,称为多元线性回功简单线性回归假设我们找到了最佳拟合的直线方程:y = ax + b则对于每个样本点下x(i)x^{(i)}x(i) ,根据我们的直线方程,预测值为...
2019-12-01 18:55:18
233
原创 ML03 -- 数据预处理和特征工程
数据预处理和特征工程数据不给力,再高级的算法都没用数据挖掘的五大流程1.获取数据2.数据预处理从数据中检测纠正或删除不准确或不适用于模型的记录的过程,让数据适应模型,匹配模型的需求。会处理数据类型不同,数据偏态数据异常、缺失、噪点、量纲不一、重复等等3.特征工程将原始数据转换为更能代表预测模型的潜在问题的特征的过程。可以通过挑选最相关的特征,提取特征以及创造特征来实现。可能...
2019-11-24 22:20:26
390
原创 ML02 -- 如何评价模型的好坏
要学习了解的概念知识:数据拆分:训练数据集&测试数据集评价分类结果:精准度、混淆矩阵、精准率、召回率、F1 Score、ROC曲线等评价回归结果:MSE、RMSE、MAE、R Squared1.数据拆分训练数据集&测试数据集我们写好了一个算法模型,但是对其准确性以及能否到正式使用还不确定,这时候就要经过大量的调试,直到模型的准确度达到满意才可以投入生产。对于判断模...
2019-11-17 21:37:41
515
原创 ML01 -- KNN算法
KNN1.KNN算法概述邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法,是机器学习中比较简单的入门级算法。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。简单的理解就是物以类聚,人以群分,比如想要了解一个人,就去看看他的朋友。给一个新的数据时,离它最近的 k 个点中,哪个类别多,这个数据就属于哪一类。如下例子,距离黄色...
2019-11-10 18:19:26
425
原创 mongodb修改数据存储目录
mongodb副本集搭建可以参考这篇blog,博主写的特别好,照步骤操作即可:https://www.cnblogs.com/operationhome/p/10744712.html如果想要更换数据存储路径mongodb默认数据存储目录是:/opt/mongodb/data现在想要换到:/data/mongodata注意:如果是副本集模式,每台节点都要执行以下6步1.先关闭服务s...
2019-11-07 18:47:53
5633
原创 spark调优
#spark优化##代码层面1.避免创建重复的rdd,对多次使用的rdd进行持久化,才能保证一个rdd被多次使用时只被计算一次2.persist方法可以自己选择持久化级别memory_and_disk_ser,其中_ser后缀表示使用序列化的方式来保存rdd数据,rdd中的每个partition都会被序列化成一个大的字节数组。序列化的方式可以减少持久化数据对内存/磁盘的占用量,避免内存...
2019-10-24 18:15:20
374
原创 获取resources配置参数的方法及maven profile
获取resources下application.properties配置参数的方法方法一:通过类加载器获取定义一个读取配置文件的工具对象object PorpertyUtil { val properties = new Properties() try { val inputStream =ClassLoader.getSystemResourceAsStream("a...
2019-10-08 23:56:41
799
原创 phoenix的全局索引不起作用原因分析
phoenix的全局索引没起作用phoenix里面的全局索引比较废柴,因为除了select count(*) from table where name=‘xd’这种写法会用到索引之外,其他的情况都用不到这个全局索引包括 select * from table where name='xd’也用不到索引,而是进行full scan。原因分析这一点和我们平时的sql索引原理有点不一样,普...
2019-09-19 21:07:32
1593
原创 NO6 -- 抽样分布-Python实战
抽样分布-Python实战数据集下载:https://pan.baidu.com/s/1AKsYpjZgtG8FNhk6Pxs9VA数据集描述:数据中有四列,ID 年龄 价格 港口1.按港口分类,用python求出各类数据年龄、车票价格的统计量2.画出价格的分布图像,验证数据服从何种分布(卡方?正态?T?)...
2019-08-31 17:17:11
383
原创 NO5 -- 抽样分布
抽样分布抽样指按一定方式从总体中选择或抽出样本的过程。1.抽样作为人们从部分认识整体这一过程的关键环节,是实现“由部分认识总体”这一目标的途径和手段;2.抽样主要解决的是对象的选取问题,即如何从总体中选出一部分对象作为总体代表的问题。这样就有利于我们在研究中节省时间和成本,方便有效。统计量样本均值样本均值是指在总体中的样本数据的均值,样本均值的计算依据是样本个数,反映的是样本数据集...
2019-08-25 21:49:33
855
原创 Phoenix建表建序列及常用优化
Phoenix建表及优化CREATE TABLE IF NOT EXISTS table("id" bigint not null primary key,info."name" varchar,info."age" integer,info."address" varchar,info."phone" bigint,info."birthday" bigint) SALT_BUC...
2019-08-25 15:40:17
1206
原创 hive数据备份方案
hive数据备份方案非风区表的备份create table t_copy as select * from t_temp;分区表的复制create table tablepark_test like tablepark;set hive.exec.dynamic.partition.mode=nonstrictinsert overwrite table tablepark_test ...
2019-08-23 16:21:44
3265
原创 sqoop导入大表解决方案
导入表过大时报错:is running 24993792B beyond the ‘PHYSICAL’ memory limit. Current usage: 1.0 GB of 1 GB physical memory used; 2.5 GB of 2.1 GB virtual memory used. Killing container.方案一:yarn资源配置 mapreduce....
2019-08-22 20:45:11
1980
原创 NO4 -- 数据分布-Python实战
数据分布-Python实战使用 Python 验证数据集中的体温是否符合正态分布。数据集地址:http://jse.amstat.org/datasets/normtemp.dat.txt数据集描述:总共只有三列:体温、性别、心率数据集详细描述:http://jse.amstat.org/v4n2/datasets.shoemaker.html温度数据的基本信息描述import ...
2019-08-10 20:51:13
462
原创 redis集群搭建及设置密码重启集群脚本
以下链接方案都是我在搭建过程中参考的,亲测可行而且易懂,本来想自己再整理一遍的,但是真的太麻烦了,就直接把参考的链接都记录下来,以后用到可以直接去看redis单机安装(超详细):https://blog.csdn.net/qq_42815754/article/details/82832335redis集群搭建方案: https://www.cnblogs.com/wuxl360/p/5920...
2019-08-06 20:09:23
453
原创 NO3 -- 数据分布
正态分布(连续性)自然环境和人类社会的很多事物都会自发形成稳定的系统,因此,在这些环境下,许多事物和现象的分布都服从正态分布。例如,人的身高、体重;各种商品的尺寸和质量;自然环境的温度、湿度和降雨量;高考成绩等正态分布的概率密度函数就由均值和方差两个自变量构成:μ表示均值;σ表示标准差μ是分布曲线的峰位置(集中趋势),又被称为位置参数。σ越大离散程度越大,越扁平;σ越小离散程度越小(...
2019-08-04 18:20:02
1298
原创 canal介绍及HA集群模式搭建
快速了解canal1.首先大概介绍一下canal是干啥的?canal是用来实时同步mysql数据的。对于离线任务可以通过sqoop将mysql业务库的数据导入hive数仓中计算,但是想要处理实时任务就要借助canal解析binlog日志来实现了。官网的详细介绍: https://github.com/alibaba/canal/wiki2.canal是如何实时获取mysql数据的?can...
2019-07-30 22:20:21
6619
4
原创 sqlserver导入hbase和hive
1.采用sqoop将sqlserver数据导入hbase要先在hbase中将表建好(create ‘TicketInPark’,‘cf’),再导入否则会报错sqoop import --connect "jdbc:sqlserver://10.9.10.213:1433;database=CenterThemePark" \--username sa --password 123456 --...
2019-07-29 21:42:40
385
原创 NO2 -- Python数据分析基础
Python为我们提供了非常完善的基础代码库,和数据处理库集,所以非常适合做数据分析。1. Python基础Python环境安装下载地址:https://www.python.org/downloads/windows/下载64位的安装程序,下载后运行exe安装,记得勾选Add Python 3.7 to PATH完成后可在命令提示符窗口中输入python,即可看到版本信息,并且进入p...
2019-07-28 22:12:59
372
原创 NO1 -- 数据的描述性统计
很有幸加入了居士的数据自习室,大家互相监督一起学习。希望自己可以坚持下去。数据的集中趋势描述1. 算数平均值分为简单算数平均值和加权算数平均值简单算数平均值:数据集合中所有数的和除以数据的个数加权算数平均值:针对数据集合中每个数据值的重要程度不一的情况,采用所有数据值乘以相应权重值的和再除以数据个数来计算算数平均值易受极大值或极小值的影响,而掩盖数据的真实特性eg:全国人家年收入被平均...
2019-07-20 23:01:13
533
原创 phoenix建表映射有命名空间的hbase表
1.先开启schema与namespace的对应关系在phoenix中与hbase的命名空间相对应的是schema概念,默认是没有开启的,需要在hbase的hbase-site.xml中增加以下配置项<property> <name>phoenix.schema.isNamespaceMappingEnabled</name> <value&g...
2019-07-18 22:24:36
4224
9
原创 hive按年月实现动态分区,分桶表创建
目标:按照表中数据创建时间的年月来进行分区Hive分区分为静态分区和动态分区静态分区是在语句中指定分区字段为某个固定值,动态分区就相对灵活的多。一个分区实际上就是表下的一个目录,一个表可以在多个维度上进行分区,分区之间的关系就是目录树的关系。hive动态分区先将mysql表testtable用sqoop导入到hive中,采用自动建表的方式导入。(如果你的hive表已存在,这步可以忽略...
2019-07-03 00:25:15
1716
原创 Elasticsearch集群部署简易教程
前提介绍本文使用es版本:elasticsearch-5.6.6服务器三台:192.168.250.128192.168.250.129192.168.250.130es安装步骤:下载es:https://www.elastic.co/downloads/elasticsearch解压到安装目录创建一个es启动用户,因为不能用root来启动,这里就建一个叫’elas...
2019-07-02 21:35:39
329
原创 hive shell最常用的操作命令
hive最常用的命令创建表,携带数据create table employees1 as select * from employees;创建表,携带表结构create table employees2 like employees;查看hive建表语句(拷出来自己改)show create table tablename;查看当前所在库select current_data...
2019-06-30 19:06:51
546
原创 sqoop导入mysql数据到Hive的各种方案
mysql数据导入数据仓库Hive的各种方案采用sqoop向hive中导入原始数据形成ODS层,之后可以在原始数据的基础上进行增量备份数据(定时同步)或者通过canal解析binlog(实时同步)日志进行同步数据。1.sqoop向hive中导数据的原理sqoop在向hive中导入数据时,是先将数据上传到hdfs中,然后创建表,最后再将hdfs中的数据load到表目录下。我们采用sqoop直...
2019-06-30 19:02:20
18054
2
原创 jdbc介绍
jdbcJDBC:jdk提供的java数据库连接技术,它只是一套接口规范JDBC Driver:每个数据库厂商根据自己的数据库实现jdbc接口jdbc基本使用过程:1.加载驱动类:Class.forName("com.mysql.jdbc.Driver")2.获取数据库连接:DriverManager.getConnection()3.创建SQL语句执行句柄:Connection.cr...
2019-06-07 17:26:49
375
原创 shell编程四剑客find grep awk sed
shell编程四剑客find grep awk sed1.find 文件查找命令(根据文件名称)查找home目录下名字为test的所有txt文件find /home/ -name "test.txt"查找当前路径下,一天内创建的,名字以.txt结尾的目录(f表示文件),并将它复制到tmp目录下find . -name "*.txt" -type d -mtime -1 -exec cp...
2019-06-03 23:36:56
410
原创 数据库索引机制的本质
索引(index)机制的本质是一种检索加速机制查询原理:一张数据表中id是按顺序排列的,要根据id来查找一条记录,可使用多种查找算法提高检索效率,如二分查找等。但其他字段就是乱序的,所以如果要根据其他字段来查找数据的话,就不能使用高效的查找算法只能一条一条去匹配,非常慢。这是就需要建立索引。索引机制:建立一个索引就会新建一个只包含两列的附加索引表,索引表中其中一列为索引字段,另一列则包含一...
2019-05-29 17:45:56
703
1
原创 消息队列kafka的面试问题汇总
1.为什么要使用消息队列MQ?kafka的作用:解耦,异步,削峰(解决高峰期瘫痪)2.架构中引入MQ之后可能存在的问题?系统的可用性降低了,因为一旦MQ遇到故障,整个系统就歇菜了系统的复杂性变高,因为多加了一个环节一致性问题3.消息队列的比较activeMQ:吞吐量万级,但社区维护慢RabbitMQ:吞吐量万级,社区好性能可以,有后台管理界面,但是erlang语言开发,源码不好解读...
2019-05-27 23:52:57
1930
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人