自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Gary 的影响力

热爱创新,热爱互联网,ContactMe:garygaowork#gmail.com 博客地址:garyelephant.me, 微博:@gary的影响力...

原创 如何快速地把HDFS中的数据导入Clickhouse

如何快速地把HDFS中的数据导入Clickhouse ClickHouse是面向OLAP的分布式列式DBMS。我们部门目前已经把所有数据分析相关的日志数据存储至ClickHouse这个优秀的数据仓库之中,当前日数据量达到了300亿。 之前介绍的有关数据处理入库的经验都是基于实时数据流,数据存储在K...

2018-11-09 17:17:14 3743 0

原创 Waterdrop帮你快速玩转Spark数据处理

Waterdrop 是一个非常易用,高性能,能够应对海量数据的实时数据处理产品,构建于Apache Spark之上。

2018-02-28 00:14:38 1695 1

原创 每秒百万级流式日志处理架构的开发运维调优笔记

荣幸之至,我们团队在实时日志分析、搜索项目中曾经应对过百万级的挑战,在这方面有长足的进步。本文以笔记和问答的形式记录了我们曾经遇到过的实际问题及解决方案,而非小白式的大数据科普文章。相信只有真正做过每秒近百万以上的实时日志处理业务,遇到过棘手问题,才能深刻感受我们当时越不过高坎的窘境与解决问题后的...

2017-07-30 20:13:38 925 0

原创 为什么容器技术将主宰世界

为什么容器技术将主宰世界由于本文篇幅较长(我竟然写了7千多字),为了帮助你快速理解,我先列出核心思想: 先讲一个集装箱改变全球运输业的生动故事, 再拿容器技术与集装箱做联系与对比,说明笔者是如何通过集装箱参悟了容器技术的发展命脉 —— Docker实现了应用发布和运行的集装箱化。 说说容器技术,尤...

2015-11-03 14:54:04 6259 3

原创 Better ELK, 新浪实时日志分析服务进化

我从2014年初入职新浪后就开始接触实时日志分析相关的技术,主要是ELK(Elasticsearch, Logstash, Kibana),当时是学习+ELK优化,接一些日志,小打小闹。从2015年起,我们正式得把实时日志分析分析作为服务提供给公司的其他部门。今天要给大家分享的是在服务化的道路上,...

2015-07-15 21:35:49 6762 10

原创 开源分布式搜索平台ELK(Elasticsearch+Logstash+Kibana)入门学习资源索引

Github, FogCreek, Stackoverflow, Foursquare,等公司通过elasticsearch提供搜索或大规模日志分析可视化等服务。博主甄选了以下有用的中英文slides以及blogs或相关的学习网站分享出来, 内容包括分布式索引与搜索服务Elasticsearch,...

2014-04-15 12:35:01 12907 6

原创 喜欢sublime的N多理由

刚工作的时候,项目组都用UltraEdit,我也随大流。我使用UltraEdit(UE)工作的时间仅有2个月, 我对UE的印象一直是不亲切,功能齐全常用的却不多,一些功能与配置在菜单和界面中的位置与我期望 的不一样,没有舒适的配色方案等等。     后来用Notepad++ , 大概半年左右。N...

2013-01-28 11:59:20 16413 2

原创 python coding style guide 的快速落地实践

机器和人各有所长,如coding style检查这种可自动化的工作理应交给机器去完成,故发此文帮助你在几分钟内实现coding style的自动检查。

2016-01-02 21:37:56 3504 0

原创 测试

这是一个测试

2015-11-13 17:28:50 632 0

原创 Tutorial: 使用rsyslog向kafka, elasticsearch推送日志

本文介绍了一种简单易行的使用rsyslog向kafka,elasticsearch推送日志的方法;rsyslog的omkafka插件的安装、使用方法;rsyslog的omelasticsearch插件的安装、使用方法。

2015-03-20 17:24:53 4460 0

原创 Elasticsearch 2014年12月简报

Elasticsearch 1.4.2, 1.3.7发布了, Logstash 1.5.0 Beta 1发布了, Kibana 4 Beta3 发布了,Marvel 1.3.0 发布了, 还有一大堆好内容来袭。

2015-01-30 12:53:33 1819 0

原创 Elasticsearch 2014年11月简报

Elasticsearch 1.4.0发布了, Elasticsearch 安全工具Shield即将发布, kibana 4 beta 2发布了,The ELK Stack in a DevOps Environment

2014-12-16 15:07:31 1582 0

原创 Elasticsearch 2014年10月简报

Elasticsearch 2014年10月简报:发展动态,重要更新,社区新闻。

2014-11-12 11:33:08 2439 0

原创 读过几百份简历后,我对求职和写简历的新感悟

最近由于帮助朋友做了一些内推工作的缘故,期间阅过几百份应聘研发、数据分析、运营、设计等职位的简历,与HR有过沟通接触,再结合我上次求职的经历,作了一些总结,关于求职和简历。

2014-09-13 16:49:24 2174 0

