自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sowhat

公众号:sowhat1412

  • 博客(19)
  • 资源 (81)
  • 收藏
  • 关注

原创 9种分布式ID生成方式,总有一款适合你

分布式ID必要性。业务量小于500W的时候单独一个mysql即可提供服务,再大点的时候就进行读写分离也可以应付过来。但当主从同步也扛不住的是就需要分表分库了,但分库分表后需要有一个唯一ID来标识一条数据,数据库的自增ID显然不能满足需求;特别一点的如订单、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯一ID的系统是非常必要的。那么这个全局唯一ID就叫分布式ID。分布式ID需满足那些条件全局唯一:基本要求就是必须保证ID是全局性唯一的。高性能:高可用低延时,ID生成响应要快。高可用:无限接

2020-07-28 19:11:15 2666 3

原创 5分钟了解啥是数仓

1. 什么是数据仓库数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。2. 数据仓库能干什么?年度销售目标的指定,需要根据以往的历史报表进行决策,不能拍脑袋。如何优化业务流程例如:一个电商网站订单的完成包括:浏览、下单、支付、物流,其中物流环节可能和中通、申通、韵达等快递公司合作。快递.

2020-07-23 20:39:16 5620

原创 第三天:Flink的State、CheckPoint、Window窗口

5. Flink State管理跟回复Flink 是一个默认就有状态的分析引擎,前面的 WordCount 案例可以做到单词的数量的累加,其实是因为在内存中保证了每个单词的出现的次数,这些数据其实就是状态数据。但是如果一个 Task 在处理过程中挂掉了,那么它在内存中的状态都会丢失,所有的数据都需要重新计算。从容错和消息处理的语义(At -least-once 和 Exactly-once)上来说,Flink 引入了 State 和CheckPoint。State 一般指一个具体的 Task/Oper

2020-07-22 23:03:22 2367 5

原创 RabbitMQ极速入门

1. 消息队列解决了什么问题1. 异步处理一个用户登陆网址注册,然后系统发短信跟邮件告知注册成功,一般有三种解决方法。串行到依次执行,问题是用户注册后就可以使用了,没必要等验证码跟邮件。注册成功后,邮件跟验证码用并行等方式执行,问题是邮件跟验证码是非重要的任务,系统注册还要等这俩完成么?基于异步MQ的处理,用户注册成功后直接把信息异步发送到MQ中,然后邮件系统跟验证码系统主动去拉取数据。2. 应用解耦比如我们有一个订单系统,还要一个库存系统,用户下订单了就要调用下库存系统来处理,直接调用

2020-07-19 23:12:02 1901 7

原创 用了这些IDEA 插件后我已经在跟测试妹子聊天了你还在苦逼的 coding

1.Translation翻译插件,现支持Google翻译、有道翻译。2. Free Mybatis plugin平时dao层找对应的xml时候需要很麻烦的去找,有了这个插件就不用了3. Lombok plugin有了这个插件就不用get set方法了4. activate-power-mode是一个装逼神器,敲代码的时候可以旋转跳跃不停歇 看图5. TranslationGoogle集成翻译插件,对于英语不好的同学来说真的爽啊,鼠标选中你要翻译的单词或者语句,右键选择 transl.

2020-07-17 19:29:53 4491 18

原创 第二天:Flink数据源、Sink、转换算子、函数类 讲解

4. Flink 常用API详解1. 函数阶层Flink 根据抽象程度分层,提供了三种不同的 API 和库。每一种 API 在简洁性和表达 力上有着不同的侧重,并且针对不同的应用场景。1 . ProcessFunctionProcessFunction 是 Flink 所提供最底层接口。ProcessFunction 可以处理一或两条 输入数据流中的单个事件或者归入一个特定窗口内的多个事件。它提供了对于时间和状态的细粒度控制。开发者可以在其中任意地修改状态,也能够注册定时器用以在未来的 某一时刻触发

2020-07-15 18:26:06 11162 7

原创 第一天:什么是Flink、WordCount入门、Flink安装、并行度

Flink官方依赖文档说明:官方依赖入手Snagit Editor

2020-07-13 18:50:15 1696 1

原创 Numpy 轻松学

1. Numpy 简介NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。底层是C语言编写出来然后嵌入到python中的。2. 矩阵在数学中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,一般情况下是(n,m) 表示

2020-07-12 20:09:13 8778 1

原创 Redis GeoHash核心原理解析

1. 引言小麦同学是个吃货+技术宅,平日里就喜欢拿着手机地图点点按按来查询一些好玩的东西。某一天到北海公园游玩,肚肚饿了,于是乎打开手机地图,搜索北海公园附近的餐馆,并选了其中一家用餐。饱暖思yin欲的麦叔饭后思考地图后台如何根据自己所在位置查询来查询附近餐馆的呢?苦思冥想了半天,小麦想出了个方法:计算所在位置P与北京所有餐馆的距离,然后返回距离<=1000米的餐馆。小得意了一会儿,小麦发现北京的餐馆何其多啊,这样计算不得了,于是想了,既然知道经纬度了,那它应该知道自己在西城区,那应该计算所在位置

