10 yueguanghaidao

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 2k+

Apache Druid源码导读--Google guice DI框架

缘起在大数据应用组件中,有两款OLAP引擎应用广泛,一款是偏离线处理的Kylin,另一个是偏实时的Druid。Kylin是一款国人开源的优秀离线OLAP引擎,基本上是Hadoop领域离线OLAP事实标准,在离线报表,指标分析领域应用广泛。而Apache Druid则在实时OLAP领域独领风骚,优异的性能、高可用、易扩展。Kylin的实现细节网上资料很多,而Druid很少,最近打算研究下源码,写几...

2019-10-13 12:27:29

Jackson多态反序列化的使用

缘起最近看Apache Druid的源代码(0.5很老的版本),印象最深的就是对Jackson的多态反序列化和注入的使用了,这里也属于自己的知识盲点,看着复杂的json直接反序列化为可用对象,直呼过瘾。所以一直想找个机会实践一下,这不需求就来了。需求我们的实时指标统计是通过Flink Steam SQL计算为维度、指标后后入Hbase,然后通过Phoenix SQL给前台展示。现在新接入Ky...

2019-09-11 20:11:55

sklearn2pmml xgboost缺失值(missing)处理的坑

sklearn2pmml xgboost缺失值(missing)如何处理今天同事在部署xgboost pmml模型时遇到了大坑,线上spark预测和本地python预测结果怎么都不对应,记录一下处理过程。看了下同事的代码,貌似也没有问题from sklearn2pmml import PMMLPipelinefrom sklearn2pmml import sklearn2pmmlfro...

2019-06-13 20:27:32

金融特征计算平台

金融特征计算平台前段时间一直在做内部的特征平台,这不还有部门发的PR稿-滴滴金服风控升级:上线特征计算平台 已沉淀5000+特征,也算是给自己的交代了,今天主要介绍一下该计算平台,以及沉淀下来的东西。背景金融的核心是风控,风控的核心是数据与特征。如何让数仓人员加工出来的特征可视化,分级管理?在成千上万的特征里,模型人员如何能找到高价值、预测性强的特征?找到了特征,如何方便的提取特征?以上...

2019-04-05 16:59:39

2017年终总结(数据开发,数据分析)-忙乱

2017年终总结(数据开发,数据分析)-忙乱每次都会感慨时间过得真快,这一次尤其明显。不时有网友问到这一年都干嘛了,怎么一篇Blog都没有?的确很汗颜,一呢2017年的确忙碌了很多,精力偏少,深入思考的少了;二是发现可输出高价值的东西偏少,没有提笔欲望。希望2018年能有所改观。来滴滴刚好13个月,2016年12月13号入职的,在这一年多的日子了,工作方向发生了较大的转变,以前自己和Pyt...

2018-01-13 18:42:13

2016年终总结--一个Python程序员的跨界之旅

时间过得真快,感觉15年年终总结刚写完,16年就结束了,看了blog,16年就写了可怜的8篇,对我来说16年还算顺风顺水。真正可能出乎意料的是年底我离开了呆了2年半的龙图游戏,暂时放弃了用了3年半的Python,转向了Java领域和数据仓库,这也算是跨界了吧。。。家庭16年老婆和闺女来北京住了小半年,那段时间是很幸福的一段时光,最终还是不适应北京的天气和雾霭,老婆和闺女逃离了北京,我又恢复了“单身”

2017-01-07 22:50:39

wrk 现代HTTP压测工具,动态构建请求

