自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

多一份贡献,多一份环保

https://github.com/dounine

原创 Scala Slick LocalDateTime与Timestamp转换

在使用Slick操作数据库的时候、如果使用LocalDateTime类型字段、则在数据库中使用的是varchar类型、但是我们需要使用更严格的时间类型Timestamp。这就需要在这两个类型之间来回切换了。 使用方法 导入包 <dependency> <groupId&...

2020-01-09 14:27:49 56 0

原创 hdfs 磁盘存储不平衡、重新平衡操作

在日积月累的操作中、可能会存在有些磁盘的存储分布得不是很平衡、这就给数据多的那一台机子带来压力、因为很多的读取都是在同一台机子上、所以我们需要重新平衡一下存储、也就是把存储多的机子上的数据转移到其它机子。这里我们使用hdfs提供的balancer命令操作。 操作 随意登录hdfs集群中的某一台...

2020-01-09 14:27:06 110 1

原创 Spark - SQL查询文件数据

有时候有没有这么一种情况,我拿到了一个sql,csv,parquet文件,一起来就想写sql,不想写那些乱七八糟的的东西,只是想快速实现我要的聚合查询数据。那么我们可以利用spark-sql直接操作文件的特性处理这类的需求,姐姐再也不用担心我不会spark了,因为我就只会sql。 使用方法 cs...

2019-11-26 17:29:42 49 0

原创 Flutter 振动反馈

在Flutter 我们可以使用vibrate插件、可以兼容安卓与IOS。一般可用于振动反馈、比如按钮点击反馈、网络请求成功反馈等等。 用法 添加依赖到pubspec.yaml到文件当中 安卓需要添加下面的振动权限到Android Manifest中 <uses-permission and...

2019-10-25 12:05:55 901 1

原创 Play2.7 websocket 使用方法