原创 github开源项目介绍-使用pygrok轻松解析字符串(log, event..)

Pygroks是一个开源的Python字符串解析库,github地址:https://github.com/garyelephant/pygrok。正如其项目主页所述,它可以用来解析字符串形式的log, event等,将字符串中有用信息提取出来。这个字符串解析库支持正则表达式匹配,它提供了众多预定...

2014-07-26 17:32:52 1970 0

原创 AWS s3 python sdk code examples

Yet another easy-to-understand, easy-to-use aws s3 python sdk code examples.

2014-05-09 14:36:23 2827 0

原创 面试你的面试官

* 如果你想找到适合你的公司 * 如果你想找到适合你的职位. 记得面试你的面试官,没错!做出很重要的职业决定前,面试你的所求职的公司及你的面试官,做什么事不重要,跟谁一起做才重要。

2014-01-15 22:14:27 2931 3

翻译 使用Redis bitmaps进行快速、简单、实时统计

getspool.com的重要统计数据是实时计算的。Redis的bitmap让我们可以实时的进行类似的统计,并且极其节省空间。在模拟1亿2千8百万用户的模拟环境下,在一台MacBookPro上,典型的统计如“日用户数”(dailyunique users) 的时间消耗小于50ms, 占用16MB内...

2013-07-31 18:30:50 10288 1

原创 如何判断一个Http Message的结束——python源码解读

HTTP/1.1 默认的连接方式是长连接,不能通过简单的TCP连接关闭判断HttpMessage的结束。以下是几种判断HttpMessage结束的方式: 1.      HTTP协议约定status code 为1xx,204,304的应答消息不能包含消息体(Message Body), 直接忽略...

2013-07-02 05:31:14 3608 0

原创 SVN Hook + Python实现commit后自动发送邮件

svn 的hook机制方便了用户根据svn动作自定义一些操作,post-commithook是当用户执行commit后执行的用户自定义操作。如用户commit后,自动调用post-commit hook script群发邮件到项目组。实现过程是Commit后post-commithook 自动调用...

2013-05-04 16:46:13 6417 1

原创 浅出C++对象模型——理解构造函数、析构函数执行顺序

本文主要说明对象创建时构造函数的执行顺序,对象成员的初始化顺序;对象销毁时析构函数的执行顺序,对象成员的销毁顺序。        “对象的构造从类层次的最根处开始,在每一层中,首先调用基类的构造函数,然后调用成员对象的构造函数。析构则严格按照与构造相反的次序执行,该次序是唯一的,否则编译器将无...

2013-04-11 21:04:08 9997 0

原创 用栈实现队列-用队列实现栈

栈的特点:FILO(First In Last Out)                        仅能从栈顶插入,删除元素。                          最基本的接口包括push() —— 从栈顶压入元素 ,pop()——从栈顶弹出元素      队列的特点:F...

2013-03-07 13:23:58 1610 0

翻译 版本控制的极佳实践

本文是www.git-tower.com总结的使用Git的最佳实践,其中的大部分实践具有普适性,可用其他版本控制工具SVN,CVS等。               原文:http://www.git-tower.com/files/cheatsheet/Git_Cheat_Sheet_grey.p...

2013-01-14 13:09:31 2858 1

原创 迭代器失效(2)—一个例子

前几天刚写了一篇关于STL迭代器失效的博文(迭代器失效(1)-小心使用STL容器的erase() ),今天又犯了错误,原因是代码结构的复杂性掩盖了迭代器失效的事实。                  现把代码层层简化,如下: #include std::vector myVector; v...

2013-01-05 20:01:25 1607 4

原创 迭代器失效(1)-小心使用STL容器的erase()

对于以下代码:       my_container.erase(iter);                 其中my_container是STL的某种容器,iter是指向这个容器中某个元素的迭代器。如果不是在for,while循环中,         这种方式删除元素没有问题,如果是在for...

2012-12-16 17:26:48 17064 3

翻译 C++ 的API 设计指导

原文地址:API Design Principles http://qt-project.org/wiki/API-Design-Principles 摘要:        此文为Qt 官网上的API设计(for C++)指导准则,其中有不少原则具有普遍适用性,整个篇幅中有很多示例,是Qt在A...

2012-11-30 22:30:28 5977 2

原创 用代码告诉你为什么努力工作却不能涨薪水

昨天下班在QQ上跟同事说我要去参加公司里的培训。 同事:培训完涨工资吗? 我:(突发奇想, 用代码告诉他) finish_training(); if (false) { raise_my_pay(); } 同事:哈哈 我:回来后,我要努力工作,等着涨工资。 同...

2012-11-07 20:22:20 2912 2

原创 4个月的工作中对软件设计开发的思考

Author : Gary Gao      http://garyelephant.me garygaowork[at]gmail.com  关注自动化运维,软件部署自动化 1. 运维监控平台的设计: 集群的运维监控,需要确保的是将发现问题,记录问题,报告问题,定位问题紧密结合,尤其是对问...

