搜索推荐大数据业界资料(持续更新)
会议 时间 资料 比较match的内容 Qcon 2017 ArchSummit 北京2017大会演讲 PPT 合集 Qcon北京2017PPT合集 百度MPP数据仓库Palo开源架构解读与应用 FreeWheel OLAP实践 美团点评用户行为分析系统的构建与优化 2018 Qcon北京2018合集下载 QCon上海2018大会演讲 PPT 合集 ArchSummit北京2018大会演讲 PPT 合集 快手万亿级实时 OLAP 平台的建设与实践 ...
会议 时间 资料 比较match的内容 Qcon 2017 ArchSummit 北京2017大会演讲 PPT 合集 Qcon北京2017PPT合集 百度MPP数据仓库Palo开源架构解读与应用 FreeWheel OLAP实践 美团点评用户行为分析系统的构建与优化 2018 Qcon北京2018合集下载 QCon上海2018大会演讲 PPT 合集 ArchSummit北京2018大会演讲 PPT 合集 快手万亿级实时 OLAP 平台的建设与实践 ...
背景 本文档用于收集程序员基础的系统、语言及组件、生活中的学习资料以及效率工具等信息。 目前还没有细化,只是索引,所以只是一份列表,通过列表可以获取别人整理的细节,而不直接是知识细节。提到的工具,也只是工具列表而不是具体的工具怎么使用。 大家有比较好的资料索引,都可以放上来,对于类目及内容有任何想法都可以直接修改,多人维护效果更好。 所以本文内容就像是这样的一个索引: github上的各种awsome列表 (可以搜索https://github.com/sindresorhus/awesome) 以下是分了大致类目的资料索引: 一、系统 1. ...
一、背景 最近的一个任务是搜索索引数据生产重构,目前亿级以上的搜索引擎基本还是c++的(阿里除外),我们的也不例外,无论是分词还是写索引文件格式都是c++工具实现,所以这个系统之前也是hadoopStreaming调c++跑在调度系统上的。 任务目标也挺明确,就是压缩现在小时级的做库时间。这样对于业务修改上线、研发人员自测数据这样的生产效率,以及线上系统的可用性,都会有较大的提升。修改的做法简单粗暴,就是用flink或者spark来替换hadoop,减少shuffle以及多次mapReduce之间的持久化操作。 而可以使用的方式,包括JNI/JNA/JNR/SWIG, ...
一、背景 目前越来越多的互联网公司将特征工程集成到机器学习平台中了,而特征工程作为其中非常重要的一环,也在最近两年快速的平台化。我这边遇到的一个需求是将特征存到FeatureService中,以便线上进行预估时读取,按之前的设计,FS是本地缓存-》redis-》TiKV(也有可能是别的基于SSD的kv)。 特征会以的SequenceFile存在HDFS的指定目录, 其中value中的BytesWritable是将原始的特征以protobuf的格式写入,特征平台如果没有proto文件也无法反序列化出来做监控预警,所有的数据传递都是bytes,而线上模型是知道怎么反序列化。 单个的k-v字节数会比较少,例如k可能只是一些id,而value是一些基本特征,就算是embedding的也可能只在50个字节左右。在这篇文章中, Redis百亿级Key存储方案, 提到了如何去优化。我这边做的优化类似,另外对于为什么直接k-v存储的内存占用会的扩大到10倍左右, ...
一、背景 作为一名以职业程序员,有太多的方向可以做了,无论哪一种方向,都可以投入一辈子的时间去钻研。但人的时间是有限的,"吾生也有涯,而知也无涯,以有涯随无涯,殆已",所以成为专家的一个必要条件就是有选择有规划。 无意中发现百度脑图这个在线的思维导图,当时就想可以作为博客的一个补充,来进行知识管理,后来遇到一些容易忘记的就写在这上面,不知不觉感觉有不少了,虽然我依然面临技术深度不足的问题,不过写出来总会更有有激励一些,所以记录在这篇博客里面了。 任何一项难的事情,其实都可以系统的一步一步解决,目前很多事情按大多数人的努力和专注程度而言,都还没有到拼智商的程度。这个知识整理,也更像是一个长期纠正自己时间错用在了什么地方的工具。 ...
一、背景 我需要使用udf将hive查询结果中的每一行写出到redis集群里面。当加上limit时,一切正常。 maven-shade-plugin打完包后,进行清理:zip -d target/validater-1.0-SNAPSHOT.jar META-INF/*.RSA META-INF/*.DSA META-INF/*.SF maven-assembly-plugin打包不用清理 进入hive: hive>add jar {localPath} ...
一、命名风格我做得不好的 有时为了让名字短一些,没有描述清楚变量名 DAO没有严格来按方法命名:get,list,count,save/insert,remove/delete,update 二、关于常量做得不好的 常量类需要分开来维护 跨应用共享常量(第二方库中)、应用内共享常量(子模块中的constant目录)、子工程内共享常量(当前子工程的constant目录)、包内共享常量(在当前包下单独的constant目录下)、类内共享常量(直接在类内部private ...
一、背景 一般来说,测试完成后,上线前不用真实的流量测试一下效果,总觉得不太妥,所以需要有工具来copy一下线上流量过来。 项目地址:https://github.com/session-replay-tools/tcpcopy tcpcopy有两种结构,本文介绍的是intercept与测试机就是同一台机器的情况 二、操作 线上服务 aws-vicviz-p2(172.31.12.83):9091 需要转到 aws-vicviz-r2( ...
在回家路上听的广播经济之声的"那些年"节目,从三国聊到了隋唐英雄这段了,前两天说的宇文化及,从他的经历讲到了创业的问题,听着挺有兴趣所以记录一下。 一、有欲望: 宇文化及是被推选出来起哄杀了隋炀帝的,目标是让骁果军能'回家(回北方)'以及'吃饭(能生存)',自己并没有称王的心,所以拿到了隋最强大的部队也只能在隋唐英雄中失败。 欲望是指对所做产品成功的欲望,例如可以为了产品的成功不惜得罪同事,可以牺牲掉自己的私人时间去做工作上的事情,做这件事已经融入了你的生活。可以模糊掉了上班还是下班的时间概念,或者在下班时间凝聚精力彻底放松在上班的9个小时内能集中精力高效工作全力以赴(程序员高效和不高效战斗力能确实能差好几倍,高效时会累脑袋麻木) 如果想的是" ...
协作 不要为了同事的赞扬,而浪费本能写出更好的工具的时间去做苦力。成为一个好人并没有用,有用的是带领团队做出好业绩,会得到同事们更多的欣赏。 每一次自己轻松的时候,一定是有同事在帮你顶着压力。且行且珍惜。 保持善良的心,保持对生活和对工作的热爱。 维护好个人名片。 工具 不要浪费每一次优化代码的机会,有时候错过了后面就没有机会改了。没有整理过的代码会让后面接手的人很痛苦,会附带着把自己的声誉也会被损掉。 效率来源于程序员工具箱,需要一步步的丰富自己的工具箱,很多事情会事半功倍。常用工具的优化,例如编辑器,开发语言的优化和工具化,会让效率提升很快。之前的工具可以不断的在深度和广度上补充。 点好技能树, ...
使用springboot1.5.6可以非常简单的使用参数完成kafka的客户端集成,而不用再像之前一样写个复杂的config类填参数了。 参考的官网 mvn 配置 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-parent</artifactId> ...
几天前遇到了一些问题,想查看线上的debug日志但是不好重启服务,有人建议使用了一下log4j的日志等级调整。于是写了一个后台api可以简单的实现日志等级调整的接口让后续维护更简单一些,当然起新服务再tcpcopy流量到备份服务上也ok但是麻烦。本文只是记录一下这样可以。 public class LogTools { public static Level changeLevel(String value) { Level nowRootLevel = LogManager.getRootLogger().getLevel(); String nowLevel =nowRootLevel.toString(); if (nowLevel. ...
今天需要设置一下nginx的配置,作个记录。 要点: 一点优化 http1.1连接 冷备 加了个监控 user nginx; worker_processes 4; worker_cpu_affinity 0001 0010 0100 1000; #cpu开启4个进程,是一个优化项。可以减少内存访问损耗,提高速度 error_log ...
最近需要用到一些数据处理工具,折腾了一下安装,其实还是有点麻烦的。为了后续安装可以直接快速搞定,在这里记录一下整个流程。 clouder manager可以用来管理CDH/flume/spark等,主要体现在对机器状态的管理中,有免费版,不开源,但是用起来还是不错的。 而druid在日志分析领域相对于hive、kudu这样的工具来说,上手简单,除了不保存原始数据外,在查询速度、图形化界面这点上,可以快速实现一个简单版本的日志分析系统。 我选择了这两个工具来实现我的第一个简单版本的日志分析系统。 一、clouder manager的安装 1.1 ...
今天是从纸质书转向电子书的转折点,因为我发现由于小书架空间有限,并且可能几年后还会搬家,以后就不再买纸质书了。想到我还没有一个系统的信息来源获取办法,所以写一篇博客记录一下。 这里记录的是我所不知道的信息的渠道,也就是我的被动推送信息来源。在我打开前,并不知道这里面有什么,只有当我进入这个渠道后,我才知道这里面有哪些信息更新了。例如当我打开微信的看一看,我才知道今天我有哪些新的文章可以阅读。而不是记录哪个网站有某个具体的知识点。 这次整理也有一些反思,写在前面: 与人沟通获取到的信息少得可怜。真人沟通这个渠道在别人那里可能是最主要的信息,很多有价值的信息只有面对面的沟通才会得到,例如一个新的项目、新的生意、更高收益的app和股票、带娃经验、或者新的开源组件。还是性格问题以及太忙, ...
在前东家测试过java8以及java6的性能对比,发现增长不大,另外自己也快离职了所以一直没有升级主服务到java8,自己平时写代码也都基本没有使用新的语言特性,主要还是和别的同事保持一致就好。现在新同事能用新特性的会使用新的特性,产品要求必须是jdk8的环境,所以看一下书记一下看的过程。 lambda表达示 lambda表达式名称源于字母λ,是参数的意思。在java8中可以使用参数,箭头,表达式来组成一个lambda表达式 如果表达式比较复杂不能用一行写清楚,可以放在{}里面 参数一般形式是(类型 参数1,类型 参数2, ...),对于可以推断出来的类型,可以省略;如果只有一个参数,可以不用小括号; ...
docker背景 好处 线上线下环境一致,沙盒更安全,虚拟化提升硬件效率 轻量级的隔离环境:层共享 易于版本控制 保持简单,尽量只用无状态的服务以及静态的配置,有状态的例如数据库啥的能独立出去就独立出去。 学习流程 Docker basics->Define and deploy apps in Swarm Mode,可以看官网上的提示。 使用docker的行为 构建及保存镜像快照 上传镜像到仓库 下载镜像到宿主机 ...
新公司大家都在用maven,老东家用的是ant,我自己用的是gradle,为了了解工具细节还是需要看一下书的,所以找了这本书过了一个,在这里作个记录。 概念 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" ...
赵一一小朋友出生了,托她的福刚进新公司没有到两周就开始要休陪产假了。两位老人家都在身边帮忙照顾,我除了晚上要起来照顾她们娘俩比之前睡得差一些外,貌似也帮不上别的忙所以比较轻松。所以也正好有时间整理一下自己的学习记录。一直看之前的Ghost主题不爽,而自己又没有打算花时间去做个主题,所以搜索一下,有挺多开源的主题的,所以用了Kaldorei主题, 谢谢xiaoluoboding. 一些问题 如何找可用的主题? 上github上搜索 Ghost对npm以及node.js的版本要求还是有的,这里是推荐的支持版本, 我用的是4.2.0 node.js以及淘宝的cnpm(npm太慢了) 下载的node.js用的是直接编译好的这个v4. ...
注:伟大航道是《海贼王》里面主角离开出生地东海后开始精彩冒险的地方 每年春节都是一个反思自己工作或者生活的好机会,所以挺多重要的决定也都是在放完假后就立刻执行,例如这次换工作。用了两周时间看了解了十来个团队,不少朋友知道我离职后也在问选择去哪里,所以干脆记录一下自己是如何考虑的。程序员喜欢分享信息也是一个优点,当然肯定不包括薪资信息,这是游戏规则,否则没得玩了。 为什么现在考虑换工作 最近两天有几篇文章比较火,一篇是华为34岁员工被裁员,另一篇是技术创业7年无股权,引发了众多码农正面或者反面的思考,三观比较正的人其实都明白里面的无可奈何。牛逼的程序员可能不会太在意,但不太牛的我焦虑也是有的。其实一年前我就遇到了这样的问题,突然感觉时间由不得我肆意挥霍了。一个选择是自己创业,但背着房贷马上有娃怎么看都折腾不了, ...