数据科学导论续

一、大数据采集的流程和方法

大数据采集的流程和方法

系统日志采集方法

很多互联网企业都有自己的海量数据采集工具,多用于系统日志采集,例如:

  • Flume:分布式日志收集系统,最初由Cloudera开发,现是Apache的一个开源项目。
  • Chukwa:开源分布式数据收集系统,构建在HDFS和MapReduce框架之上。它可以用于监控(2000个以上节点,每天产生数据量在TB级别)Hadoop集群的整体运行情况并对他们的日志进行分析。
  • Scrible:Scribe是facebook开源的日志收集系统,在facebook内部已经得到大量的应用。Scribe为日志的"分布式收集,统一处理",提供了一个可扩展的、高容错的方案。
  • Kafka:最早是LinkedIn的开发的消息系统,现是Apache的一个开源项目。

Apache Flume

数据库采集方法

网络数据采集方法

网络爬虫工具基本可以分为3类。

(1)分布式网络爬虫工具,如Nutch。

(2)Java网络爬虫工具,如Crawler4j、WebMagic、WebCollector。

(3)非Java网络爬虫工具,如Scrapy(基于Python语言开发)

通用网络爬虫

二、大数据计算框架概述

大数据计算框架概述

Hadoop

MapReduce

Spark实时处理系统

流计算框架

Storm

Trident

交互式分析框架

在解决了大数据的可靠存储和高效计算后,如何为数据分析人员提供便利日益受到关注,而最便利的分析方式莫过于交互式查询。这几年交互式分析技术发展迅速,目前这一领域知名的平台有十余个,包括Google开发的Dremel和PowerDrill,Facebook开发的Presto, Hadoop服务商Cloudera和HortonWorks分别开发的Impala和Stinger,以及Apache项目Hive、Drill、Tajo、Kylin、MRQL等。

一些批处理和流计算平台如Spark和Flink也分别内置了交互式分析框架。由于SQL已被业界广泛接受,目前的交互式分析框架都支持用类似SQL的语言进行查询。早期的交互式分析平台建立在Hadoop的基础上,被称作SQL-on-Hadoop。后来的分析平台改用Spark、Storm等引擎,不过SQL-on-Hadoop的称呼还是沿用了下来。SQL-on-Hadoop也指为分布式数据存储提供SQL查询功能。

Hive

三、云计算概述

云计算本质上是一个分布式的架构,能够为海量数据提供充足的计算和存储资源,充分挖掘。

并行计算

并行计算可分为时间上的并行和空间上的并行。时间上的并行是指流水线技术,而空间上的并行则是指用多个处理器并发地执行计算。

传统意义上的并行与分布式计算的区别是:分布式计算强调的是任务的分布执行,而并行计算强调的是任务的并发执行。

分布式计算

网格计算

云计算

云计算的"云"就是存在于互联网上的服务器集群中的资源,它包括硬件资源(服务器、存储器、CPU等)和软件资源(例如应用软件,集成开发环境等)。

简而言之﹐云计算是一种商业计算模型,它将计算任务分布在由大量计算机构成的资源池上,使用户能够按需获取计算能力,存储空间和信息服务。 不同的学者、机构给出了至少上百种不同的定义

IaaS

PaaS

SaaS

按部署模式分类

相关推荐
嘿黑嘿呦9 天前
chap 8排序
算法·蓝桥杯·排序算法·软件工程
旧曲重听19 天前
2026前端技术从「夯」到「拉」
前端·程序人生·职场和发展·软件工程
承渊政道9 天前
飞算JavaAI 智能引导背后的多 Agent 协作机制解析:从老旧 Java 后台升级到可运行工程
java·开发语言·spring boot·安全·intellij-idea·软件工程·ai编程
apcipot_rain9 天前
计科八股20260616(1)——堆存中位数、链表判环、黑白测试、敏捷开发与瀑布模型、配置管理、持续集成、池化
数据结构·算法·软件工程
lisw0510 天前
【计算机科学技术】路由器(route):概念、历史、内容与战略!
机器学习·智能路由器·软件工程
培培说证10 天前
大数据、人工智能、计算机、软件工程,到底怎么选?
大数据·人工智能·软件工程
文艺倾年11 天前
【强化学习】MDP、贝尔曼方程与CartPole 编程,20W字总结(二)
人工智能·软件工程·强化学习
郝学胜-神的一滴11 天前
CMake 017:彩色日志输出实战
linux·c语言·开发语言·c++·软件工程·软件构建·cmake
小程故事多_8011 天前
AI软件工程范式革命,终结五十年的“手工伪工程”时代
人工智能·软件工程
精益数智小屋12 天前
项目管理看板如何拆解任务进度?项目管理看板解决跨部门协作难题
大数据·人工智能·数据分析·云计算·软件工程