自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cm_chenmin的专栏

记录每天的点点滴滴

  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spark Streaming与Kafka集成编程

因为Kafka在版本0.8与0.10之间引入的新的消费者API,因此有二套相应的相互独立的Spark Streaming与Kafka集成包可供选择使用,二者的特征比较如下:Kafka broker version 0.8.2.1 or higher:针对这个版本,有二种实现:有接收器线程(Receivers)基于Kafka高等级消费者API和无接收器线程(Receive

2016-10-31 23:22:30 1462

转载 常用Linux服务器性能检测shell命令

概述通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解。uptimedmesg | tailvmstat 1mpstat -P ALL 1pidstat 1iostat -xz 1free -msar -n DEV 1sar -n TCP,ETCP 1top其中一些命令需要安装sysstat包,有一些由procps包提供

2016-10-28 16:15:23 2861

原创 scala-高阶函数

作为值的函数在变量中存放函数import scala.math._val num = 3.14val fun = ceil _ //ceil函数后的_意味着确实指的是这个函数,而不是忘记了给它传参数fun(num)//4.0 调用函数Array(3.14,1.42,2.0).map(fun)//Array(4.0,2.0,3.0) 做为参数传递给另一个函数匿名函

2016-10-27 23:12:07 407

原创 布隆过滤器及Java实现

布隆过滤器实际上是由一个很长的二进制向量和一系列随机映射函数组成,布隆过滤器用于检索一个元素是否在一个集合中优点布隆过滤器具有空间和时间优势。布隆过滤器存储空间和插入/查询时间都是常数。另外, Hash 函数相互之间没有关系,方便由硬件并行实现。布隆过滤器不需要存储元素本身,在某些对保密要求非常严格的场合有优势缺点存在一定误算率,即Bloom Filter报告某一元

2016-10-27 18:05:50 1128

转载 人人都该懂点儿TCP

原文地址:http://geek.csdn.net/news/detail/44474即使你的工作也许不需要对TCP了如指掌,也不需要去了解具体的TCP/IP实例。你也应该懂一些基本的TCP知识,本文会告诉你为什么。我以前在Recurse Center工作的时候,曾经用Python写过一个TCP栈(还写了一篇博文用Python实现TCP栈可以学到什么)。这是很有意思的一

2016-10-27 17:52:55 347

转载 小故事:架构师需要做什么?

原文地址:http://geek.csdn.net/news/detail/55379我想要成为一名软件架构师。这是年轻软件开发者很好的选择。我想要带领团队,并在数据库与框架、webserver等方面作出重要的决策。噢,那你根本就不想成为软件架构师。我当然想了,我想要成为重要决策的制定者。那很好,不过你列出的内容中并不包含重要的决策,这些都是

2016-10-27 17:49:04 287

原创 storm与spark streaming反压机制

因特殊业务场景,如大促、秒杀活动与突发热点事情等业务流量在短时间内剧增,形成巨大的流量毛刺,数据流入的速度远高于数据处理的速度,对流处理系统构成巨大的负载压力,如果不能正确处理,可能导致集群资源耗尽最终集群崩溃,因此有效的反压机制(backpressure)对保障流处理系统的稳定至关重要。Storm和Spark Streaming都提供了反压机制,实现各不相同对于开启了acker机制的

2016-10-26 17:37:55 5170

转载 搜索引擎-倒排索引基础知识

1.单词——文档矩阵       单词-文档矩阵是表达两者之间所具有的一种包含关系的概念模型,图3-1展示了其含义。图3-1的每列代表一个文档,每行代表一个单词,打对勾的位置代表包含关系。                                                                                            图3-1

2016-10-26 17:25:42 280

原创 scala-特质(trait)

scala特质可以同时拥有抽象方法和具体方法,类可以实现多个特质当接口使用的特质trait Logger{ def log(msg:String)//这是个抽象方法,特质中未被实现的方法默认为抽象方法,无需使用abstract}//子类实现特质class ConsoleLogger extends Logger{//用extends而不是implements def log(

2016-10-26 10:05:05 313

原创 scala-类与对象

scala定义类:class Counter{ private var value = 0 //你必须初始化字段 def increment(){ value += 1}//方法默认是公有的}类有一个主构器和任意多的辅助构造器,类如果没有显示定义一个主构造器则自动拥有一个无参的主构造器;辅助构造器的名称为this,每一个辅助构造器都必须以一个先前定义的其它辅助构造器或主构造器调用

2016-10-25 22:26:50 451

原创 Storm的ACK机制与编码实例

Storm为了保证每条数据成功被处理,实现至少一次语义,通过Storm的ACK机制可以对spout产生的每一个tuple进行跟踪;tuple处理成功是指这个Tuple以及这个Tuple产生的所有子Tuple都被成功处理, 由每一个处理bolt通过OutputCollector的方法ack(tuple)来告知storm当前bolt处理成功,最终调用spout的ack方法;处理失败是指这个Tu

2016-10-25 17:46:10 6965 1

原创 常用工具整理

收集整理一些常用工具,目前只是雏形,后面慢慢扩展与丰富内容负载均衡:软负载均衡:LVS硬负载均衡:F5网络应用程序开源框架与工具:java:nettyc++:libevent通讯协议:TCP、UDP、HTTP和WEBSOCKET数据协议:MQTT、JSON、SOAP和自定义二进制协议消息中间件:ZeroMQ、Kafka、Rabbi

2016-10-24 16:52:11 428

原创 scala-文件IO

scala读取文件:import scala.io.Sourceval source = Source.fromFile("myfile.txt","UTF-8")//第一个参数可以是字符串或者是java.io.File;第二个参数可选val lineIterator = source.getLinesfor (l <- lineIterator) print l 可以用toArr

2016-10-21 11:11:09 411

原创 scala-正则表达式

构造一个Regex对象,用String类的r方法import scala.util.matching.Regexval numPattern = "[0-9]+".r如果正则表达式包含反斜杠或者引号的话,那么最好使用“原始”的字符串语法"""...""",如:val wsnumwsPattern = """\s+[0-9]+\s+""".rfindAllIn方法返回遍历所有的

2016-10-20 22:45:54 95

原创 hbase常用shell命令

转自:http://www.cnblogs.com/nexiyi/p/hbase_shell.html启动hbase shell bin/hbase shell查看服务器状态: hbase(main)> status查看hbase版本: hbase(main)> version1)查看有哪些表hbase(m

2016-10-19 11:21:44 1051

原创 HBase-建表语句

本文转自:http://www.th7.cn/db/nosql/201603/181519.shtml建表语句:create 'NewsClickFeedback',{NAME=>'Toutiao',VERSIONS=>1,BLOCKCACHE=>true,BLOOMFILTER=>'ROW',COMPRESSION=>'SNAPPY',TTL => ' 259200 '},{SP

2016-10-18 16:11:48 10458

原创 scala-映射map

构建一个不可变映射val scores = Map("Alice"->10,"Bob"->3,"Cindy"->8)构建一个可变映射val scores = scala.collection.mutable.Map("Alice"->10,"Bob"->3,"Cindy"->8)构建一个空映射val scores = new scala.collection.mutable.H

2016-10-15 08:25:47 2583

原创 有些命令

一些杂琐的东西,记录一下,以后可能会用得上,另外以后遇到可以记录的可以追加在这里查找进程内最耗费CPU的线程:ps -Lfp pid #列出进程内所有线程 -L threads -f 所有full -p by process idps -mp pid -o THREAD,tid,timetop -Hp pid #找出进程内最耗CPU线程IDprintf "%x\n" ti

2016-10-14 22:28:59 574

原创 python多线程代码实例

今天因业务需求,写了一个python多线程处理数据的程序,记录下来,方便以后参考:#!/usr/bin/python'''coding=utf-8created on 20150525bossid.fy.mapping.itil.dic2611:171:video_p2p_pieces2125:82:live_pcclients1365:142:appnews_136514

2016-10-14 16:46:24 1001

转载 Java 7之基础 - 强引用、弱引用、软引用、虚引用

本文转自:http://blog.csdn.net/mazhimazh/article/details/197524751、强引用(StrongReference)         强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下:[java] view plain copy print?

2016-10-14 15:36:34 166

原创 scala-数组

定长数组Array:定义数组例子:val nums = new Array[Int](10)val a = new Array[String](10)val s = Array("hello","world")s(0) = "Goodbye" //使用()而不是[]来访问元素变长数据:数组缓冲import scala.collection.mutable.Arr

2016-10-13 22:58:08 305

翻译 Storm vs Spark

翻译:http://www.slideshare.net/ptgoetz/apache-storm-vs-spark-streamingStorm是一个流处理框架同时能做批处理(Trident)Spark是一个批处理框架同时能做微批处理(Spark Streaming)Apache Storm二套流处理API:Storm内核(Spouts和Bolts).每次一条

2016-10-12 22:39:20 430

原创 hive建库建表与数据导入导出

hive建表:hive分内部表与外部表,创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径, 不对数据的位置做任何改变。在删除表的时候,内部表的元数据和数据会被一起删除, 而外部表只删除元数据,不删除数据。这样外部表相对来说更加安全些,数据组织也更加灵活,方便共享源数据。 创建外部表:create EXTERNAL table IF NOT EXIS

2016-10-12 22:27:23 6239

原创 hive存储格式

TEXTFILE默认格式,行存储,导入数据时直接把数据文件拷贝到hdfs的hive表目录(hive location),数据文件可先经过gzip等压缩,再导hive表(系统自动检查,执行查询时自动解压),但使用这种方式,hive不会对数据进行切分,从而无法对数据进行并行操作.优点:数据加载快(load数据快)缺点:数据读取时磁盘开销大,即查询效率低SEQUENCEFILE

2016-10-12 22:24:11 427

原创 scala-for循环

for(i 让变量i遍历可以变量每个生成器都可以带一个守卫,以if开头的Boolean表达式:for(i 可以使用任意多的定义,引入可以在循环中使用的变量:for(i 如果for循环的循环体以yield开始,则该循环会构造出一个集合,每次迭代生成集合中的一个值:for(i 使用Breaks对象的break方法退出循环:import scala.util.cont

2016-10-11 22:52:37 431

原创 scala-基础

1.不带参数且不改变当前对象的Scala方法通常不使用圆括号,比如:"Hello".distinct2.Scala没有提供++和--操作符,需要使用+=1 或者 -=13.在Scala中,_字符是通配符,类似于Java中的*,比如:import scala.math._,使用scala开头的包时,可以省略scala前缀,例如:import math._等同于import scala.m

2016-10-11 21:49:12 309

原创 flume从kafka导数据到hdfs

配置文件如下:flumetohdfs_agent.sources = source_from_kafkaflumetohdfs_agent.channels = mem_channelflumetohdfs_agent.sinks = hdfs_sink#auto.commit.enable = true## kerberos config ###flumetohdfs

2016-10-10 17:07:25 4883 1

原创 spark性能调优

1.数据序例化用Kryo序例化代替默认的java序例化,java序例化的优点是灵活,能序例化任何实现了接口java.io.Serializable的类;缺点是执行速度慢,序例化的结果占用字节数大;Kryo序例化速度快,序例化结果占用字节小(一般只有前者的十分之一),缺点是不支持所有可序例化类型并且要求用户注册程序中用到的需要序例化的类型开启Kryo序例化:val conf = new

2016-10-08 16:53:30 418

原创 Spark机器学习的一些概念整理

(文章主要来自于学习整理,好记心不如烂笔头,先记上后面再完善,欢迎大家指正交流)监督式学习:使用有标签的训练数据(也就是已知结果的数据点)进行学习,对训练样本集外的数据进行标记(分类)预测,训练样本的标记(分类)是已知的,因此岐义性低。 无监督式学习:使用没有标签的训练数据(也就是已知结果的数据点)进行学习对没有概念标记(分类)的训练样本进行学习,以发现训练样本集中的结构性知识

2016-10-08 11:37:00 492

原创 Spark词频-逆文档频率

(文章主要来自于学习整理,好记心不如烂笔头,欢迎大家指正交流)词频-逆文档频率(TF-IDF),是广泛应用于文本挖掘的用来反映一个词对于语料库中文档的重要性的生成特征向量的方法,用t来表示一个词,d表示一个文档,D表示文档库,词频TF(t,d)就是词t在文档d中出现的次数,文档频率DF(t,D)表示有多少个文档包含词t,如果我们只用词频来衡量重要性,将容易导致过度强调某些出现非常频繁但

2016-10-08 11:01:36 3011

VIM学习文档

vim操作文档,来自网页,非常分,感谢作者分享 vim操作文档,来自网页,非常分,感谢作者分享 vim操作文档,来自网页,非常分,感谢作者分享

2011-09-09

空空如也

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

TA关注的人

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