2020-07-10 16:07:06 2287

原创 8. 经典的同期群分析

理论回顾同期群分析是数据分析中一个hin经典的思维,核心是将用户按初始行为的发生时间,划分为不同的群组,进而分析相似群组的行为如何随时间变化而变化。一般是通过像这样的留存表来实现:每一行,代表当月新增客户,在接下来几个月的留存情况。通过横向对比,能够对客户留存和生命周期有初步的认识。基于纵向观察,可以发现不同期客户,留存情况的差异,以反推该期引入的客户是否精准。这个表看起来简单明晰,也有一些成熟的工具能够实现,但是,真要基于订单数据用Python来实现,还是要绞一番脑汁的。数据概览首先,导入订单

2020-07-07 19:30:27 966

原创 7. RFM用户分析模型

RFM,是一种经典到头皮发麻的用户分类、价值分析模型,同时,这个模型以直白著称,直白到把需要的字段写在了脸上:R:Rencency,即每个客户有多少天没回购了,可以理解为最近一次购买到现在隔了多少天。F:Frequency,是每个客户购买了多少次。M:Monetary,代表每个客户平均购买金额,这里也可以是累计购买金额。这三个维度,是RFM模型的精髓所在,帮助我们把混杂一体的客户数据分成标准的8类,然后根据每一类用户人数占比、金额贡献等不同的特征,进行人、货、场三重匹配的精细化运营。用Pyth

2020-07-07 16:53:23 1101

原创 6. 批量处理分析数据

需求:有20个品牌共生产了127个类目的产品,筛选出近一年销售额总额TOP5的品牌以及对应的销售额。思路:先做第一个然后如法炮制将结果汇总即可。数据信息如下:加载数据:接着,是要汇总不同品牌在这个细分行业下的销售额,我们要汇总的是各品牌近一年(2018年9月-2019年8月)的销售额,先看看日期是否正确:每个品牌每个月份销售额计算如下:按照品牌分组计算销售额总和前五的品牌:这里有个细节,最终要汇总的是所有细分行业的销售额top5,给所属类别添加标签。最终最终结果:import

2020-07-07 11:29:18 4393

原创 5. TGI指数分析实战

引言经常有一些专业的数据分析报告,会提到TGI指数,例如“基于某某TGI指数,我们发现某类用户更偏好XX”。对于不熟悉TGI定义的同学,看到类似的话一定是云山雾罩。这次,我们就来聊一聊什么是TGI指数以及怎么样结合案例数据实现简单的TGI偏好分析。对于TGI指数,百科是这样解释的——TGI指数,全称Target Group Index,可以反映目标群体在特定研究范围内强势或者弱势。很好,这个解释官方中透漏着专业,专业中弥漫着晦涩,晦涩的让人似懂非懂。粗暴翻译下来,TGI指数是反应偏好的一种指标。这样还

2020-07-06 21:26:28 1387

原创 4. 优雅的apply

引言本文主要讲的是Pandas中第二好用的函数——apply。为什么说第二好用呢?做人嘛,最重要的就是谦虚,做函数也是一样的,而apply就是这样一个优雅而谦虚的函数。我们单独用一篇来为apply树碑立传,原因有二,一是因为apply函数极其灵活高效,甚至是重新定义了pandas的灵活,一旦熟练运用,在数据清洗和分析界可谓是“屠龙在手,天下我有”二是apply概念相对晦涩,需要结合具体案例去咀嚼和实践。Apply初体验apply函数,因为她总是和分组函数一起出现,所以在江湖得了个·group

2020-07-06 20:32:00 563

原创 3. 清洗常用4板斧

引言这是Python数据分析实战基础的第三篇内容,主要对前两篇进行补充,把实际数据清洗场景下常用但零散的方法,按增、删、查、分四板斧的逻辑进行归类,以减少记忆成本,提升学习和使用效率。数据集一级流量流量级别投放地区访客数支付转化率客单价支付金额一级A区44,30011.78%58.79306,887.83一级B区30,61213.85%86.64367,338.10一级C区18,3892.50%0.28129.58一级D区

2020-07-06 19:49:04 488

原创 2. 灵活的Pandas索引

序言学习了Pandas的同学,有超过60%仍然投向了Excel的怀抱,之所以做此下策,多半是因为刚开始用Python处理数据时,选择想要的行和列实在太痛苦,完全没有Excel想要哪里点哪里的快感。初识Pandas 教程考虑到篇幅问题只讲了最基础的列向索引,但这显然不能满足同志们日益增长的个性化服务(选取)需求。为了舒缓痛感,增加快感,满足需求,第二篇内容我们单独把索引拎出来,结合场景详细介绍两种常用的索引方式:第一种是基于位置(整数)的索引,案例短平快,有个粗略的了解即可,实际中偶有用到,但它的应用范

2020-07-06 16:33:53 519

原创 1. 初识Pandas