2012-10-08 20:44:46 2249 0

原创 以实践的方式学习C++ &(引用)

1.第一个例子: 假设: int var1 = 224; //存放var1的值224的内存地址是0x12ABCDEF则以下Code: int var2 = var1; // 将var1的值复制给var2. int& var2 = var1;//var2 是var1 的别名(var2是...

2012-08-16 09:17:05 1042 0

原创 linux的各种开发环境的百花齐放害苦了众多开发者

这几天想给金山快盘写一个linux的客户端(主要是面向ubuntu),软件的开发复杂程度远非我想象的那么简单。其实并不是快盘提供的API复杂,而是我所要开发的这个客户端必须面临不同的开发环境,简单来说,仅对ubuntu而言,我就必须面对ubuntu的不同的桌面shell,Gnome还是Unity且...

2012-07-15 14:07:12 1053 2

原创 如何使用Unix/Linux grep命令——磨刀不误砍柴工系列

如何使用Unix/Linux grep命令     ——磨刀不误砍柴工系列      Garygaowork#gmail.com        grep在一个或多个文件中查找与模式字符串(pattern)匹配的行,并将搜索的结果打印出来,不会修改原文件内容。 使用grep 命令的语法为:  ...

2012-07-11 18:40:26 13426 0

原创 满足用户需求,创造用户价值-有感于36氪开放日

刚从36氪的线下活动——‘36氪开放日’回来,清华园科技大厦C座2层的国家会议中心里,挤满了人,36氪,腾讯开放平台,风险投资人全都来了,还有9个创业团队以及众多的像我一样的年轻人。       一谈到互联网创业,互联网创业团队,VC,移动应用,交互设计,大家都热情高涨,今天的开放日包括主题演讲...

2012-07-08 21:11:14 1206 0

原创 如何使用Unix/Linux find命令 ——磨刀不误砍柴工系列

如何使用Unix/Linux find命令                         ——磨刀不误砍柴工系列 作者:Gary Gao, garygaowork#gmail.com find 命令是 UNIX 程序员的技能中功能最强大和最有用的命令之一。它通过许多强大的支持方式,让文件查找显...

2012-05-16 11:22:31 8097 0

原创 算法复习-递归与分治策略

分治(divide and conquer)策略的基本思想:   将一个规模为n的问题分解为k个规模较小的子问题,这些子问题互相独立且与原问题相同。递归地解这些子问题,然后将各子问题的解合并得到原问题的解。 大致可以通过如下模式来描述:   divide_and_conquer( P ){ ...

2012-05-05 20:02:38 965 0

原创 图像边缘是什么-从数学的角度出发

图像处理的项目中,要经常用到图像边缘的概念,如图像边缘检测,边缘检测是进行进一步识别的重要步骤。 本文是前段时间我去stackoverflow问老外图像边缘与导数的关系时,一个热心人给我的回答。 最近比较忙,没时间把它翻译出来,先把原文放了出来,以供欣赏。 Paul R has given ...

2012-03-10 19:39:53 1849 0

原创 精心整理的C语言面试题目

由于最近去找工作,面过了很多题目,想起了当年学习C语言的很多往事。面试回来后精心整理了一些面试题目,并进行了分类,      一是对思路的整理,二是为后来者造福。 以下是各种题目: #语法问题: 1.用typedef 定义一个包含10个整型的类型。 注:typedef int NUMBER[1...

2012-03-10 19:19:46 27198 7

原创 闲来无事,写了一个比较完整的计算器

数学表达式有三种:前缀表达式,中缀表达式,后缀表达式。 中缀表达式就是我们平常见到的,如 4+ 2 * 5 - 7/11 ,这个式子人算起来方便,但是计算机算起来却计算复杂。对于计算机,最好是将此式转换为前缀表达式或后缀表达式后再计算。 在写计算器之前,首先要知道一点基本知识: 1.中缀表达式转换...

2012-02-12 17:03:14 2190 5

原创 图论中的欧拉回路

1.1先说说一笔画定理   1736年,欧拉发表了“一笔画定理”(并且证明了七桥问题的走法根本不存在):   一个图形要能一笔画完成必须符合两个条件,即             A.图形是封闭连通的             B.图形中的奇点(与奇数条边相连的点)个数为0或2。(即图中度为奇数的顶点...

2012-02-10 08:57:04 3883 0

转载 如何在21天“真正”学会C++

来自:http://coolshell.cn/articles/2250.html 这是时下流行的穿越古装戏吗??没想到程序员也能穿越。

2012-01-30 14:14:13 725 0

原创 被无穷大和无穷小难道

C语言中,如何表示无穷大,无穷小。 无穷大(小)是数学概念,编程中不会出现无穷的东东,所以完全可以用能表示的最大的数,或最大的数来代替。 在头文件limits.h中有各种类型的数的最大值,最小值的符号常量定义,便于直接使用,例如变量的初始化。 例如:   INT_MAX 是int的十进制...

2012-01-28 16:39:13 1185 0

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