play2.7x 中的websocket文档少得可怜、看来得适当完善一下子了、这里给大家记录一下一些使用过程吧。 使用 WebController.scala Singleton class SocketController @Inject()(cc: ControllerComponent...

2019-09-02 16:07:19 121 0

原创 Scala case class 动态copy

在scala中、case class 确实好用、但是只支持指定字段名称使用copy复制、在动态情场中、一个类的字段可是非常多的、如何处理这样的问题?这就得使用到反射功能了、下面已经给大家写好了。 CopyUtil.scala import java.lang.reflect.Modifier ...

2019-08-25 15:01:44 202 0

原创 Hbase - 表导出CSV数据

新鲜文章,昨天刚经过线上验证过的,使用它导出了3亿的用户数据出来,花了半个小时,性能还是稳稳的,好了不吹牛皮了,直接上代码吧。 MR 考查了Hbase的各种MR,没有发现哪一个是能实现的,如果有请通知我,我给他发红包。 所以我们只能自己来写一个MR了,编写一个Hbase的MR,官方文档上也有相应...

2019-07-10 10:15:48 222 0

原创 PlayFramework - Actor 对接

playframework 本身就是akka、那如何对接其它的akka系统呢、也就是发消息给其它系统、或者其它系统连接playframework的akka。由于网上的demo几乎是没有的、在没有API的条件下研究了一周终于搞定了。 使用指南 使用的版本是Play 2.7.x libraryDep...

2019-06-04 15:08:52 156 0

原创 playframework - jwt会话

接着上一篇的play framework cors跨域、继续讲jwt在play framework中怎么使用的、什么是jwt?JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证...

2019-05-15 15:08:20 65 0

原创 playframework - 跨域

接着上一篇的play framework 文件上传 、作为一个web项目、cors是一个基本功能、用于防跨站请求攻击的。 使用教程 添加依赖 libraryDependencies += filters application.conf 配置 play.http { filters = ...

2019-05-15 15:07:44 227 0

原创 playframework - 文件上传

接着上一篇的play framework 数据库连接 、作为一个web项目、文件上传是必不可少的一个功能。 使用教程 jdbc配置 upload { path = "/Users/lake/dounine/github/public" prefix = "...

2019-05-15 15:06:56 139 0

原创 playframework - jdbc

接着上一篇的play framework redis缓存、作为一个优秀的框架怎么没有数据库操作呢、这篇介绍一下怎么配置jdbc连接、使用的数据库是mysql。 使用教程 build.sbt 添加依赖 libraryDependencies += javaJdbc libraryDependen...

2019-05-15 15:06:23 127 0

原创 playframework - redis缓存

接着上一篇的play framework 使用教程 使用教程 build.sbt 添加依赖 libraryDependencies += play.sbt.PlayImport.cacheApi libraryDependencies += "com.github.karelcemu...

2019-05-15 15:05:48 189 0

原创 playframework - 使用教程

play framework 2.x 是使用scala与java开发的一款框架、不能说是一个框架应该说是一种解决方案。 play framework 优点有如下几个: 开发效率高、scala的特点函数式编程。 无状态、可扩展性极好。 热部署、修改源码直接动态编译、无需重启服务。 优秀的RES...

2019-05-15 15:04:12 153 0

原创 Hadoop3.2 集群搭建

Hadoop3.2 集群新版本的搭建详细讲解过程,从下面第一张官方的图来看,最新版是3.2,所以大猪将使用3.2的版本来演示,过程中遇到的坑留给自己,把路留给你们,IT之路还有大猪。 大猪 为了把文章压缩极简方便小伙伴阅读,将使用root帐号进行所有操作。 准备两台主机10.211.55...

2019-04-28 14:50:34 246 0

原创 Selenium 人工智能操作工具

嘿,小伙伴们周末有没有像 大猪 一样在加班的,今天分享一个超有意思的东西 Selenium 自动化工具,不是说的好人工智能操作?大猪 什么时候也变成标题党了嘛,所谓的自动化不就属于人工智能操作嘛,把平时繁琐的事都交给它去做,这么一说还被你给蒙混过去了。 Selenium 就像真实用户所做的一样,...

2019-03-30 13:56:32 71 0

原创 Spark+Hbase 亿级流量分析实战(小巧高性能的ETL)

在上一篇文章 大猪 已经介绍了日志存储设计方案 ,我们数据已经落地到数据中心上了,那接下来如何ETL呢?毕竟可是生产环境级别的,可不能乱来。其实只要解决几个问题即可,不必要引入很大级别的组件来做,当然了各有各的千秋,本文主要从 易懂、小巧 、简洁、 高性能 这三个方面去设计出发点,顺便还实现了一个...

2019-03-29 18:01:23 246 0

原创 Spark+Hbase 亿级流量分析实战( 留存计算)

这篇已经是本系列文章的第五篇了,上一篇大猪已经介绍 PV/UV 的实现方式以及程序的计算逻辑,本篇大猪继续为小伙伴介绍 留存 ,看在Spark+Hbase的架构中到底是怎么实现这种指标的。 大猪 的习惯就是能上图就尽量不BB,好的图是会说话的,大猪 也在努力实现中。 详细分析过程 大猪25...

2019-03-28 23:50:05 320 0

原创 Spark+Hbase 亿级流量分析实战( PV/UV )

作为一个百亿级的流量实时分析统计系统怎么能没有PV/UV这两经典的超级玛丽亚指标呢,话说五百年前它俩可以鼻祖,咳咳…,不好意思没忍住,多嘴,回归正文,大猪 在上一篇已经介绍了 小巧高性能ETL程序设计与实现 了,到现在,我们的数据已经落地到Hbase上了,而且日志的时间也已经写到Mysql了,万事...

2019-03-28 00:25:08 594 0

原创 Spark+Hbase 亿级流量分析实战(日志存储设计)

背景 接着上篇文章 百亿级流量实时分析统计 - 数据结构设计 我们已经设计好了日志的结构,接下来我们就准备要开始撸代码了,我最喜欢这部分的环节了,可是一个上来连就撸代码的程序肯定不是好程序员,要不先设计设计流程图?那来吧!!! 流程图 设计一 用户发起文章操作,发起请求日志 日志将由SLB服...

2019-03-25 00:01:21 582 0

原创 Spark+Hbase 亿级流量分析实战(数据结构设计)

背景 靠文章生存的大厂们简书/小红书/CSDN(PS:好吧你们仨记得给我广告费),对优秀的文章进行大数据分析的工作必不可以少了,本系列文章将会从关于文章的各个维度进行实战分析,这系列文章新手可借着踏入大数据研发的大门,至于大数据的大佬们可以一起来相互伤害,至少为什么取名为 ‘‘百亿级流量实时分析统...

2019-03-23 18:22:19 308 0

原创 Spark 高级篇 - 程序不重启还能支持动态注册UDF

昨天有位大哥问小弟一个Spark问题,他们想在不停Spark程序的情况下动态更新UDF的逻辑,他一问我这个问题的时候,本猪心里一惊,Spark**还能这么玩?我出于程序员的本能回复他肯定不行,但今天再回过来头想了一想,昨天脑子肯定进水了,回复太肤浅了,既然Spark可以通过编程方式注册UDF,当然...

2019-03-15 18:16:49 319 0

原创 Scala 反射动态创建方法的骚操作

有时候我们想定义一个字符串的方法,然后通过scala的动态创建class,然后反射调用方法,在很多情景下是在学有用的,比较动态自定义spark的mapParations,当然了,每个人的需求都不一样,但是底层原理是一样的。 先画饼 运行 object CreateTest{ def mai...

2019-02-27 20:50:50 700 0

原创 简单易懂的Actor通讯系统栗子

使用 定义消息协议 object Messages { case class Hello(content: String) case class World(content: String) } 定义常量 object Cons { val ResourceManagerNam...

2019-02-21 11:15:29 78 0

原创 来、这里有Hbase导出CSV格式数据的文章

新鲜文章,昨天刚经过线上验证过的,使用它导出了3亿的用户数据出来,花了半个小时,性能还是稳稳的,好了不吹牛皮了,直接上代码吧。 MR 考查了Hbase的各种MR,没有发现哪一个是能实现的,如果有请通知我,我给他发红包。 所以我们只能自己来写一个MR了,编写一个Hbase的MR,官方文档上也有相...

2019-02-21 11:13:43 207 0

原创 Spark 在文件上直接使用SQL查询

有时候有没有这么一种情况,我拿到了一个sql,csv,parquet文件,一起来就想写sql,不想写那些乱七八糟的的东西,只是想快速实现我要的数据。那么我们可以利用spark直接操作文件的特性处理这样的问题。 使用方法 csv spark.sql("select * from csv...

2019-02-21 11:11:39 168 0

原创 Spark 直接操作数据源 MySQL

如果我们的Mysql服务器性能不咋滴,但是硬盘很够,如何才能做各种复杂的聚合操作?答案就是使用spark的计算能力的,我们可以将mysql数据源接入到spark中。 读取 val mysqlDF = spark .read .format("jdbc") .op...

2019-02-21 11:10:51 207 0

原创 Spark 数据源jdbc2新增upsert功能

在spark的数据源中,只支持Append, Overwrite, ErrorIfExists, Ignore,这几种模式,但是我们在线上的业务几乎全是需要upsert功能的,就是已存在的数据肯定不能覆盖,在mysql中实现就是采用:ON DUPLICATE KEY UPDATE,有没有这样一种...

2019-02-21 11:10:10 307 0

原创 Scala shell 使用外部包方法

我们可以使用scala shell做很多事情,比如测试一些demo,不用再打开idea那类那么重的编辑器,当然还有其它用法,像我们使用hbase有这样的问题,只是想测试hbase一些东西,但是每次连接hbase很慢,使用scala shell可以先把hbase连接池先创建好,需要测试什么样的代码...

2019-01-31 14:42:07 388 0

原创 你们还在用 Scala Tuple234..? Outer啦

为什么这么说呢,难道我自己多年使用的方式错了嘛,是的,你没错,我错了,哈哈,主要原因是使用Tuple的时候容易搞错对象,Tuple2的时候还知道第一个参数跟第二个参数的意思,后面多来个几参数你会记得_1._2._3._4代表的意思是什么吗?代码结构也不好维护,所以请结束使用Tuple吧 请开...

2019-01-31 14:41:19 129 0

原创 Hbase 迁移数据[导出,导入]

有没有这样一样情况,把一个集群中的某个表导到另一个群集中,或者hbase的表结构发生了更改,但是数据还要,比如预分区没做,导致某台RegionServer很吃紧,Hbase的导出导出都可以很快的完成这些操作。 环境使用 现在环境上面有一张表logTable,有一个ext列簇 但是没有做预分区...

2019-01-25 00:44:39 95 0

原创 Spark 资源动态释放

通过spark-submit会固定占用一占的资源,有什么办法,在任务不运作的时候将资源释放,让其它任务使用呢,yarn新版本默认已经支持了,我们使用的是HDP。 版本如下 配置 HDP里面已经默认支持spark动态资源释配置 代码配置 val sparkConf = new Sp...

2019-01-10 10:16:01 1127 0

原创 Gradle 打包上传中央仓库

打包步骤 生成gpg密钥 gpg --full-generate-key gpg (GnuPG) 2.2.12; Copyright (C) 2018 Free Software Foundation, Inc. This is free software: you are free to cha...

2019-01-10 10:14:16 367 0

原创 HDFS_DELEGATION_TOKEN 还原及解决方案

HDFS_DELEGATION_TOKEN 这个BUG在很多文章中都出现着,讲了很多原理,但是只给出了官方引用地扯,完全没有给出如何解决,我们线上的业务就有着这样的问题,7天一到马上出现这问题了,官方明明说这个bug修复了呀,因为我们使用的版本是比较新的,理论上不会有这样的问题才对,可是偏偏就有...

2018-12-29 17:21:43 1090 0

原创 Hive 创建外部表失败解决方案

在hdp平台上,使用hive控制台创建一个hbase的外部表,出现ERROR : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:o...

2018-12-07 17:26:25 682 0

原创 干货SSH web版

想不想拥有一个网页版本的ssh?,想就快看看这里,演示图会给你说明一切。 安装 RHEL/CentOS/Fedora yum install shellinabox -y 配置 vi /etc/sysconfig/shellinaboxd 请加上最后一句,否则连不上 # Shell in ...

2018-12-07 17:25:08 1035 0

原创 Scala精简版Filebeat日志采集器

多功能Scala精简Filebeat日志采集版,可高度定制化。 依赖包 compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.7' compi...

2018-12-07 17:23:41 150 0

原创 大数据平台docker一键搭建

想不想快速拥有大数据环境?如何才能一键安装?傻瓜式引导?这里就有你想要的,我们可以使用hortonworks出品的sandbox-hdp来搭建,它是建立在docker环境之上的集群,很轻易的主可以把环境搭建起来。 使用方法 这里我会使用HDP的最新版本3.0.1作为演示,包含的组件版本如下 ...

2018-12-07 17:20:31 2484 1

原创 大数据 Flink 1.8 最新版本使用

Flink 1.8 的快照版本已经发布,我们可以来使用一下,当然了,过程肯定还是有一些曲折的,这里已经帮大家给记录下来了 使用过程 下载 git clone https://github.com/apache/flink 编译(大概有20分钟这样) cd flink mvn clean pa...

2018-11-19 01:24:31 2409 0

原创 Flink - CEP 实时分用户析攻击行为

在这样一种场景,用户的登录行为数据都会以LoginEvent的行式记录下来,每次失败或者成功以及错误都会记录下来,一般客户端都会进行检验,正常的用户不可能在一秒钟之内登录错误多次,这时候我就得怀疑这部分数据是不是机器对用户的密码进行暴力破解,如果有需要我们得将这些攻击IP进行封锁。 Flink...

2018-11-19 01:22:47 3785 5

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