HTTP压测工具通用的比如apache ab, httpload, 但碰到有些请求是动态构建的,比如需要时间校验,需要做md5加密,这些工具就比较尴尬了。还好有wrk(https://github.com/wg/wrk)你可以使用,可以内嵌lua脚本,通过luajit加速,当然如果需要做分布式压测,可以试试locust(https://github.com/locustio/locust),使用了P

2016-11-04 19:02:25

openresty+consul动态配置更新(服务变更发现)

最近在做数据收集平台,用openresty往kafka里push数据,不管是kafka broker也好,还是一个配置也好,希望做到动态更新,不需要reload openresty。尤其是针对接口调用的认证,配置很少,如果每次都去redis或mysql中去取感觉也没有必要,直接用lua做配置表无疑性能提高不少。再说kafka broker问题,虽说producer会感知到broker的增加(http

2016-10-19 18:26:28

Nginx容器动态流量管理方案-nginx-upsync-module+nginx_upstream_check_module初体验

缘起最近一直在研究日志收集系统的框架,之前在线游戏的数据发送都是由游戏服务器发送的,我来之前一直是rsync传输,也还算稳定。但现在上了单机游戏,只能由手机客户端直接发送,dau比较高,最近很火的<<贪吃蛇>>在海外上线,一个星期dau已经达到千万级别。初步方案,lvs做4层负载均衡,下挂nginx做7层转发,数据直接入kafaka。一直不太喜欢通过reload修改nginx upstream,刚好

2016-10-12 22:14:38

100行代码实现gevent调度模型

昨天心血来潮看了https://github.com/locustio/locust/的源码,经常用ab或者httpload的童鞋可以看下locust的代码,支持分布式运行,通过gevent可以单机开N个协程模仿并发用户,分布式rpc用了zmq的PUSH,PULL模式,不得不说zeromq的确简洁。2年前研究过gevent,那时就想用纯Python模拟一下调度模型,后来也就不了了之了。原理其实和ge

2016-09-29 14:45:25

# mysql CREATE TABLE IF NOT EXISTS metadata lock坑

mysql CREATE TABLE IF NOT EXISTS metadata lock坑今天早上被一声声警报声给吵醒,拿起手机一看,too many processes,proc.num达到了529,我一愣,什么情况,这报警是第一次遇到,还是同时3台服务器都报警。赶快登陆服务器看看,ps一下的确是很多进程,而且都应该早就结束了,于是猜测试mysql的问题,show processlist一看,

2016-07-29 17:57:43

记一次django queryset的缓存优化

缘起看着我们单表记录快7000万行,突破亿行已经指日可待了,于是打算数据库分表,对应用层相对透明的做法就是引入数据库中间件,业界虽然有一些方案,比如阿里,360的,但大部分都是java或c的,最后看向了https://github.com/flike/kingshard,这是golang写的,代码质量还是挺高的,对我的胃口,于是先把kingshard当做代理用起来,发现了以前一直没有发现的问题。dj

2016-07-23 18:52:33

git远程外网地址变内网怎么破(ssh本地端口转发)

git远程外网地址变内网怎么破(ssh本地端口转发)?最近给longtubas上了负载均衡,相对来说我们并发并不高,但希望可用性尽可能高,本来打算用不饱和的机器做个lvs集群的,但IDC说给个额外的公网ip需要申请机器,推荐我们用云自带的负载均衡,倒也省的自己配置,IDC把之前公网ip绑定到负载均衡器上了,这导致我们搭建在服务器上的gitlab不可用了,折腾了一下,使用ssh本地端口转发解决了。当然

2016-05-26 13:04:54

玩转Python让人讨厌的编码问题

Python的编码问题基本是每个新手都会遇到的坎,但只要完全掌握了就跳过了这个坑,万变不离其中,这不最近我也遇到了这个问题,来一起看看吧。事情的起因是review同事做的一个上传功能,看下面一段代码,self.fp是上传的文件句柄fpdata = [line.strip().decode('gbk').encode('utf-8').decode('utf-8') for line in self.

2016-01-31 00:03:08

2015年终总结

拖了好多天,一直想写,却一直没有动笔,赶在15年年会后的第一个周末也是随缘。家庭毕业2年半了,这两年走完了很多人很多年走完的路,结婚,生子。虽说速度有点过快,甚至有时自己都感觉不太真实,但一切都挺美好,生活就是这样不需要刻意的去安排去准备,一切随缘。看着闺女天天无忧无虑的玩耍,总是让我心情大好,同时也让我好奇,小孩子到底在想什么?15年欠了你们很多陪伴,16年我会加倍弥补。工作来龙图游戏1年半了,1

2016-01-24 21:19:45

如何面试Python后端工程师?

前一段时间有人在知乎提了http://www.zhihu.com/question/33398583,如何面试Python工程师?我斗胆回答了一下, http://www.zhihu.com/question/33398583/answer/59017861吃午饭的时候我就一直在想这个问题,我觉得重点不是Python而是后端工程师,因为Python只是系统的一部分,linux基础操作要熟吧,sql

2015-11-04 15:07:50

Linux内核参数详解

内核参数详解长期更新SYN_RECV服务端收到sys,还未发出syn+ack 1.net.ipv4.tcp_synack_retries 默认值5,linux对应1+2+4+..32=2^6-1=63s2.net.ipv4.tcp_syncookies 应该设置为1,防止SYN Flood。 处在SYN_RECV的TCP连接称为半连接,存储在SYN队列。大量SYN_RECV会导致队列溢出,后

2015-07-30 09:23:20

Effective TCP/IP Programming读书笔记

TCP/IP深入思考TCP/IP这是我读Effective TCP/IP Programming的 读书笔记和思考,以及做的一些实验。强烈建议后端工程师有空读一读这本书,有些细节的确是我们平时没有注意的,读了最好自己动手做一些实验加深理解。fin的含义对端发送fin会导致read()返回,但send()照样可以发送,也就是单纯的fin其实相当于shutdown(SHUT_WR)。当对端应用程序崩溃后

2015-07-26 16:20:31

Linux/Unix系统编程手册--SOCKET章节读书笔记

SOCKET章节读书笔记强烈推荐Linux/Unix系统编程手册,号称超越APUE的神书。backlog含义#include <sys/socket.h>int listen(int socketfd, int backlog)backlog参数限制未决连接(未accept)的数量,在这个数量之内,connect会立刻成功。 Linux上上限为128,定义在udp已连接socketudp soc

2015-07-21 19:19:45

读《《图解TCP-IP》》有感

读《《图解TCP/IP》》有感 TCP/IP最近几天读完《《图解TCP/IP》》,收获蛮多,记得上学时读stevens的《《TCP/IP详解》》时那是一个囫囵吞枣,没认真看也看不下去。等有时间再拜读下《《TCP/IP详解》》吧,估计能有不少共鸣。现在觉得,要想比较透彻理解TCP/IP,还得需要有服务器编程经验,学校应该同时开设《socket编程》》相关课程,最好同一个老师教,可以串讲,不然光理

2015-07-15 21:09:37

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。