自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MrLevo520的博客

Github:https://github.com/MrLevo520 少数派:https://sspai.com/user/808474

原创 SparkSql中时间阈操作【窗口函数】

本文主要总结了一些sql在时间阈上的操作,包括连续消费,最长签到,累计消费等问题,其实映射到其他业务场景也就变成了类似的计算;如游戏领域,连续登陆时间,连续签到时长,最大连续签到天数等常见的业务场景;方法都是共通的,这里就用sparksql来实现一些方法,hivesql的话有部分代码可能需要略微修改,比如having这种需要外面再套一层改成where等等就不再赘述构造数据进行测试为了比较好切割,我就用@进行拼凑了,第一个是日期,第二个是用户,第三个是否消费,第四个为消费金额20190531@156.

2020-06-17 15:01:14 172

原创 从作用域到闭包再到装饰器

首先预祝抗击在武汉肺炎第一线的兄弟姐妹们平安归来,撑住!你们辛苦啦!没事儿有我们共渡难关!写在开头最近装饰器用的比较多,由此想到了闭包,再往上就是作用域的一些陷阱问题;索性记录一下,类似于一个散文形式的,只是对自己的一些想法和网上的一些资料进行梳理,想法 -> 验证 -> 查实 仅此而已,工作时候零零散散,现在拾掇一下,作为总结,希望对你有所帮助~ 新年快乐!一些显而易见...

2020-01-25 22:16:58 255

原创 SparkSql 2.2.x 中 Broadcast Join的陷阱(hint不生效)

问题描述使用hint指定广播表,却无法进行指定广播;前期准备hive> select * from test.tmp_demo_small;OKtmp_demo_small.pas_phone tmp_demo_small.age156 20157 22158 15hive> analyze table test.tmp_demo_small compute s...

2020-01-17 21:09:03 1223

原创 Spark RDD Lazy Evaluation的特性及作用

看一些博客都是轻描淡写的说一下这是spark的特性,延迟/惰性计算(lazy evaluation)就完事了,然后各个博客之间抄来抄去就是那么几句话,所以就想着把这些东西整理一下讲清楚,希望对有需要的朋友有所帮助。主要为了解决3个疑问rdd的弹性表现在哪 ?什么是spark lazy 特性 ?spark lazy evaluation 的好处都有什么 ?rdd的弹性表现在哪那就...

2019-08-26 15:46:27 856 2

原创 Geohash中经度放偶数位问题

GeoHash算法这边就不赘述了,这篇目前认为最全面:https://www.jianshu.com/p/7332dcb978b2, 感谢作者但是细心的同学会发现,当将经纬度进行逼近后形成的code需要交叉组合最终形成一个编码,方法是 ”经度放偶数位,纬度放奇数位“,我的天,我自己试了好几次,都是经度在奇数位,纬度在偶数位。看了好多博客,几乎都是千篇一律,直接复制粘贴。。。。。其实作者的意思...

2019-08-06 19:29:19 330

原创 spark-submit 提交python外部依赖包

需求:使用pyspark的过程中,发现集群的python并没有安装自己需要的包,比如elasticsearch包等,这样就只能靠自己把包打上,然后才能被分发到集群的各台节点机器上,然后被执行,这里举个例子,如何加载自己的外部包1.创建模块构建 spark_submit.py# -*- coding:utf-8 -*-def spark_submit_test(key): re...

2019-02-01 12:24:42 7299 1

原创 Sqoop学习笔记

前言 在搭建公司的一些平台产品的时候,前端需要的渲染的数据往往是需要使用集群资源进行计算的,比如hive,spark等。然而web端对数据查询和显示有着较高的需求,所以查询端放在hive或者spark都变得不切实际,速度太慢。一般的处理方式是使用mysql当做结果存储,使用简单的select语句和where语句获取到直接的计算结果。而天级和小时级的数据需要从hdfs转移到mysql本身并不...

2018-09-16 14:22:13 521

原创 解决:提交的hive任务如何找回其提交的语句

