大数据方法论之PageRank的Map-Reduce计算
大家可能都熟悉Google的PageRank算法,那么如何通过Map-Reduce的方式实现这个算法呢?PageRank算法遵循的是平时我们浏览网页的时候的随机游走模型:用户从任意一个网址开始浏览网页如果某个网页有N个链接,则用户很大的可能是随机选择一个链接继续浏览当某个网页没有链接,则用户会任意选
大数据方法论之Nutch基于Map-Reduce的爬取方法
随着人工智能的兴起,大数据又火了起来,大数据的方法论的本质是众人拾柴火焰高,从算法角度来讲,就是分治法。例如普通的合并排序。就是分治法的体现分三个部分,第一分,Devide,将总的任务分成多个分任务。第二,处理,Concur,每个人将分给自己的任务做完,输出结果第三,合,Merge,每个人将任务结果
如何基于DNS和Load Balancer做服务的负载均衡
我们来分析从外网访问内网的服务的具体过程:首先我们看DNS和LoadBalancer是怎么工作的。客户端要访问我们的系统,发送了一个https请求,https://hello.mycompany.com客户端的localresolver查看本地的缓存,是否能找到域名hello.mycompany.c
JVM与GC
最近处理客户高并发应用的时候,经常会遇到GC的问题,于是是时候把原理学习过的JVM和GC的内容拿出来温习一下了。一些准备-XX:+<option>启用该项如:-XX:+UseSerialGC使用串行回收-XX:-<option>不启用该项如:-XX:-UseAdaptiveS
当客户在说要安全的时候,客户在想什么?
每当采购云服务的时候,客户都说要安全,很多人困惑,啥才是安全,咋就不安全了?当出现下面的情况,客户觉得会觉得不安全了。我的数据访问不了了我的数据被非法访问了我的数据泄露了我的数据被窃取了我的数据丢了我的数据被篡改了虚拟机会不会挂,挂了咋办虚拟机会不会被攻击物理机会不会挂,挂了咋办系统中毒了机房会不会
基于CPU和Intel MKL的深度学习实验
参加了今年的AWSSummit,里面有一个很有意思的环节是Intel组织了一个基于AWS的深度学习上手课程。为什么在AWS上呢?这个课程以及代码的地址在这里https://github.com/NervanaSystems/mxnet_workshop这里面的文档里面说了,完成这个课程需要Amazo
深入浅出双数组Trie树
对于字符串来说,还有一种查询效率较高的数据结构,叫做Trie树。比如我们有一系列的字符串:{bachelor#,bcs#,badge#,baby#,back#,badger#,badness#},我们之所以每个字符串都加上#,是希望不要一个字符串成为另外一个字符串的前缀。把它们放在Trie树中,如图
Docker, Kubernetes, DCOS 不谈信仰谈技术
看来容器编排系统的争夺已经白热化了,乱花渐欲迷人眼,最近老是有各种文章比较这三个框架,这篇文章不谈信仰,不对比优劣,只谈技术,甚至会谈如果从一个平台转向另一个平台,都要了解些啥。一、架构啥都不说,先上三个架构图DockerSwarmModeDCOS这张图主要显示了一些组件,还是上一张Mesos的图最
从Pacemaker看高可用性的层次和思路
Pacemaker是一个通过管理多台机器的资源来实现系统的高可用性框架。虽然你不一定用Pacemaker,但是其中的一些层次和思路还是会经常能够见到的,例如虚拟机的高可用性,容器的高可用性,HDFS的NameNode的高可用性,都能看到这些思路的影子。一、Pacemaker的架构最底层是通信层cor
数据中心长啥样?
如图是数据中心的一个基本架构最上层是InternetEdge,也叫EdgeRouter,也叫BorderRouter,它提供数据中心与Internet的连接。连接多个网络供应商来提供冗余可靠的连接对外通过BGP提供路由服务,使得外部可以访问内部的IP对内通过iBGP提供路由服务,使得内部可以访问外部
定制化Mesos任务运行的几种方法
Mesos架构如下这个图比较的著名了,也有很多文章介绍这个图,详情可以看文章http://mesos.apache.org/documentation/latest/architecture/,这里不做过多的介绍。从图中可以看到,Mesos有Framework(Framework里面有Schedul
技术变化太快,程序员咋办? 从Adobe Flash想到那些年我幸运躲过的MFC和塞班
随着年龄越来越大,越来越开始觉得技术变化快给程序员的压力也越来越大。这篇文章是我的职业生涯的历程,和一些思考。2005年的时候,MFC当时还是非常火的,当时互联网应用还没有那么兴起,手机还是老版诺基亚的手机,所以桌面应用的开发还是有一席之地的。当时连大学里面的老师都不怎么教Linux下的程序设计,C
支撑大规模公有云的Kubernetes改进与优化 (3)
接着上两篇支撑大规模公有云的Kubernetes改进与优化(1)支撑大规模公有云的Kubernetes改进与优化(2)这一篇我们来讲网易为支撑大规模公有云对于Kubernetes的定制化。一、总体架构网易的Kubernetes集群是基于网易云IaaS平台OpenStack上面进行部署的,在外面封装了
支撑大规模公有云的Kubernetes改进与优化 (2)
接着上一篇支撑大规模公有云的Kubernetes改进与优化(1)接下来我们按照kubernetes创建容器的详细过程,以及可能存在的问题。一、APIServer的认证,鉴权,Quota当客户需要创建一个pod的时候,需要先请求APIServer。Kubernetes的APIServer要负责进行认证
支撑大规模公有云的Kubernetes改进与优化 (1)
今天飞机晚点了,本来一天一篇的,应该昨天写完的只好凌晨完成,只能先写一部分了。Kubernetes是设计用来实施私有容器云的,然而容器作为公有云,同样需要一个管理平台,在Swarm,Mesos,Kubernetes中,基于Kubernetes已经逐渐成为容器编排的最热最主流的平台,网易基于Kuber
神经网络的胜利是市场经济的胜利!
什么时候机器能够像人一样懂人呢,我告诉机器我想要什么,机器就会像人一样的体会,并且做出人一样的反馈,多好啊。这个思想已经不是一天两天了,那怎么做的这件事情呢?人们首先想到的是,人类的思维方式有固有的规律在里面,如果我们能够将这种规律表达出来,告诉机器,机器不就能理解人了吗?人们首先想到的是告诉计算机
从Openvswitch代码看网络包的旅程
我们知道,Openvwitch可以创建虚拟交换机,而网络包可以通过虚拟交换机进行转发,并通过流表进行处理,具体的过程如何呢?一、内核模块Openvswitch.ko的加载OVS是内核态和用户态配合工作的,所以首先要加载内核态模块Openvswitch.ko。在datapath/datapath.c中
从个人电脑登陆云主机总共分几步?至少20步!
1.AggregationSwitch和OpenStack的NetworkNode是在同一个broadcastdomain里面的,因而它知道floatingip15.126.205.101可从它到达2.AggregationSwitch和BorderRouter是通过L2Core是二层互联的,将路由
大数据就是众人拾柴火焰高
这个图是一个经典的搜索引擎的架构图。说到大数据,首先我们来看一下数据的分类,我们生活中的数据总体分为两种:结构化数据和非结构化数据。结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据:指不定长或无固定格式的数据,如邮件,word文档等当然有的地方还会提到第三种,半结构化数据
金融创新业务基于容器的微服务化(特补充两张核心图片)
上次文章中,一张微服务化知识图谱比较模糊,另外是咨询培训流程比较模糊,这里特附上清晰图片,并最后附上知识图谱的详情。云计算发展至今,从普通的虚拟化到OpenStack再到容器云,解决方案的设计日趋复杂,尤其是容器云和微服务化的解决方案,已经不像传统的解决方案,给客户讲解一下就可以进行招标了,需要和对