什么是大数据

本文以程序员的视角探讨大数据,从Hadoop的兴起说起,阐述了解耦、分治和低成本如何成就Hadoop在大数据领域的地位。随着数据量的爆发式增长,传统数据库已无法应对,Hadoop的出现提供了新的解决方案。Hadoop通过分布式存储和计算,实现了数据处理的高效和低成本,为后来的大数据技术如Hive、Spark等奠定了基础。
摘要由CSDN通过智能技术生成

|序言

作为当代互联网的热词之一,每当我们提到大数据,我们到底是在说什么呢?

对于公司老板而言:大数据意味着在拿项目时,PPT上高大上的代名词、稳定投资人的财富标签;

对于程序员而言:大数据意味着用一种全新的、分布式的、便捷高效的数据处理手段;

对于吃瓜群众而言:大数据是洪水猛兽,是无处不在的,窃取他们隐私的黑科技。

本文将以一个程序员视角,来谈谈我对大数据的理解。


|背景

自从2010年,苹果的iPhone4问世,标志着移动互联网的时代正式拉开序幕,进入移动互联网时代后,各种软件、APP每时每刻都在源源不断地产生数据。

以前,RDBMS(关系型数据库)能解决所有问题,普通中小公司用MySQL、PostgreSQL,而国企,不差钱的大公司则用Oracle、Teradata、DB2、SQLserver。但是很快,这些爆发式激增的数据很快就超过了传统方式的处理能力上限,急需一种新的、容易扩展、成本低廉的、能迎合巨量数据并行处理的新技术。

这里的处理,是对数据计算和存储的统称。

彼时,随着Google发表的3篇论文被公开,大数据技术第一次以开源的方式出现在大众视野,首次映入大家眼帘的即大名鼎鼎的Hadoop。

Google在2003年到2006年间发表的3篇论文分别为:《MapReduce: Simplified Data Processing on Large Clusters》、《Bigtable: A Distributed Storage System for Structured Data》和《The Google File System》。介绍了Google如何对大规模数据进行存储和分析,这三篇论文开启了工业界的大数据革命,被称为Google的三驾马车,也是后来Hadoop的开山鼻祖。

|介绍

Hadoop不是某个单一技术的软件,它是一个大数据处理系统和生态的总称,Hadoop最初出现在大众视野中时,指的是:HDFS文件系统+MapReduce计算引擎+HBASE数据库。

Hadoop是一个能够满足数据读取、数据计算、结果存储的完整生态组合。有了它,就可以实现一个最小规模的大数据解决方案。

那么Hadoop为什么可以成为大数据技术的事实标准呢?

核心原因为:解耦+分治+低成本

1,Hadoop如何做到解耦?

我们知道,传统的RDBMS之所以可以做任何数据处理的事情,原因在于它集数据计算、数据存储于一体。使用者只需要将原始数据保存到一张数据源表中,后续再根据自己的业务需求写SQL将结果再次保存到另一张表中就可以了,这是传统数据库最常见的数据处理模型。

所有这些数据处理动作全部在数据库内部完成,虽然架构简单,但是一旦其中的任何一个环节出现问题,就可能导致整个系统的崩溃...

传统数据库的数据处理流程

而大数据技术则不是,同样一个数据处理动作,它将其拆解为数据源读取、数据计算和最后结果存储3个独立的部分,且这3个独立的部分分别由3个独立运行的软件来完成。比如Hadoop系统中,从HDFS读取原始数据,再用MapReduce计算引擎进行计算,最后用HBASE来存储计算后的结果。

Hadoop系统数据处理流程

2,Hadoop如何做到分治?

【分治】是大数据技术的核心思想,是大数据技术的灵魂,当下所有的大数据技术,无论是存储系统还是计算系统,无一例外都遵从了【分治】这个原则。

简单点理解就是:一个人搞不定的事情,那就多找几个人一起来同时帮你搞定。

将一份大数据集拆分成多个小数据集并行处理

大数据嘛,就是一份量很大的数据,一台机器因为能力有限(受限于单台机器的硬件),无法一次性处理所有的数据量。

怎么办?那就多台机器一起并行帮你处理呗。

拿Hadoop来说,数据从HDFS读取是分治的——同时存储在多台机器上;

通过MapReduce计算引擎来计算是分治的——多台机器一起计算,每台机器计算一小部分;

最后将结果保存到HBASE也是分治的——结果会分布存储到多台机器中;

3,Hadoop如何做到低成本?

软件的低成本:

首先Hadoop是开源的,不要钱的,所有的源代码向任何使用者公开,你随时可以查看,学习,甚至如果你愿意,还可以向其贡献自己的源代码,以丰富这个软件的功能。要知道,这个跟那些传统商业软件Oracle、Teradata、DB2动辄每年上百万的软件费用比,简直不要太香。

