数据、进程-云计算学习笔记---Hadoop简介,hadoop实现原理,NoSQL介绍...与传统关系型数据库对应关系,云计算面临的挑战-by小雨

本文是一篇关于数据、进程-的帖子

    

1、Hadoop简介

    

1、hadoop的出生

    l  Nutch和Lucene之父Doug Cutting在2006年实现Hadoop目项。

    l  Hadoop并非一个单词,它来源于Doug Cutting小儿子对所玩的小象具玩牙牙学语的称谓。就像是google也是由小孩子名命一样。

    l  后又经过5年的发开,hadoop在所有云盘算统系是稳居第一。

    l  Hadoop前目用使最普遍的本版为hadoop-0.20本版。前目最新本版为hadoop-1.03

    l  Hadoop运行在Linux统系中。在windows上安装可用使cgywin模拟linux环境。

    

2、hadoop的构成

    l  hadoop Common – 是hadoop的核心,包含文件统系、远程调用RPC的序列化函数。

    l  HDSF : 供提高吞吐量的靠可分布式文件统系是 GFS的开源现实。

    •   Hadoop的文件统系。必须通过hadoop  fs 令命来取读。持支分布式。

    l  MapReduce : 大型分布式数据处置模型,是Google MapReduce的开源现实。

    •   合并/盘算模型。

    l  其他相干构成:

    •    Hbase:构结化分部式数据库。BigTable的开源现实。

    •    Hive:供提摘要和询查功能的数据仓库。

    •    Cassandra:由Facebook发开分布式数据仓库。前目经已捐献给apache。且apache经已将Cassandra用应到了各种云盘算统系中。

    

谁在用hadoop:

    l  facebook

    l  宝淘

    l  360

    l  京东

    l  yahoo

    

l  google

    

 

    Master:主节点,相当于目项经理

    

Slave:从节点相当于PG

    Hadoop只能运行在linux统系上:

    在linux统系上装JVM虚拟机,然后,下面运行了三个进程

    

SecondaryNameNode,Jobtracter,NameNode这三个进程,这三个都是java进程

其中,NameNode是最要重的一个java进程,他决议了主节点,在从节点上没有这个进程

SecondaryNameNode相当于NameNode的秘书,帮助NameNode实现任务, Jobtracter任务跟踪进程,用来跟踪任务

并且把任务交给从节点.

    

可以看到常通用应会都有一个主节点和一个从节点,并且从节点中也有两个java进程,因为在装有从节点的服务器上,也装的是linux统系,在linux统系上装有jvm,然后跑了两个java进程,一个是: Jobtracter,另一个是:DataNode数据节点,这个进程用来处置和数据有关的任务.意注在hadoop统系中,只有一个主节点,其他的都属于从节点.

    各节点绍介:       

    l  NameNode:这是hadoop的护守进程(意注是进程JVM)。担任记载文件是如何分割成数据块,以及这些数据块别分存储到哪些数据节点上。对内存停止中集理管。NameNode在个整hadoop中只有一个。一旦NameNode服务器宕机,个整统系将没法运行。

    l  DataNode:集群中的个一每从服务器都运行一个DataNode后台程序。这个后台程序担任将HDFS数据块写到地本的文件统系。

    l  Secondary NomeNode:用来监控HDFS状态的助辅后台程序。如保存NameNode的快照。

    l  JobTracker:用户连接用应程序和hadoop。个一每hadoop集群中只一个 JobTracker,一般它运行在Master节点上。

    

l  TaskTracker:担任与DataNode停止结合。

    l  云盘算前目的窘境

    对于“云盘算”,业界经已为之论争了不止一年,IBM、软微、Google等工业大哥们也各自运功,以“云盘算”作为得获未来工业主动权的阵地。

    作为消费者,我始终得觉“云盘算”是未来的IT行业的发展趋势,但是:“云盘算”何时才能从云端到空中?

    关于“云盘算”技术标准和发展方向的论争仍然此起彼伏,我们却经已然悄步入“云盘算”的年月。

    

当我们用Google的在线Office编辑档文的时候,当我们随时在网上新更自己客博、甚至用手机上传照片的时候,当业企用在线租赁的软件在处置公司财务的时候……

    NoSQL综述

    l                大数据时期

    l   关系数据库的瓶颈

    l   NoSQL的优势

    l   CAP论理

    l   NoSQL数据模型及类分

    l   NoSQL用应现状

    

