自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 大数据常见面试题(一)

一、当前集群环境CDH 6.3.3hadoop 3.0.0hbase 2.1.0hive 2.1.1impala 3.2.0spark 2.4.0kafka 2.2.1scala 2.11.12二、hadoop1.Hdfs的工作原理(读和写)★★★★★读:client请求namenode ,获取目标文件的元数据信息,namenode校检无误后,返回给client,client根据元数据与就近的datanode建立连接,获取block 块,并将block 块合并后,返回给cl

2021-04-21 23:24:38 1989 5

原创 Windows环境提交MapReduce任务到Linux报错

系统环境C.D.H 版本:6.2.0hadoop 版本:3.0.0集群环境:Linux CentOS7①.java.io.IOException: Port 9820 specified in URI hdfs://nameservice1:9820/user/root/.staging/job_1616116977910_0014/job.splitmetainfo but host ‘nameservice1’ is a logical (HA) namenode and does not u

2021-03-19 15:11:41 610

原创 使用Java的IO特性拷贝目标文件

序言使用 JAVA的 文件相关 API 从一个超多条 txt 文件的大数据包中,拷贝所需的几百条数据到另外的文件夹下。前置条件这里提供了一个模拟开发情形,数据量较小。原数据包目标文件名单代码package com.fahai.mytest;import java.io.*;public class FilterFiles { public static void main(String[] args) throws FileNotFoundException {

2020-07-28 15:54:40 282 2

原创 笔记本有线接内网、无线接外网

概述发现很多小伙伴在开发的时候,会遇到一个很常见的问题,即在公司需要使用内网连接到公司的内部虚拟机上进行开发,但是本地又需要外部网络的支持。当然,最简单的方法是拔插网线,反复连接wifi了。于是,为了避免这种看似有效实际很low的方法,本文简单介绍了,同时实现,网线连接内网,无线连接wifi,并且之间完全没有影响的办法。准备笔记本网线步骤① 断掉有线网络,接入无线网络② 进入控制面板的网络连接③ 设置网络优先级点击属性,进入 跃点设置`关闭自动跃点,设置 无线 的跃点数为 1

2020-05-11 17:53:08 4895

原创 大数据开发工程师面试题 (20.04.16)

概述本篇是本周周四博主面试遇到的问题,在此和大家分享一下。正文1.介绍一下你的项目那肯定是拿自己最拿手的项目啊,博主最近交付的项目名叫:XXX综合分析系统,就拿它讲一讲咯。参考示例:这是我的一个小伙伴 分享的 java项目的重点部分的讲述方式。壹背景:当时,有一个任务指标,是说,要我们根据 用户的历史购买记录或者访问足迹,定制有针对客户的广告产品的推送。贰接到任务后的思路:我接到的...

2020-04-17 00:39:47 785 2

原创 大数据开发工程师面试题 (20.04.15)

概述本篇同样是一些博主最近面试遇到的问题,在此和大家分享一下。正文1.在开发中,你们用的Flink版本答: 我们使用的是 Flink 1.8.0 版本。注意:各个版本的发布时间2.Flink发生数据倾斜,怎么解决?自带的数据倾斜解决机制?答:①自带的机制 rebalancing : 分区元素轮循,从⽽为每个分区创建相等的负载。dataStream.rebalance()...

2020-04-17 00:07:55 530

原创 大数据开发工程师面试题 (20.04.14)

概述本篇博客将收集总结一些,本博主面试 大数据开发工程师 岗位遇到的面试题,虽然不一定高频,但是也算经验之谈,希望对各位有所帮助。一1.什么是Spark RDDRDD:弹性分布式数据集 (Resilient Distributed DataSet)。Spark 中最基本的数据抽象是 RDD。创建RDD方法两种: 1.Driver并行化现有的Scala集合 2.引用外部存储系统2...

2020-04-14 23:13:03 1442 1

原创 项目实施-14完结篇(配置自动调度)

概述本篇是用户综合分析系统专栏的最后一篇。到本篇为止,我们此次的项目实施宣告终结。我们已经完成了大数据 流处理与批处理 的设计编码,已经实现了基本的数据处理任务,但是,因为批处理一般都是定期执行的,而且多数是在非服务器高峰期的半夜执行的,因此,我们需要用到 Azkaban的任务调度,帮我们完成批处理的自动执行。设计计划附:完整的计划zip包:https://pan.baidu.co...

2020-04-10 18:33:59 295

原创 项目实施-13(集成Flink计算引擎)

概述通过11、12 篇的数据接收与处理,我们已经拿到了标准的计算模型,之后只剩下与流计算集成,即可完成实时的用户风险评估。本篇将介绍项目中引入Flink流计算框架的方案解决。整体框架query 包中是对Flink中的可查询的状态数据的一些查询展示sql 包中是一些自定义的函数和 离线数据处理 的一些简单示例 Flink Table apistream 包中是此次项目集成 f...

2020-04-10 00:36:00 465

原创 项目实施-12 (数据抽取 贰)

概述本篇承接项目实施-11 https://blog.csdn.net/ASYMUXUE/article/details/105353601继续介绍 风险评估数据 的抽取。本篇涉及部分简单算法,请参考https://blog.csdn.net/ASYMUXUE/category_9862606.html抽取验证数据思路总结: 我们通过 从登录的日志中 获取到用户登录的数据:①...

2020-04-09 23:06:27 314

原创 Azkaban 任务调度工具

概述Azkaban是由Linkedin公司推出的⼀个批量⼯作流任务调度器,主要⽤于在⼀个⼯作流内以⼀个特定的顺序运⾏⼀组⼯作和流程,它的配置是通过简单的key:value对的⽅式,通过配置中的dependencies 来设置依赖关系,这个依赖关系必须是⽆环的,否则会被视为⽆效的⼯作流。Azkaban使⽤job配置⽂件建⽴任务之间的依赖关系,并提供⼀个易于使⽤的web⽤户界⾯维护和跟踪你的⼯作流。...

2020-04-09 21:56:42 1155

原创 项目实施-11(数据抽取 壹)

概述使用Flume从业务系统中获取到用户的行为日志之后,我们需要对这些日志进行一定的清洗,并才采集出对之后分析有用的数据。本篇和下篇将根据,用户登录行为的风险判定,对数据抽取做简单的介绍本篇主要介绍抽取原始数据整体框架引入依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.a...

2020-04-07 00:04:43 296

原创 算法-入门篇(球面距离)

概述球面距离公式是计算球面上两点间距离的公式。设所求点A ,纬度角β1 ,经度角α1 ;点B ,纬度角β2 ,经度角α2。则距离S=R·arc cos[cosβ1cosβ2cos(α1-α2)+sinβ1sinβ2],其中R为球体半径。详见 百度百科:https://baike.baidu.com/item/%E7%90%83%E9%9D%A2%E8%B7%9D%E7%A6%BB%E5%85%...

2020-04-02 23:17:31 4470 1

原创 算法-入门篇(欧式距离)

概述在数学中,欧几里得距离或欧几里得度量是欧几里得空间中两点间“普通”(即直线)距离。使用这个距离,欧氏空间成为度量空间。详见 百度百科:https://baike.baidu.com/item/%E6%AC%A7%E5%87%A0%E9%87%8C%E5%BE%97%E5%BA%A6%E9%87%8F/1274107?fromtitle=%E6%AC%A7%E5%BC%8F%E8%B7%9D...

2020-04-02 22:46:31 10635

原创 算法-入门篇(余弦相似度)

概述余弦相似度,又称为余弦相似性,是通过计算两个向量的夹角余弦值来评估他们的相似度。余弦相似度将向量根据坐标值,绘制到向量空间中,如最常见的二维空间。详见 百度百科:https://baike.baidu.com/item/%E4%BD%99%E5%BC%A6%E7%9B%B8%E4%BC%BC%E5%BA%A6/17509249?fr=aladdin数学模型计算公式一般来讲最终数...

2020-04-01 23:18:38 2093

原创 Java中的一些格式转换

概述本文整理了JDK中一些常用的格式转换,方便忘记时查询使用。(本文将不定期更新)时间在线时间转换校验工具: https://www.sojson.com/unixtime.html①String装换为Date //字符串转时间 String time = "2020-04-01 12:00:00"; SimpleDateFormat simpleDateFormat = new...

2020-04-01 09:31:54 229

原创 项目实施-10 (搭建SpringClood微服务)

概述为了应对高并发的场景,javaweb项目一般都是部署成集群形式,同时通过Spring Cloud的 Eureka 技术,实现web模块,负载均衡的访问服务模块。本文介绍了,搭建简单的高可用的Eureka集成方案。整体框架搭建注册中心①依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://m...

2020-03-31 21:12:36 278

原创 Echarts + ajax 动态获取数据库信息

概述需求:使用 Echarts 动态获取数据库中的,每个城市的注册量,并展示报表。本文将略去 控制层开发,直接上 Echarts图层的前端开发。前提已知数据库中存在一张4个字段的表,即id、name、times(注册次数)、date(更新时间)已开发好的后端。Echarts相关参考:https://www.cnblogs.com/zhaoyingjie/p/5963056.ht...

2020-03-29 20:54:34 1450

原创 项目实施-09 (对接Flume)

SpringBoot对接Flume在大数据流处理当中,我们需要从项目中,采集到用户的行为日志,通过kafka,输送到计算引擎中,进行计算分析。这其中的日志文件的采集,我们需要通过Flume完成对接。①依赖坐标 <!--引入Flume--> <dependency> <groupId>org.apache.flum...

2020-03-29 18:14:57 253

原创 项目实施-08 (Jquery埋点设计)

概述前端页面中要设计埋点,用来收集用户的行为习惯等信息以便进行实时流计算,从而提高系统的安全性。如:登录风险评估等。本篇简单介绍了一个登录输入时长检查的埋点的设计。引入Cookic引入cookic,目的是为了,我们可以将在页面定制的一些采集的数据,通过请求发送的形式,携带到服务器端。①引入cookic插件将下面的文本Copy到自定义的一个**.js**结尾的文件中, 完成cookic...

2020-03-29 16:23:53 749

原创 项目实施-07 (Jquery插件定制、表单验证定制)

概述在前端页面中,往往需要一些表单验证和额外功能,在本篇中,介绍了一些简单的定制插件。插件①验证码$.fn.extend({ //定义一个验证码插件 verifyCode:function () { $(this).click(function () { //单击事件 var codepic = document.getEleme...

2020-03-29 13:54:47 212

原创 项目实施-06 (Web前端 页面)

概述此次项目的前端页面采用EasyUI前端框架。同时,在可视化方面,引入Echarts库。EasyUi官网:http://www.jeasyui.net/Echarts官网:https://www.echartsjs.com/zh/index.html整体框架其中,static包中,存放一些插件、EasyUI依赖、Echarts依赖、等静态资源。work包中,存放本次项目所需的页...

2020-03-29 12:26:39 292

原创 项目实施-05 (Web前端 java层)

概述这是一个严格的前后分离项目,前端开发比较头疼的地方在于小细节可真的太多了。比如拦截器、全局异常的处理、验证码、JQuery插件定制等等。整体框架依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww...

2020-03-29 01:46:44 303

原创 JS(JQ) 部分常用语法

JavaScript相关前端页面的简单编写是Java后端开发不可或缺的技能。以下总结了部分常用的JS语法,以备使用。部分语法判断是否是 非数字: isNaN( )true 不是数字;false 是数字定义一个对象: var obj = {属性名:属性值,…}遍历一个对象: for (自定义变量名 in 集合){ }数组创建: var 自定义数组名 = [1,…...

2020-03-28 15:11:05 212

原创 Linux 常用命令

注:[ ]表示可省略参数 ( )表示可替换前面的内容 『 』为必须存在本文将不定期更新https://www.runoob.com/w3cnote/linux-common-command-2.html一、组–命令1.创建用户组: groupadd -g id编号 组名2.修改组ID:groupmod -g 新id编号 组名3.修改组名:groupmod -g 新(旧)id编号 -n...

2020-03-22 22:01:19 306

原创 项目实施-04(文件系统集成)

概述本次项目,采用FastDFS文件系统,存储头像文件。FastDFS文献参考:https://blog.csdn.net/weixin_38231448/article/details/95815069分布式⽂件系统(Distributed File System)是指⽂件系统管理的物理存储资源不⼀定直接连接在本地节点上,⽽是通过计算机⽹络与节点相连。判断⼀个分布式⽂件系统是否优秀...

2020-03-22 15:49:17 465

原创 MySQL的主从复制、读写分离

概述当系统处于高并发的请求环境下,我们的服务器易出现单点故障 与单点压力问题,因此采用集群的方式进行·负载均衡·。同时,开启数据库的主从复制与读写分离策略。本篇将以一台主机、一台从机介绍简单MySQL集群的搭建。工具准备MyCat中间件 获取地址:(获取码:d7g3)https://pan.baidu.com/s/1YHKyVpeMpErJTLNh3PAd6Q什么是MyCat?http...

2020-03-19 14:09:09 281

原创 项目实施-03(后端组件整合)

概述本篇进行对项目实施-02(后端开发)的后端模块https://blog.csdn.net/ASYMUXUE/article/details/104920206进行组件扩展。因为,此篇章将做成通用性极强的记录,所有本篇将不定期更新。日志系统的整合引入logback.xml文件标签说明%m 输出代码中指定的消息  %p 输出优先级,即DEBUG,INFO,WARN,ERROR...

2020-03-19 00:30:17 324

原创 SpringBoot的AOP编程

概述Spring的两大核心思想:IOCIOC(Inversion of Control) 控制反转:对象的创建 由原来代码中new的方法 转移到 spring的配置文件中,由spring工 厂进行创建。spring不仅提供了对 对象的管理,而且对象和对象 间的依赖关系 也提供了 完美的解决方案–即,DI(Dependency Injection)依赖注入。AOP面向切面编程AOP的使...

2020-03-17 21:56:25 205

原创 使用redis开启Mybatis的二级缓存

概述使用MyBatis自身的设置开启二级缓存,在分布式系统下将不起作用,因此,我们才用中间件开启二级缓存,此文介绍了使用Redis开启二级的解决策略。引入依赖 <!--redis的启动器--> <dependency> <groupId>org.springframework.boot</groupId> &lt...

2020-03-17 17:20:23 256

原创 项目实施-02 (后端开发)

前言本次项目的重点在于用户行为的综合分析,即平台计算处理系统。后端用户系统没有复杂的业务逻辑,只实现简单的CRUD。库表设计本次项目采用 MySQL数据库DROP TABLE IF EXISTS t_user;set character_set_results=utf8;set character_set_client=utf8;CREATE TABLE t_user ( id...

2020-03-17 14:41:10 275

原创 项目实施-01 (Maven依赖+yml文件)

基本此次项目采用 SpringBoot框架,因此引入以下依赖。<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:s...

2020-03-16 18:06:08 1774

原创 项目实施-00(引言)

项目背景近年来,伴随着互联网金融的风生水起;国家出台相关文件,要求加大互联网交易风险防控力度;鼓励通过大数据分析、用户行为建模等手段建立和完善交易风险检测模型。但是目前大数据风控还存在时效性差,准确性不高等问题。综合用户分析平台包含 综合数据分析|登陆风险|注册风险|交易风险|活动风险分析等模块。以下是个各个子系统之间的关系。业务系统:通常指的是APP+后台或Web端(服务目标用户),是业...

2020-03-16 17:57:33 233

原创 Flink 窗口计算

Flink 窗口计算一、概述窗⼝计算是流计算的核⼼,窗⼝将流数据切分成有限⼤⼩的“buckets”,我们可以对这个“buckets”中的有限数据做运算。在Flink中整体将窗⼝计算按分为两⼤类:keyedstream窗⼝、datastream窗⼝,以下是代码结构:keyedStreamstream.keyBy(…) <--------------- k...

2020-03-15 16:43:22 811 1

原创 Flink 状态计算

Flink 状态计算一、概述https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/stream/state/state.htmlFlink是⼀个基于状态计算的流计算服务。Flink将所有的状态分为两⼤类: keyed state与 operatorstate.所谓的keyed state指的是Flink底层会给每⼀个...

2020-03-15 16:40:50 1972

原创 Flink

Flink一、概述Flink是构建在数据流之上的有状态计算的流计算框架,通常被⼈们理解为是 第三代 ⼤数据分析⽅案。①.Task和Operator ChainFlink是⼀个分布式流计算引擎,该引擎将⼀个计算job拆分成若⼲个Task(等价于Spark中的Stage),每个Task都有⾃⼰的并⾏度,每个并⾏度都由⼀个线程表示,因为⼀个Task是并⾏执⾏的,因此⼀个Task底层对应⼀系列的线...

2020-03-09 21:44:52 711

原创 Struct Streaming

Struct Stream一、概述Structured Stream是基于Spark SQL引擎构建的可伸缩且容错的流处理引擎。使得⽤户可以像使⽤SparkSQL操作静态批处理计算⼀样使⽤Structured Stream的SQL操作流计算。当流数据继续到达时,SparkSQL引擎将负责递增地,连续地运⾏它并更新最终结果。使⽤Dataset/DataFrame API 实现对实时数据的聚合、...

2020-03-04 20:05:25 710

原创 Spark Streaming

Spark Streaming一、流计算的定义一般流式计算会与批量计算相比较。在流式计算模型中,输入是持续的,可以认为在时间上是无界的,也就意味着,永远拿不到全量数据去做计算。同时,计算结果是持续输出的,也即计算结果在时间上也是无界的。流式计算一般对实时性要求较高,同时一般是先定义目标计算,然后数据到来之后将计算逻辑应用于数据。同时为了提高计算效率,往往尽可能采用增量计算代替全量计算。批量...

2020-03-01 20:11:43 309

原创 Spark SQL

Spark SQLSpark SQL是用于结构化数据处理的一个模块。同Spark RDD 不同地方在于Spark SQL的API可以给Spark计算引擎提供更多地信息,例如:数据结构、计算算子等。在内部Spark可以通过这些信息有针对对任务做优化和调整。这里有几种方式和Spark SQL进行交互,例如Dataset API和SQL等,这两种API可以混合使用。Spark SQL的一个用途是执行S...

2020-02-28 11:08:24 567

原创 java 主线程与子线程

在JAVA的main函数中,开启一个子线程时,主线程会执行下去,不会等待子线程执行,但是只有子线程执行完毕后,JVM才退出。==调用 join 方法,可以使主线程等待 子线程运行完毕之后再执行 ==public class ThreadTest { static public int a = 0; //定义一个静态变量 public static void main(Str...

2020-02-27 18:23:40 2070

空空如也

空空如也

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

TA关注的人

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