硬件的低成本:

传统的数据库厂商一般在出售自己数据库产品时,都会绑定自己的硬件,比如以前的Oracle、Teradata、DB2数据库很多只能运行在特定的服务器上,如小型机、大型机等。这些服务器的价格也是动辄百万起步,让很多互联网公司望而却步。而Hadoop恰恰摒弃了这些限制,只要服务器满足x86架构(最新版的Hadoop也适配ARM架构了),就可以部署安装,且适配几乎所有操作系统,对于成本控制严格的创业公司来说,这一点极其友好。


|感悟

大数据技术无论在技术实现上还是在成本要求上都具有极大优势,因此很快就席卷了整个互联网技术领地。现在,你很难看到一个完全没有使用大数据技术的IT公司或者团队。

继Hadoop之后,更多优秀的大数据技术的软件陆续推出,为大家熟知的有:hive、spark、Flink、storm、zookeeper、kafka、solr、Elasticsearch、Impala... 等等。

而这些软件,随着使用者的人数和背后社区支持力度的不同,有些一时风光无两,而有的已经逐渐退出了历史舞台,也许这就是开源软件的宿命。

而作为程序员的我们,也只能紧跟时代浪潮,时刻保持学习的心态,才能不被这股狂风巨浪拍死在沙滩上...

(PS:想了解更多,欢迎关注我的公众号[安瑞哥是码农])

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。 Quartz的优势: 1、Quartz是一个任务调度框架(库),它几乎可以集成到任何应用系统中。 2、Quartz是非常灵活的,它让您能够以最“自然”的方式来编写您的项目的代码,实现您所期望的行为 3、Quartz是非常轻量级的,只需要非常少的配置 —— 它实际上可以被跳出框架来使用,如果你的需求是一些相对基本的简单的需求的话。 4、Quartz具有容错机制,并且可以在重启服务的时候持久化(”记忆”)你的定时任务,你的任务也不会丢失。 5、可以通过Quartz,封装成自己的分布式任务调度,实现强大的功能,成为自己的产品。6、有很多的互联网公司也都在使用Quartz。比如美团 Spring是一个很优秀的框架,它无缝的集成了Quartz,简单方便的让企业级应用更好的使用Quartz进行任务的调度。   课程说明:在我们的日常开发中,各种大型系统的开发少不了任务调度,简单的单机任务调度已经满足不了我们的系统需求,复杂的任务会让程序猿头疼, 所以急需一套专门的框架帮助我们去管理定时任务,并且可以在多台机器去执行我们的任务,还要可以管理我们的分布式定时任务。本课程从Quartz框架讲起,由浅到深,从使用到结构分析,再到源码分析,深入解析Quartz、Spring+Quartz,并且会讲解相关原理, 让大家充分的理解这个框架和框架的设计思想。由于互联网的复杂性,为了满足我们特定的需求,需要对Spring+Quartz进行二次开发,整个二次开发过程都会进行讲解。Spring被用在了越来越多的项目中, Quartz也被公认为是比较好用的定时器设置工具,学完这个课程后,不仅仅可以熟练掌握分布式定时任务,还可以深入理解大型框架的设计思想。
[入门数据分析的第一堂课]这是一门为数据分析小白量身打造的课程,你从网络或者公众号收集到很多关于数据分析的知识,但是它们零散不成体系,所以第一堂课首要目标是为你介绍:Ø  什么是数据分析-知其然才知其所以然Ø  为什么要学数据分析-有目标才有动力Ø  数据分析的学习路线-有方向走得更快Ø  数据分析的模型-分析之道,快速形成分析思路Ø  应用案例及场景-分析之术,掌握分析方法[哪些同学适合学习这门课程]想要转行做数据分析师的,零基础亦可工作中需要数据分析技能的,例如运营、产品等对数据分析感兴趣,想要更多了解的[你的收获]n  会为你介绍数据分析的基本情况,为你展现数据分析的全貌。让你清楚知道自己该如何在数据分析地图上行走n  会为你介绍数据分析的分析方法和模型。这部分是讲数据分析的道,只有学会底层逻辑,能够在面对问题时有自己的想法,才能够下一步采取行动n  会为你介绍数据分析的数据处理和常用分析方法。这篇是讲数据分析的术,先有道,后而用术来实现你的想法,得出最终的结论。n  会为你介绍数据分析的应用。学到这里,你对数据分析已经有了初步的认识,并通过一些案例为你展现真实的应用。[专享增值服务]1:一对一答疑         关于课程问题可以通过微信直接询问老师,获得老师的一对一答疑2:转行问题解答         在转行的过程中的相关问题都可以询问老师,可获得一对一咨询机会3:打包资料分享         15本数据分析相关的电子书,一次获得终身学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值