l   重点绍介几个NoSQL

    l  一、大数据时期

    

l    随着网民与参互联网产品和用应的度程越来越深,互联网将更加智能,互联网的数据量也将呈爆炸式加增

    一、大数据时期

    •       大交易数据:来自电商的数据,包含B2B、B2C、C2C、团购等

    •       大交互数据:来自交社网络的数据,SNS、微博等

    

•      两类数据的效有融合将是大势所趋,种这融合更能增强业企的贸易洞察力

    •       大数据的特征

    3V——Volume(海量)、Variety(多样)、Velocity(实时)

    •       海量——数据量大巨,对TB、PB数据级的处置, 经已成为基本配置。

    •       多样——处置多样性的数据类型,构结化数据和非构结化数据,能处置Web数据,能处置语音数据甚至是图像、视频数据。

    

•      实时——在户客每次浏览页面,每次下订单的程过中都存在,会都要需对用户停止实时的推荐,策决经已变得实时

    •       大数据时期下的统系需求

    •       High performance –高发并读写的需求

     高发并、实时动态获得和新更数据

    •       Huge Storage –海量数据的高率效存储和拜访的需求

     似类SNS站网,海量用户信息的高率效实时存储和询查

    

SNS,全称Social Networking Services,即社会性网络服务,专指旨在助帮人们立建社会性网络的互联网用应服务。也指社会现有已成熟遍及的信息载体,如短信SMS服务。SNS的另一种用常解释:全称Social Network Site,即“交社站网”或“交社网”。

 

    •       High Scalability && High Availability –高可展扩性和高可用性的需求

    

     要需有拥速快向横展扩能力、供提7*24小时不间断服务

    二、关系数据库的瓶颈

    •       关系数据库如何应答大数据

    •       High performance –高发并读写的需求

     问题:

    数据库读写压力大巨,

    硬盘IO没法蒙受

     决解方案:

    Master-Slave,主从分离

    

分库、分表,减缓写压力,增强读库的可展扩性

    •       关系数据库如何应答大数据

    •       Huge Storage –海量数据的高率效存储和拜访的需求

     问题:

    存储记载数量无限,

    SQL询查率效极低

     决解方案:

    分库、分表,减缓数据加增压力

    •       关系数据库如何应答大数据

    •       High Scalability && High Availability –高可展扩性和高可用性的需求

     问题:

    向横展扩艰苦,没法通过速快加增服务器节点现实,

    统系升级和护维成造服务不可用

     决解方案:

    Master-Slave,增强读库的可展扩性

    MMM——Master-Master Replication Manager for MySQL

    •       决解方案的问题

    1.分库分表点缺:

    (1)受业务规则影响,需求变化致导分库分表的护维杂复

    (2)统系数据拜访层码代要需改修

    2.Master-Slave点缺

    (1)Slave实时性的保证,对于实时性很高的场所可能要需做一些处置

    (2)高可用性问题,Master就是那个致命点,轻易生产单点故障

    3. MMM点缺

    本身展扩性差,一次只能一个Master可以入写,只能决解无限数据量下的可用性

    

 

 

    三、NoSQL的优势

    •       易展扩

           NoSQL数据库种类多繁,但是一个独特的特色都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常轻易展扩。也形无之间,在架构的层面上带来了可展扩的能力。甚至有多种NoSQL之间的整合。

    •       灵巧的数据模型

            NoSQL无需事先为要存储的数据立建字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常烦麻的情事。如果是非常大数据量的表,加增字段简直就是一个恶梦。

    •       高可用

        NoSQL在不太影响性能的情况,就能够便方的现实高可用的架构。比如Cassandra,HBase模型,通过复制模型也能现实高可用。

    •       大数据量,高性能

        NoSQL数据库都有拥非常高的读写性能,尤其在大数据量下,一样现表秀优。这得益于它的无关系性,数据库的构结简略。

    一般MySQL用使Query Cache,每次表的新更Cache就失效,是一种大粒度的Cache,在针对web2.0的交互繁频的用应,Cache性能不高。而NoSQL的Cache是记载级的,是一种细粒度的Cache,所以NoSQL在这个层面上来讲就要性能高很多了。

 

 

 

文章结束给大家分享下程序员的一些笑话语录: 人在天涯钻,哪儿能不挨砖?日啖板砖三百颗,不辞长做天涯人~

你可能感兴趣的:(hadoop)