1. 重要前言这段时间和一些做数据分析的同学闲聊,我发现数据分析技能入门阶段存在一个普遍性的问题,很多凭着兴趣入坑的同学,都能够很快熟悉Python基础语法,然后不约而同的一头扎进《利用Python进行数据分析》这本经典之中,硬着头皮啃完之后,好像自己什么都会了一点,然而实际操作起来既不知从何操起,又漏洞百出。至于原因嘛,理解不够,实践不够是两条老牌的拦路虎,只能靠自己来克服。还有一个非常有意思且经常被忽视的因素——陷入举三反一的懵逼状态。什么意思呢?假如我是个旱鸭子,想去学游泳,教练很认真的给我剖

2020-07-06 15:41:36 835 2

原创 PageRank通俗说

PageRank是执行多次连接的一个迭代算法,因此它是RDD分区操作的很好demo,算法维护两个数据集(pageID,listList) 包含每个页面的相邻页面列表。(pageID,ra...

2020-07-06 06:55:00 6361

原创 第四天:Spark Streaming

Spark Streaming概述1. Spark Streaming是什么Spark Streaming用于流式数据的处理。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce、join、window等进行运算。而结果也能保存在很多地方,如HDFS,数据库等。和Spark基于RDD的概念很相似,Spark Streaming使用离散化流(discret

2020-07-02 07:45:29 650 1

my-site.zip

springboot+mybatis+thymeleaf+docker构建的个人站点开源项目(集成了个人主页、个人作品、个人博客)

2020-08-27

selfstarter.zip

自定义Starter

2020-08-19

ssmdemo.zip

SSM整合,

2020-08-15

mysql5.7 安装教程

mysql5.7 安装教程

2020-08-11

mybatislearn.zip

Spring教程 及整合Mybatis

2020-08-06

mybatislearn.zip

MyBatis急速入门

2020-08-03

IDEA使用教程 - v1.0.pdf

IDEA 教程IDEA

2020-06-07

scala配套代码.zip

Scala入门

2020-05-25

Nginx学习笔记.zip

Nginx教程

2020-05-12

Java面试题.zip

Java面试题.zip

2020-05-09

2500页​大厂面试题.rar

2500页大厂面试题

2020-05-08

Servlet和JSP(JAVAEE基础).zip

Java Servlet讲解

2020-04-22

Spring笔记.md

Spring快速入门

2020-04-17

大数据技术之Hadoop.xmind

Hadoop思维导图

2020-04-14

springAOP核心组件分析.pdf

springAOP核心源码流程分析,请基于5.0.6版本进行代码跟进。

2020-04-10

深入浅出Java多线程.pdf

深入浅出Java多线程

2020-04-09

springboot学习.zip

SpringBoot2.x讲解

2020-04-08

Java字节码简单说明.docx

Java字节码简单说明

2020-03-10

Mycat笔记篇.docx

分布书数据库中间件,分布书数据库中间件,分布书数据库中间件,分布书数据库中间件,分布书数据库中间件,分布书数据库中间件,分布书数据库中间件

2020-03-07

Maven项目中pom文件全面讲解

全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件 全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件,全面讲解Pom文件

2020-03-07

logback-demo.zip

logback 标准化日志模板

2021-01-28

zookeeper.zip

zookeeper学习资料汇总,zookeeper学习资料汇总,zookeeper学习资料汇总,zookeeper学习资料汇总,zookeeper学习资料汇总

2020-09-28

狂神docker笔记.zip

狂神Docker笔记,相对来说比较全面 狂神Docker笔记,相对来说比较全面 狂神Docker笔记,相对来说比较全面

2020-09-17

丁奇Mysql45.zip

丁奇Mysql45.zip

2020-08-31

Spring Boot整合Shiro.zip

Spring Boot整合Shiro.zip

2020-08-30

rabbitMQ 代码.zip

RabbitMQ开发代码demo,

2020-07-20

Hue安装配置教程.zip

hue教程

2020-07-20

RabbitMQ极速入门.zip

RabbitMQ极速入门

2020-07-19

rabbitmq.zip

MQ安装跟SpringBoot整合,MQ安装跟SpringBoot整合,MQ安装跟SpringBoot整合

2020-07-19

redisgeo.zip

SpringBoot+Geo实战

2020-07-17

Flink学习资料.zip

Flink学习全套代码

2020-07-16

spark全套学习资料.zip

Spark学习全套技术

2020-06-30

Kafka全套学习笔记.zip

Kafka全套学习笔记

2020-06-28

HBase配置文件若干配置.zip

HBase配置文件若干配置.zip

2020-06-19

HBaseApi.java

HBase-APi操作demo

2020-06-19

hbase-default.xml

HBase配置讲解

2020-06-18

Anaconda3-4.3.1-Linux-x86_64.sh

Anaconda3-4.3.1-Linux-x86_64.sh

2020-06-08

idea教程.zip

idea教程.zip

2020-06-06

IDEA教程.doc

IDEA 教程

2020-06-06

大数据技术之Hive.zip

Hive 讲义

2020-06-06

空空如也

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

TA关注的人

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