作者: 大数据观察来源: 大数据观察时间:2017-02-26 13:04:390
咋办?很简单评估一下一个分布式系统的节点服务器平均的负载量修改缓冲区大小就OK了(当然是在硬件支持的情况下)
(5)关于大型服务器集群的容错处理
一般一个客户端数据过来后会被备份成多个数据块,默认是备份三个,一个备份会在同一个机架上的不同节点服务器上,另一个会备份在不同机架上的一台服务器,这样三台机器同时宕机的可能性是很小的,这样就利用了硬件的优势降低了数据的错误性概率。
(6)关于数据存取
在海量的数据库中,其实一个完整的数据库早就被分成了不同的region(要考虑海量数据是不可能存在一台服务器上了,就算是为了做备份,做镜像服务器等等),google其实是用MapReduce来计算PageRank的,试想这个例子,google全球这么多台服务器,存的又是不同的数据,咋能快速查找?其实就是采取了分级的数据分类方法,首先把数据分在不同的数据块上,然后在不同的数据块又有对本数据块的索引,呵呵,这样类推,一个由数据块节点组成的庞大服务器集群就这样健康的开始工作了。
(4)总结这里的大数据是针对实时密集型系统来说的,通过特定组织服务器集群把并行化运算的瓶颈解决,这就是我理解的实时大数据处理框架二、Andriod insight简单的说下就是移动平台上的动态行为检测技术,这里是三个哥们儿开发的,感觉他们很牛,说的他们的项目名字好像叫Prowler,这个名字没记太清,只关注过程去了。这个项目的产品功能就是告诉用户那些APP是malicious(因为大部分的用户都只是单纯的用户!呵呵,这里自我检讨,),那哥们儿公布的一个近期他们系统现在检测过了八百多万个安卓APP,在系统中测试合格的只有30%多,这个数字直接吓尿了我,这以后安卓机可咋用?这里有人提问题,问了sample的来源,本来这问题我也怀疑,这八百多万个例子是样本堆里捡的吗?据回答样本来源主要有三方面,一个是google play里抓取的,一个是厂商交换的(还说这个的量很大,我觉得这个双赢的做法很不错),还有一个是自己的产品Upload的,呵呵,这些跟PC端的软件设计原理基本一致,没有多少亮点,但是值得一提的是:同样的设计理念,能够移动到另一个平台上也是很有价值的,至少公司用了最捷径的方法登上了安卓平台(这里是我对以前的公司移动产品不是很了解的情况下说的哈),试想这项技术如果是在没有公司前导的情况下出现在安卓平台上,那会怎样?(广阔的市场,没有稳定的运营模式,没有知名度),现在这些似乎已经晚了,因为市场上早已狼烟四起,呵呵,但是至少永不过时的是那个统一的方法论,其实这里都是扯淡,呵呵。(1)框架简单概括下我认为的原理: 后端大量的数据->提取有价值规律->对比前端获取的行为记录->结果;当然真正的动态启发式肯定不是简单的这几个字,其中的每一个环节都是基于详细可行的解决方案来支撑的,我这里是站着说话不腰疼,呵呵。(2)关于移动终端和APP的一点细节就拿安卓来说的话,原生系统是提供了一套完整的permission的机制,这个相信大家都见过,但是估计很少会关注他,那就是在安装新的APP的时候,在预安装(自己起的过程名,你懂得是哪个时期)时,安卓虚拟机的安装器(类似于 windows 的PE loader)会对该APP请求的各种权限做一个汇总(其实这个细节是我猜的,对错有待考究),并会提示用户该APP安装后拥有的读写、运行权限等等(反正本屌丝的小米1s是有的,只用过小米其他的就没有确认过了),比方一个手机上的单 机游戏APP,具有发送短信的权限,这就要注意了,呵呵,你懂得不赘述;其实安卓救活了java,一段时间内,这还是个不错的市场嘛,那哥们儿设计的prowler项目其中一项就是用了安卓本身的permission机制外加一些Hook,说着简单,好 吧,这个就扯到这。三、Malheur 静态启发本组的coworker 讲的,本屌丝一直没发现原来在我做的这些小活后面隐藏着这样一座绚丽的宫殿,之所以这样说是因为听老师说过这样一句话:大家多学了数据结构,但是很多人会认为他没用;(这里其实在提醒我自己,以后敲代码一定要用下数据结构,呵呵,一个屌丝的小的可以被鄙视的理想),下面还是说下根据自己理解的静态启发技术,说错了大家可以笑我,但是同时要给我纠正,呵呵。(1)框架简单说就是:后台大数据->训练提取规律->对比PE文件信息(静态文件撞树的过程)->结果。据说是一共会提取PE文件的287个静态文件属性(这个数字谁出来纠正一下,有木有???反正我想破脑袋也想不出有这样多的文件属性,他们都在哪里藏着?,哎,笨脑袋想不懂)根据确定已知样本好坏的样本来提取的奥(其实就是基于一个相对可信的结论在支持的),举个例子,我们手上已经有1百万个样本,其中有A,B,C...特征的是坏的,并且A特征对判定结果的贡献度是40%,B是30%,C是小于10%,那我们就是把这些规则信息(枚举或判断)放到树中,当然放置的方法当然是对结果贡献度最高的放在靠树根的地方,原因你懂的, 然后根据某一条分支一直走到树叶,然后出结果或打个分供别人参考,下面说下细节:(2)设计细节(关于树/森林的训练)这里又是大数据不用说了,第一步眼前有海量已知好坏的样本,然后我们要做的是在这些样本中找到n个属性来说明他是坏的,说白了就是就是给一群已知是杀人、偷窃犯的人找共同点,首先发现他们都是孤儿、都出没在一些红灯区等等吧,然后根据贝叶斯算法(一个很多人说有用的算法,应用范围很广,就是由果致因的过程,比如根据四川这几年已经发生的地震,推想将来中国发生地震了,八成会是在四川;四川的同事请无视这句话,我是在扯淡,已经掌嘴了)算出这些因素中概率比较大的几个因素(貌似实际是几百个因素,但是实际各因素的权重不一样),用这些因素作为下次文件好坏判断的依据,具体措施就是把敏感因素编成树,方便数据匹配(猪撞树),并且对于不经常被猪撞上的树就要考虑是否砍掉,对于经常被猪撞上的树就可以考虑这棵树太有价值了,我们可以考虑不做其他活,完全听信这棵树的结果,这里两个极端,不一定现实。(3)设计细节(树规则的匹配)假如这头猪连续撞了三棵树(死定了),一般是以第一棵树的结果为准,树的匹配有些注意的地方,比如树的深度不能过长,当这样的事情发生时,一般处理办法是:把树裁剪若干成小树,平衡整个森林,还有就是当在分支里走到认为后面的判断结果都已经无关紧要的时候可以输出结果了(一些权重相对比较大的规则应该尽量放在不同的大分支,或者不同的树,这样既减小树的高度又将树的耦合度降低些,我猜是这样做的,甚至比这细化的多),那个 具体的ClasssFilter 4.5的算法具体不知道对应在哪块上(写到这里大脑已经迷糊了),反正树的节点是在动态的调整的,目的是降低FP,放大TP,(想到这,发现自己数学已弱爆),作为静态检测的最后一项技术,当然希望尽可能为后面的工作减轻负担或者为后面的判断多提供依据,目测因为以后样本的变种还是会不断添加,所以这边的森林也得茁壮成长才能不断的抵御风沙,不被吞噬(技术替代)。(4)关于静态启发我似乎只说了1%,其他的都忘了或者不知道,以后需要学的也是Big data很多,弄清楚技术细节差远了呐。四、大的总结几项技术共同点都运用了大数据,不是”数据大“,所以未来是数据时代,你懂得(所以前一阵3Q等都突然在几乎免费的为大家提供网盘,随意存数据,不要以为他是在做志愿者,其实未来谁掌握更多的数据,谁就能像存储了足够食物的黑熊,安全度过寒冬,胡扯++;呵呵)永洪科技
致力于打造全球领先的数据技术厂商