[大数据学习]如何解决大数据的处理问题?

大数据技术关注的是数据,如何存储、计算、传输大规模的数据是要考虑的核心要素。


我们传统的计算模型是:输入->计算->输出,就是程序放在那里,我们去拉数据过来,给它输入然后计算,最后产生输出结果。但在互联网时代,需要处理的数据实在膨胀太过急速,所以传统的计算模型已经不适合于大数据的处理,这时我们可以采用一种新的思路。既然数据是庞大的,而程序小的多,将数据输入到程序是不划算的,是不是可以把程序分发到数据所有的地方再进行计算,然后把结果汇总呢?答案是肯定的。

但是,又引申出新的问题,不同的两台计算机之间,如何进行协作才能完成计算和汇总呢,这时必须在技术上重新架构。MapReduce是一种处理大型及超大型数据集并生成相关执行的编程模型,最早由Google在2003年到2004年公布了关于GFS、MapReduce和BigTable三篇技术论文中出现。

[大数据学习]如何解决大数据的处理问题?


如何实现?

  • 将待处理的数据存储在集群服务器上,主要使用HDFS将文件分块存储
  • 大数据引擎根据不同服务器的处理能力,在每台服务器上启动任务执行进程并等待任务分配
  • 使用大数据计算支持的编程模型进行编程,比如hadoop的mapreduce模型,或spark的RDD模型,程序编写好了打包jar包
  • 用hadoop或spark启动命令执行jar包,执行引擎会根据数据路径将数据分片并分配给每个任务执行进程处理
  • 任务执行进程收到分配的任务后,自动加载程序jar包,并通过反射方式运行程序
  • 任务执行进程根据分配的数据片的地址和数据文件的偏移量读取数据进行处理

大数据技术的编程模型和编程框架,使得开发人员只需要关注大数据的算法实现,而不必关心这个算法如何在分布式环境中运行,极大简化大数据开发的难度和门槛。

最后说一下,想要学习大数据的限时领取免费资料及课程

领取方法:

还是那个万年不变的老规矩

1.评论文章,没字数限制,一个字都行!

3.私信小编:“大数据开发教程”即可!

谢谢大家,祝大家学习愉快!(拿到教程后一定要好好学习,多练习哦!)


分享到:


相關文章: