手把手教你使用VirtualBox搭建含有三个虚拟节点的Hadoop集群 一.准备,再出发 在项目启动之前,让我们看一下前面所做的工作.首先我们掌握了一些Linux的基本命令和重要的文件,其次我们学会了对vim,ssh,java,hadoop等工具的使用.在很多情况下,我们完成了单机/伪分布式集群就可以了,这样我们就可以开发程序了,但是我们和现实还有一步之遥,还可以做得更好.按照我们上面的操作,还不算是真正的分布式集群,将namenode,dataNode放到一起失去了真正集群的意义,一台电脑上…
在Hadoop集群的基础上搭建Spark 一.环境准备 在搭建Spark环境之前必须搭建Hadoop平台,尽管以前的一些博客上说在单机的环境下使用本地FS不用搭建Hadoop集群,可是在新版spark的安装之中,我们必须确定SPARK_DIST_CLASSPATH这个环境变量的值,而这个值恰恰就是Hadoop目录中的classpath,因为这个原因,我在搭建的过程中吃了很多的苦,希望大家引以为戒.现在让我们准备一下安装spark的实验环境: Ubuntu Kylin16.04.4 安装java环…
沉淀再出发:mongodb的使用 一.前言 这是一篇很早就想写却一直到了现在才写的文章.作为NoSQL(not only sql)中出色的一种数据库,MongoDB的作用是非常大的,这种文档型数据库,其实本质上的增删改查操作,封装的都和sql差不多了,最重要的确实其中代表的理念和设计的初衷,可以说NoSQL是对sql的一种有益的补充,同时也提升了我们对于一次写入多次读取的数据的查询能力,这种能力在大数据时代是非常有用的,可以说我们每天操作的应用程序之中,有百分之九十多的都是读的操作,而剩下的才是…
沉淀再出发:用python画各种图表 一.前言 最近需要用python来做一些统计和画图,因此做一些笔记. 二.python画各种图表 2.1.使用turtle来画图 import turtle as t #turtle库是python的内部库,直接import使用即可 import time def draw_diamond(turt): for i in range(1,3): turt.forward(100) #向前走100步 turt.right(45) #海龟头向右转45度 turt…
沉淀再出发:在python3中导入自定义的包 一.前言 在python中如果要使用自己的定义的包,还是有一些需要注意的事项的,这里简单记录一下. 二.在python3中导入自定义的包 2.1.什么是模块.包.库? 模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块.  包:在模块之上的概念,为了方便管理而将文件进行打包.包目录下第一个文件便是 __init__.py,然后是一些模块文件和子目录,假如子目录中也有 __init__.py,那么它就是这个包的子包了.  库:…
沉淀再出发:java中的equals()辨析 一.前言 关于java中的equals,我们可能非常奇怪,在Object中定义了这个函数,其他的很多类中都重载了它,导致了我们对于辨析其中的内涵有了混淆,再加上和“==”的比较,就显得更加的复杂了. 二.java中的equals() 2.1.Object.java中的equals()     让我们来看一下Object.java中的equals().     首先是Object的定义: /* * Copyright (c) 1994, 2012, O…
沉淀再出发:web服务器和应用服务器之间的区别和联系 一.前言 关于后端,我们一般有三种服务器(当然还有文件服务器等),Web服务器,应用程序服务器和数据库服务器,其中前面两个的概念已经非常模糊了,但是在很多场合下面还是非常有用的,因此我们来辨析一下. 二.web服务器和应用服务器之间的区别和联系 2.1.大范围的划分     关于Kerstrel是否web容器,有两种观点: . 由于Kerstrel不提供编写应用的框架,所以它不是容器:asp.net core才是容器,因为它提供了开发应用的框…
沉淀再出发:jetty的架构和本质 一.前言 我们在使用Tomcat的时候,总是会想到jetty,这两者的合理选用是和我们项目的类型和大小息息相关的,Tomcat属于比较重量级的容器,通过很多的容器层层包裹提供了非常强大的web功能,但是可以自我定制的余地就非常小了,有的时候我们希望自己设计更多的请求接收,处理和返回的环节,就可以用更加轻量级的jetty了. 二.jetty的架构和原理 2.1.Jetty 的基本架构 Jetty 是一个Servlet 引擎,它的架构比较简单,是一个可扩展性和非常…
沉淀再出发:dubbo的基本原理和应用实例 一.前言 阿里开发的dubbo作为服务治理的工具,在分布式开发中有着重要的意义,这里我们主要专注于dubbo的架构,基本原理以及在Windows下面开发出来的实例来解释和介绍,从而使得dubbo不再神秘. 二.dubbo的架构和原理 2.1.dubbo的架构 Dubbo框架设计一共划分了10个层,而最上面的Service层留给实际想要使用Dubbo开发分布式服务的开发者实现业务逻辑的接口层.左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提…
沉淀再出发:OpenStack初探 一.前言 OpenStack是IaaS的一种平台,通过各种虚拟化来提供服务.我们主要看一下OpenStack的基本概念和相应的使用方式. 二.OpenStack的框架和使用 2.1.OpenStack简介 OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目.OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作.OpenStack支持几…