Mr_Hagrid
码龄14年
关注
提问 私信
  • 博客:229,431
    229,431
    总访问量
  • 78
    原创
  • 2,235,188
    排名
  • 73
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2010-06-23
博客简介:

技术大神之路

查看详细资料
个人成就
  • 获得66次点赞
  • 内容获得18次评论
  • 获得197次收藏
创作历程
  • 13篇
    2020年
  • 1篇
    2019年
  • 3篇
    2017年
  • 31篇
    2016年
  • 32篇
    2015年
成就勋章
TA的专栏
  • 小白爱AI
    13篇
  • Solr
    4篇
  • gensim
    2篇
  • XML
    1篇
  • 分词器
    1篇
  • sklearn
    1篇
  • python
    6篇
  • 自然语言处理
    2篇
  • linux
    9篇
  • mariadb
    3篇
  • sqlalchemy
    2篇
  • pycharm
    1篇
  • 数据库
    2篇
  • 基础
  • spark
    1篇
  • java
    4篇
  • git
    2篇
  • maven
  • 算法
    1篇
  • hadoop
    16篇
  • vim
    1篇
  • 数据收集工具
  • 集群运维
    2篇
  • Flume
    3篇
  • kafka
  • web
    1篇
  • laravel
    1篇
  • 设计模式
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

357人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

用户活跃度标签建模

应用场景期望根据客户近3个月的登录行为和发帖更新贴行为,评估客户的活跃度,将活跃度分为多个等级,以根据不同的活跃等级开展不同的营销活动。基本思路1、采用聚类算法,特征值取最近3个月每周(一周取7天)登录次数,每周发帖次数,每周更新贴次数,按周展开列,共12周*3=36个特征值,对每个特征值按照时间周期做降权处理。借鉴牛顿温度冷却定律:本期温度=上期温度 * exp(-(冷却系数)*间隔的周期数)特征值考虑时间周期作降权处理。假设,第12周的一次登录,在今日的权重变为0.05(暂定),则,冷却系数
原创
发布博客 2020.06.08 ·
2788 阅读 ·
0 点赞 ·
1 评论 ·
19 收藏

Spark 为啥比 MapReduce 快?

Spark 为啥比 MapReduce 快?DAG优化 和 内存(1) 算子灵活性:MR只支持Map和Reduce 两种操作,而Spark有丰富的算子。(2) Map 中间结果写磁盘,Reduce 写HDFS,多个MR之间通过HDFS交换数据。(3) DAG引擎,先划分为Stage,Stage之间才Shuffle落盘,Stage之内,都可以内存处理。(4) spark 中的rdd数据可以缓存到内存中,充分使用内存,多次使用,减少IO。进程和线程(1) MR的任务调度和启动都是进程级别的,每个进
原创
发布博客 2020.06.06 ·
981 阅读 ·
0 点赞 ·
0 评论 ·
8 收藏

Hive SQL 优化

要想做好hive优化,首先要理解MR过程,HiveSQL转换为MR的过程,以及Hive表的分区分桶机制。本质上的优化是,减少读,避免shuffle 和 增加并发度。优化的手段:跳过不必要的读减少Shuffle读延迟问题数据倾斜Partition、Bucket 使用 Skew(hive对声明了Skew的列会单独使用文件存储,并且在资源分配上有优待)MapJoin(Broadcast Join),避免ReduceJoin增加热数据备份数对于倾斜部分单独拿出来,做Map Joi
原创
发布博客 2020.06.04 ·
1486 阅读 ·
0 点赞 ·
0 评论 ·
18 收藏

Spark Streaming

资料:Spark精品教程Spark Streaming通过JDBC操作数据库Spark Streaming的基本原理以时间为单位(通常在0.5到2秒之间\color{red}通常在0.5到2秒之间通常在0.5到2秒之间)切分为微型RDD,然后进行微批处理。spark streaming $\color{red}无法实现毫秒级别 $的响应,因为他的微批处理的特性,使得它每一段数据的处理都会经历Spark DAG,任务调度等过程,需要一定的开销。因此可以认为spark streaming实现的是准实时
原创
发布博客 2020.06.03 ·
231 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Flink Windows 多流 Join 和 SQL Join