只记得表名或者该任务的一些关键字,忘记了自己创建表时候的语句,可以从hive的执行日志中获取原始数据。特别适合定位该测试表是怎么创建的,或者定位别人表创建的由来首先要确认提交的hive任务是在哪一台服务器提交的,一般默认hive的执行日志会放在提交任务的机器的/data/hive/tmp/{用户名}目录下首先需要切换到root用户,然后切到根目录,不清楚目录结构的请看:Linux...

2018-08-26 15:19:02 1041

原创 Docker 学习笔记

建议学习过程@S_gy_Zetrov–一篇很棒的入门教程Docker — 从入门到实践–粗略的看下,各个名词部分,进阶部分可以看情况看@孤天浪雨–Docker系列,建议从第一篇开始看 值得考虑的问题@傅飞–Docker与虚拟机的区别@黄庆兵–如何精简压缩image精简为王:Docker镜像体积详解孤天浪雨–Docker实践(七):Docker Hub(镜像...

2018-02-10 00:48:53 972

原创 使用python对高光谱数据进行处理和分类

目的加载遥感图像的.mat数据进行呈图显示将.mat的数据转化为python后续算法处理的csv文件存储训练模型,观察分类效果,在图中显示与原图对比方法Refer:spectral python官网 使用超强的spectral包!目的1 - 代码 加载遥感图像的.mat数据进行呈图显示part1 . 加载数据#refer:https://github.com/KGPML/Hype

2017-11-12 15:20:13 19864 35

原创 Stacking Learning在分类问题中的使用

建议先阅读以下文章回归问题构建stacking模型分类问题构建stacking模型codePay AttentionFurther建议先阅读以下文章知乎(必读):Kaggle机器学习之模型融合(stacking)心得Blog:Stacking Models for Improved PredictionsBlog:KAGGLE ENSEMBLING GUIDE(注脚)Blog:如何

2017-10-05 15:51:13 4700 4

翻译 KAGGLE ENSEMBLING GUIDE(注脚)

About TrsKAGGLE ENSEMBLING GUIDECreating ensembles from submission filesVoting ensemblesError correcting codesA machine learning exampleA pinch of mathsNumber of votersCorrelation模型相关性Use for

2017-10-05 13:15:15 1122

原创 总结:sklearn机器学习之特征工程

关于本文特征工程是什么32 数据探索性分析Exploratory Data AnalysisEDA数据预处理1 无量纲化 数据规范化11 标准化 0均值标准化Z-score standardization12 区间缩放法线性函数归一化Min-Max scaling13 标准化与归一化的区别 标准化规范化与归一化的区别2 对定量特征二值化3 对定性特征哑编码4 缺失值计算

2017-09-25 15:24:46 5849 1

原创 数据结构与算法-排序篇-Python描述

前言 补习基础的数据结构和算法的时候,很多都是用c或者java写的,顺便我用python重构一遍吧,也当做是补习了~排序算法冒泡排序 ​ 冒泡排序原理即:从数组下标为0的位置开始,比较下标位置为0和1的数据,如果0号位置的大,则交换位置,如果1号位置大,则什么也不做,然后右移一个位置,比较1号和2号的数据,和刚才的一样,如果1号的大,则交换位置,以此类推直至最后一个位置结束,到此数组中最大

2017-09-04 00:42:10 7341 9

原创 总结:数据清洗的一些总结

前言 在整理项目的时候发现清洗过程是一个非常细节的过程,几乎贯穿始终,也是后续步骤特征提取等的前置条件,所以整理如下,因为展开较大,所以我已近上传mindnode脑图和原始照片尺寸,请在这里下载数据清洗脑图原版致谢机器学习基础与实践(一)—-数据清洗箱形图为什么能检测异常值,原理是什么?五个步骤教你数据清洗数据清洗基本概念标准化矩阵 协方差矩阵 相关系数矩阵数据挖掘数据预处理之:异常值检测数据

2017-08-25 14:31:54 2297

原创 网易2018校招内推编程题(Python描述)

总结一下网易2018内推的测试题,我看python的比较少,所以献上自己的low代码,都AC过的,大毛病应该没有,看来基础还是得抓紧练习![编程题] 彩色的砖块时间限制:1秒空间限制:32768K 小易有一些彩色的砖块。每种颜色由一个大写字母表示。各个颜色砖块看起来都完全一样。现在有一个给定的字符串s,s中每个字符代表小易的某个砖块的颜色。小易想把他所有的砖块排成一行。如果最多存在一对不同颜色

2017-08-14 20:12:42 4994

原创 总结:Spark性能优化上的一些总结

Spark性能调优 整理来自于: Spark性能优化指南——基础篇​ 会增加: 一些其他博客的内容 自己的理解和pyspark代码的补充实践 开发调优 Spark性能优化的第一步,就是要在开发Spark作业的过程中注意和应用一些性能优化的基本原则。开发调优,就是要让大家了解以下一些Spark基本开发原则,包括:RDD lineage设

2017-08-13 10:33:58 1945

原创 总结:详细讲解MapReduce过程(整理补充)

关于整理 此文百分之七十摘自我认为讲的很清楚的博客,我都贴了地址,很感谢这些博主的无私奉献!我再将一些自己的实例代码和知识点的补充加入进去,希望能更好的理解mapreduce的整个过程。从启动和资源调度来看MapReduce过程首先-先了解一下必知概念 From:MapReduce工作原理图文详解,JobTracker和TaskTracker概述客户端(Client):编写mapreduc

2017-08-06 17:05:16 19531 6

原创 总结:Hive,Hive on Spark和SparkSQL区别

Hive on Mapreduce Hive的原理大家可以参考这篇大数据时代的技术hive:hive介绍,实际的一些操作可以看这篇笔记:新手的Hive指南,至于还有兴趣看Hive优化方法可以看看我总结的这篇Hive性能优化上的一些总结Hive on Mapreduce执行流程 执行流程详细解析Step 1:UI(user interface) 调用 executeQuery 接口,发送 H

2017-08-04 22:36:07 35941

原创 总结:Hive性能优化上的一些总结

注意,本文百分之九十来源于此文:Hive性能优化,很感谢作者的细心整理,其中有些部分我做了补充和追加,要是有什么写的不对的地方,请留言赐教,谢谢前言 今天电话面试突然被涉及到hive上有没有做过什么优化,当时刚睡醒,迷迷糊糊的没把以前实习的中遇到的一些问题阐述清楚,这里顺便转载一篇并来做一下总结介绍 首先,我们来看看Hadoop的计算框架特性,在此特性下会衍生哪些问题?数据量大不是问题,数

2017-07-29 16:25:19 36286 10

原创 笔记:新手的Spark指南

macOS Sierra 10.12.4Spark 1.6.2Python 2.7转载请注明出处:前言 既然做了Hive的整理,那就把spark的也整理下吧,当做入门指南和自己的笔记吧~与君共勉Spark基础Spark是什么? Spark是个通用的集群计算框架,通过将大量数据集计算任务分配到多台计算机上,提供高效内存计算。如果你熟悉Hadoop,那么你知道分布式计算框架要解决两个问题:如何

2017-07-25 17:21:43 1486 1

原创 动态规划(DP)的整理-Python描述

今天整理了一下关于动态规划的内容,道理都知道,但是python来描述的方面参考较少,整理如下,希望对你有所帮助,实验代码均经过测试。请先好好阅读如下内容–什么是动态规划? 摘录于《算法图解》 以上的都建议自己手推一下,然后知道怎么回事,核心的部分是142页核心公式,待会代码会重现这个过程,推荐没有算法基础的小伙伴看这本书《算法图解》很有意思的书,讲的很清晰,入门足够更深入的请阅读pytho

2017-07-22 01:49:45 26615 5

原创 pyspark中combineByKey的两种理解方法

Spark 1.6 以前一直模模糊糊的,现在搞一下比较清楚combineByKey(createCombiner, mergeValue, mergeCombiners, numPartitions=None, partitionFunc=<function portable_hash at 0x7f1ac7340578>)它是一个泛型函数,主要完成聚合操作,将输入RDD[(K,V)]转化为

2017-07-21 13:40:39 2096

原创 解决:MySQL Load Data数据丢失问题

MySQL 5.7 MacOS Sirrea 10.12.1前言 很简单,我得文件里面20w数据,导入MySQL后只剩下16w条数据,无Deleted无Skipped排查方法 既然数据丢失了,那把成表后的数据全部导出,然后和原始的数据进行对比验证select * from db.table INTO OUTFILE '/usr/local/mysql-5.7.18-macos10.1

2017-07-13 20:57:40 5466

原创 数据向:我到底是谁的歌迷?

MacOS Sierra 10.12.1 Python 2.7 selenium 3.4.3 phantomjs 忘了前言 发现自己有时候比挖掘别人来的更加有意义,自己到底喜欢谁的歌,自己真的知道么?习惯不会骗你搭建爬虫环境1.安装seleniumpip install selenium# anaconda环境的可用conda install selenium# 网速不好的可用到h

2017-07-10 02:01:53 3967 9

原创 笔记:新手的Hive指南

前言 算是对在滴滴实习的这段时间Hive的笔记吧,回学校也有段时间了,应该整理整理了,肯定不会巨细无遗,作为一种学习记录或者入门指南吧基础SQL基本语法Python基础语法(HiveStreaming会用到)Java基础语法(写UDF会用到)Hadoop基础(毕竟mapred过程)什么是Hive? hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据

2017-07-09 21:37:43 5961 1

原创 解决:MacOS下配置Hadoop及Hive单机遇到的问题(们)

MacOS Sierra 10.12.1 Hadoop 2.7.3 Hive 1.2.1前言 本来安逸搞个local 的spark算了,但是过几天我还要搞个网易云音乐的大新闻,没有hive不得劲,遂装,期间遇到的问题,一一记录安装 基础安装,先照这个来吧,反正肯定不会一次成功,科科,还可以自己百度,很多很多的@jeetpan–Mac 系统安装Hadoop 2.7.3问题 这才是重

2017-06-29 16:58:09 859

原创 数据向:618价格到底~到底是不是最低?

云服务器:ESC Ubuntu 16.04 x64 PhantomJS:beta-Linux-ubuntu-xenial 2.1.1 Python 2.7.12前言 好久没玩点有意思的了,这次借618这个购物节,自己也要搞台mbp,顺便搞一波大新闻。内容 对某宝的其中四家店,再加上某东一家店,对比同一款机型,对价格进行监控,至于监控时间,大概是不间断的监控吧,还有邮件提醒哦~涉及

2017-06-24 15:46:28 2893 1

原创 解决:在anaconda下无法使用conda安装第三方库问题

Anaconda2 Python 2.7.12 云服务器:ESC Ubuntu 16.04 x64问题无法使用conda进行安装第三方包 mrlevo@mrlevo-Lenovo:~$ conda install folium Fetching package metadata … CondaHTTPError: HTTP None None for url https://mi

2017-06-14 20:36:05 13643 1

原创 解决:Ubuntu(MacOS)+phantomjs+python的部署问题

云服务器:ESC Ubuntu 16.04 x64 PhantomJS:beta-linux-ubuntu-xenial 2.1.1 Python 2.7.12目的 租了台服务器当计算和运行平台,主要用于分布式网路爬虫,有需要用到phantomjs的地方,网上资料比较少,自己花了点时间,整理了一下安装phantomjs(Ubuntu版本)phantomjs下载地址,这里根据自己系统版本进

2017-06-14 12:09:38 4395

原创 解决:win远程连接ubuntu服务器安装jupyter,启动pyspark

ubuntu 16.1.4 win10 x64 X-shell5 目的 win主机远程访问ubuntu服务器,并启动服务器端jupyter在本地进行python和spark调试步骤 我不做重复性工作,翻阅了很多很多博客,最后的解决方案在这里,多谢@Xmo_jiao基于pyspark和scalaspark的jupyter notebook 安装如果按照步骤走失败的请看这里,这里需要注意

2017-06-06 22:28:17 1917

原创 Spark日志清洗一般流程

spark 1.6.1 python 2.7.11前言 整理了一下使用spark来进行日志清洗及数据处理的套路,这里以pyspark为例pyspark的启动任务套路 对于使用spark作为查询清洗工具而言,启动spark的套路主要使用sh文件进行终端带参数启动,启动后开始调用sh传递处理参数,并且构造好sparkconf后传递提交(spark-submit) python文件,当然最主要

2017-05-14 20:16:33 3683

原创 解决:用脚本配置crontab

目的 不想每次使用crontab -e进行配置,而是使用脚本的方法进行配置,这次使用的是直接执行python,然后进行写入crontab中直接进行配置方法1-终端执行$ crontab -l > now.cron # 下载配置文件$ echo '0 0 * * * echo test' >> now.cron # 写入now.cron中$ crontab now.cron # 提交到

2017-05-02 17:07:49 1624

原创 解决:crontab执行python no model name xxx问题

启动定时:crontab -e50 16 * * * source /etc/profile && cd /home/AA/BB && nohup python remindmail.py > remindmail.log 2>&1 & 但是并没有定时产生,查看logTraceback (most recent call last): File "remindmail.py", line

2017-04-14 18:44:26 2772 1

原创 Python编码规范(PEP8)及奇技淫巧(不断更新)

Python 2.7前言 从很多地方搬运+总结,以后根据这个标准再将python的一些奇技淫巧结合起来,写出更pythonic的代码~PEP8 编码规范英文原版请点击这里以下是@bobo的整理,原文请见PEP8 Python 编码规范整理 代码编排缩进。4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格。每行最大长度79,换行可以使用反斜杠,最好使用圆括号

2017-04-04 19:18:00 14249

原创 解决:使用Photoswipe进行图片展示

python 2.7 Django 1.6.1 photoswipe前言 对于前端的照片存储,已经在前一篇博文中进行展示,使用的是dropzone.js的包,图片存储的作用就是为了数据的再调用,所以在此片进行上次图片的前端展示,因为我是个前端萌新,所以方法比较稚嫩,希望观众老爷不要嘲笑,多多指教咯。如何上传图片并保存请看:dropzone拖拽图片上传并保存到本地样式的选择和调试请参考这里,

2017-04-04 16:04:10 8154 1

原创 解决:Dropzone.js的图片拖拽上传保存本地文件夹

拖拽上传JS包:Dropzone.js 图片展示JS包:PhotoSwipe.js Mac OS:Sierra 10.12.2 python 2.7 Django 1.6前言 在学习前端的时候需要用到图片拖拽上传展示,这里记录一下踩过的坑以及解决办法目的 图片拖拽或点击上传,在另一个页面根据数据库id索引调出图片图片拖拽上传部分先说一

2017-04-04 15:43:12 3664

原创 解决:spark启动错误Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apach..

MacOS:Sierra 10.12.2 Spark版本:2.1.0 今天想在本地安装spark,结果按照步骤来竟然报错,问题原因spark 2.1.0需要java 7+的支持,但是Mac默认的java 是1.6的,导致运行失败,解决方案也很简单,到官网下载最新的Java JDK和JRE安装好即可,当时我只下载了jre,结果还是不行,傻逼了,下了jdk后安装好就可以了,具体安装过程如下4步ma

2017-03-19 16:57:17 15827 1

原创 Echarts入门(零基础小白教程)

前言 适合0前端基础的小白,什么配置啊,不会啊,我就想画个图先,没问题,按照步骤做,先来实现第一个图,之后官方教程会教会你更多的。下载echarts 小白建议,直接下完整版,先搞清楚怎么画出一张图再说点击这里下载Echarts ,进入链接,选择完整版下载,之后会得到一个echarts.min.js的一个js脚本,别管他,先放着。新建一个html文件 我这里取名为echartstest

2017-01-18 17:48:25 67705 11

原创 Git的使用总结

Python 2.7 MacOS Sierra 10.12.1前言 实习中的第一个小分享,刚好弥补了我想学git的一些需求,主要还是公司的gitlab代码管理相关,以后自己也可以上传github了git的安装 采用HomeBrew安装,HomeBrew官网 http://brew.sh/下载HomeBrew打开终端,输入/usr/bin/ruby -e "$(curl -fsSL ht

2017-01-02 21:50:15 1102

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