Flink Windows Join 都是 Inner Join两个流join时,先做join操作,形成JoinedStream,然后再指定Window,最后接着join后的transform操作。案例:inputStream1:DataStream[(Long,String,Int)] = ...inputStream2:DataStream[(String,Long,Int)] = ...//通过DataStream Join方法将两个数据流关联inputStream1.join(input
原创
发布博客 2020.06.03 ·
3582 阅读 ·
0 点赞 ·
0 评论 ·
8 收藏

Flink 状态管理

有状态计算是指在程序计算过程中,在Flink程序内部存储计算产生的中间结果,并提供给后续Function或者算子计算结果使用。状态数据可以维系在本地存储中(Flink的堆内存或者堆外存),也可以借助第三方的存储,例如Flink已经实现的RocksDB,或者自定义其他存储。state 可以理解为Flink上下文中可以access的一个内存数据库(相比于无状态计算,需要实现同样功能需要借助外部数据库,如Redis),通过存取更新状态,从而实现有状态地算子运算。案例:用户想实现CEP(复杂事件处理),获
原创
发布博客 2020.06.03 ·
409 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Flink 时间概念与 WaterMark

Flink 时间概念与 WaterMarkFlink中的时间分为三种事件时间:Event Time接入时间:Ingestion Time处理时间:Processing Time[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v5oglSmm-1591153494979)(http://cdn.rabbitai.cn/flink/flink_time/01.png)]时间指定语法:env.setStreamTimeCharacteristic(TimeCharact
原创
发布博客 2020.06.03 ·
199 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Flink Window 机制

Flink 流的处理过程stream.keyBy(...) // 是否制定分组.window(...) 或者 .windowAll() // 指定窗口的种类,如果不分组,则指定为windowAll.trigger(...) // 指定触发器的类型,可选.evictor(...) // 指定剔除器,可选.allowedLateness(...) // 指定是否延迟处理数据,可选.sideOutputLateDate(...) // 指定OutPut Lag ,可选.reduce/aggregat
原创
发布博客 2020.06.03 ·
325 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Flink Exactly Once

Flink Exactly OnceFlink Exactly Once 语意是基于Chandy-Lamport这个算法的思想的改进版,引入了barrier,可以在不停止整个流处理系统的前提下,保存和恢复每个subtask的snapshot,让每个节点独立地做状态保存和恢复。Chandy-Lamport 算法Initiating a snapshot: 也就是开始创建 snapshot,可以由系统中的任意一个进程发起Propagating a snapshot: 系统中其他进程开始逐个创建 sna
原创
发布博客 2020.06.03 ·
237 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Flink DataStream API 介绍

DataStream 编程模型DataSource模块负责数据接入内置数据源:文件数据源readTextFile/readFile(InputFormat),Socket端口socketTextStream,集合数据源 fromElements第三方数据源:仅支持读取:Netty仅支持输出:ElasticSearch,HDFS支持读取和输出:Kafaka,RabbitMQ用户自定义数据源连接器Transformation模块负责数据集的各种转换操作单SingleDataSt
原创
发布博客 2020.06.03 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Flink基本概念和编程模型

数据分类有界数据,无界数据,其实没有必要,分为流数据和静态数据还差不多。Flink 编程接口高级语言:SQL声明式API Table API核心API DataStream/DateSet API低级构建模块 Stateful Stream ProcessingFlink程序结构第一步是获取ENV,StreamExecutionEnvironment是流式环境,而ExecutionEnvironment是批处理环境。有三种获取env的方式,以StreamExecutionEnvironme
原创
发布博客 2020.06.03 ·
221 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

一文搞懂网络协议

整个计算机和互联网行业,都是建立在数据化和网络传输基础之上的,因此,理解网络传输的模型对于一个计算机人才是十分必要的。TCP/IP 协议簇是网络协议中的事实标准TCP/IP 协议簇从下到上分为:​ 网络接口层:定义了物理接口和之上的驱动程序。​ 网络互联层:定义了IP和路由协议。​ 传输层:TCP、UDP,定义了线程端口级别的数据交换协议。​ 应用层:HTTP等,定义了不同问题下的解决方案。可以简单记忆为:WLan =》IP =》TCP =》HTTPTCP的三次握手t
原创
发布博客 2020.06.03 ·
469 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Druid为啥这么好用?

一、Druid设计原则(1)快速查询能力:部分数据聚合(Partial Aggregate) + 内存化(In-Memory)+索引(Index)(2)水平扩展能力:分布式查询(Distributed Data) + 并行化查询(Parallelizable Query)(3)实时分析能力:不可变的过去(Immutable Past),只追加的未来(Append-Only Future)。部分聚合:Partial AggregateDruid默认会对明细数据按最明细的全维度组合,以及指标,进行预先
原创
发布博客 2020.06.03 ·
1193 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

HQL window 窗口函数

HQL窗口函数声明:资料整理于网络,仅供参考学习,如有侵权,概不负责。数据准备Over函数NTILEROW_NUMBERRANK 和 DENSE_RANKCUME_DIST 和 PERCENT_RANKCUME_DISTPERCENT_RANKLAG LEAD FIRST_VALUE LAST_VALUELAGLEADFIRST_VALUE 和 LAST_VALU...
原创
发布博客 2019.09.11 ·
1383 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

菜鸟搞懂设计模式之一:依赖与耦合

谈及依赖与耦合,其实是指的在面向对象的设计模式中,类与类之间有以下六种耦合关系: 依赖、关联、聚合、组合、继承、实现。这六种耦合关系的强度依次增强。其实没有必要分那么多种类,可以统一称为依赖与耦合关系。依赖与耦合如果说A依赖B,那么没有B,A有些事儿就干不了了。比如我想出去旅游,那么一定要选择出行工具,因为靠自己的腿是走不了多远的。这里B就是出行工具,可以是汽车、火车、飞机等。因此我出去旅游这事儿
原创
发布博客 2017.11.22 ·
1982 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Laravel入门实战之二(CentOS6部署Nginx+Laravel线上运行环境)

安装centos的EPEL的第三方拓展程序包的源:vim /etc/yum.repos.d/epel.repo#[epel]name=Extra Packages for Enterprise Linux 6 - $basearchbaseurl=http://mirrors.ucloud.cn/epel/6/$basearchfailovermethod=priorityenable
原创
发布博客 2017.11.20 ·
830 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Laravel入门实战之一(打造一个PHP REPL)

Laravel 是个啥?这就是一个Web框架而已。框架、框架就是别人已经搭好了架子,就像一间房子,已经搭好了骨架,程序员只是来把砖头、石灰、地板、天花板这些也是半成品的材料,填补到框架中去,最后装潢成一栋漂亮的房子。一、 开发环境搭建程序员学习一门新的语言或者技术,最好的学习方法就是不断的有输入和输出。学习JAVA就要先安装JDK,然后打印出来一个Hello World; 学习Py...
原创
发布博客 2017.11.16 ·
1896 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Flume学习笔记之初识(三)

前言:今天开始每天抽两个小时研究Flume,从初步使用到深入的源代码探究,以期通过这个开源项目深入的学习Java。目标是2016年内熟悉整个Flume项目,能做插件的开发 (续上) 5 SinkProcessor SinkProcessor:协同多个sink间进行load balance和fail over(一)、Default Sink Processor:只有一个sink,无需创建Sink
原创
发布博客 2016.09.29 ·
634 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Flume学习笔记之初识(二)

前言:今天开始每天抽两个小时研究Flume,从初步使用到深入的源代码探究,以期通过这个开源项目深入的学习Java。目标是2016年内熟悉整个Flume项目,能做插件的开发三、flume数据流 一个source可以有多个channel, 但一个sink只能有一个channel source、channel、sink均需要设定一个type属性,来表示组件的类型。 可配置内置的type名称,如ne
原创
发布博客 2016.09.28 ·
561 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Flume学习笔记之初识(一)

前言:今天开始每天抽两个小时研究Flume,从初步使用到深入的源代码探究,以期通过这个开源项目深入的学习java。目标是2016年内熟悉整个Flume项目,能做插件的开发。一、 基本概念引入: Flume是一个分布式的,可靠的,高可用的海量日志采集、聚合、传输的系统。 数据流模型:source-channel-sink + topology (图1) 事务机制保障了消息传递的可靠性。 有丰富
原创
发布博客 2016.09.27 ·
477 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多