配色: 字号:
大数据与数据挖掘(4)
2022-01-31 | 阅:  转:  |  分享 
  
大数据与数据挖掘(4)

胡经国



大数据采集技术

大数据开启了一个大规模生产、分享和应用数据的时代它导致技术和商业发生了巨大的变化。麦肯锡研究表明,在医疗、零售和制造业领域,大数据每年可以提高劳动生产率0.51个百分点。大数据在核心领域的渗透速度有目共睹然而调查显示,未被使用的信息比例高达99.4%很大程度是由于高价值的信息无法获得采集。因此在大数据时代,如何从大数据中采集出有用的信息已经成为推动大数据发展的关键因素之一那么什么是大数据采集技术呢就给大家介绍大数据采集技术,让大家了解大数据采集。什么是数据采集

数据采集DAQ),又称为数据获取,是指从传感器和其它待测设备等的模拟和数字被测单元中自动采集信息的过程。数据分类新一代数据体系中,将传统数据体系中没有考虑过的新数据源进行归纳与分类,可将其分为线上行为数据与内容数据两大类。

①、线上行为数据

包括:页面数据、交互数据、表单数据、会话数据等。

②、内容数据

包括:应用日志、电子文档、机器数据、语音数据、社交媒体数据等。大数据的主要来源:商业数据互联网数据传感器数据数据采集与大数据采集区别数据采集来源单一,数据量相对于大数据较小;结构单一;应用关系型数据库和并行数据仓库。

大数据采集来源广泛,数量巨大;数据类型丰富,包括结构化、半结构化和非结构化数据;应用分布式数据库。传统数据采集的不足

传统数据采集来源单一,并且存储、管理和分析数据量也相对较小,大多采用关系型数据库和并行数据仓库即可处理。

对依靠并行计算提升数据处理速度而言,传统的并行数据库技术追求高度一致性和容错性根据CAP理论,难以保证其可用性和扩展性。CAP理论

CAP理论,又叫做CAP原则CAP定理,指在一个分布式系统中,Consistency一致性、Availability可用性Partitiontolerance(分区容错性三者不可得兼。CAP是NOSQL(非关系型数据库)的基石。

分布式系统的CAP理论首先把分布式系统中的三个特性进行了如下的归纳

一致性C):在分布式系统中的所有数据备份,在同一时刻是否为同样的值。等同于所有节点访问同一份最新的数据副本

可用性A):在集群中一部分节点出现故障以后,集群整体是否还能响应客户端的读写请求。对数据更新具备高可用性

分区容性P):就实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择。

CAP理论就是说在分布式存储系统中,最多只能实现上面的两点。而由于当前的网络硬件肯定会出现延迟等问题,分区容性是我们必须需要实现的。所以我们只能在一致性和可用性之间进行权衡没有NoSQL系统能同时保证这三点。

NoSQL泛指非关系型的数据库。NoSQL的产生是为了解决大规模数据集合多重数据种类带来的挑战,尤其是为了解决大数据应用难题。大数据采集新方法系统日志采集方法

很多互联网企业都有自己的海量数据采集工具多用于系统日志采集这些工具均采用分布式架构能满足每秒数百MB的日志数据采集和传输需求。网络数据采集方法

网络数据采集是指通过网络爬虫或网站公开API等方式从网站上获取数据信息。

该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音频、视频等文件或附件的采集附件与正文可以自动关联。

除了网络中包含的内容之外,对于网络流量的采集可以使用DPI或DFI等带宽管理技术进行处理。网络爬虫

网络爬虫又网页蜘蛛网络机器人,在FOAF社区中间更经常称为网页追逐者,是一种按照一定的规则,自动抓取万维网信息的程序或者脚本。网络蜘蛛是通过网页的链接地址来寻找网页。

网络蜘蛛从网站某一个页面通常是首页开始,读取网页的内容,找到在网页中的其它链接地址然后通过这些链接地址寻找下一个网页这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。这样看来,网络蜘蛛就是一个爬行程序,一个抓取网页的程序。API

API(ApplicationProgramInterface,应用程序接口是操作系统留给应用程序的一个调用接口应用程序通过调用操作系统的API而使操作系统去执行应用程序的命令(动作)。

应用程序接口是一组定义、程序及协议的集合通过API接口实现计算机软件之间的相互通信。API的一个主要功能是提供通用功能集。程序员通过调用API函数对应用程序进行开发,可以减轻编程任务。API同时也是一种中间件,为各种不同平台提供数据共享。其他数据采集方法

对于企业生产经营数据或学科研究数据等保密性要求较高的数据,可以通过与企业或研究机构合作,使用特定系统接口等相关方式采集数据。大数据采集平台

最后,为大家介绍几款应用广泛的大数据采集平台,供大家参考使用。ApacheFlume

Flume是Apache旗下的一款开源、高可靠、高扩展、容易管理、支持客户扩展的数据采集系统。Flume是使用JRuby来构建的,依赖Java运行环境。Fluentd

Fluentd是另一个开源的数据收集框架。Fluentd使用C/Ruby开发,使用JSON文件来统一日志数据。它的可插拔架构支持各种不同种类和格式的数据源和数据输出。最后它同时提供了高可靠和很好的扩展性。TreasureDataInc对该产品提供支持和维护。Logstash

Logstash是著名的开源数据栈ELKElasticSearch,Logstash,Kibana)中的那个Logstash(L)。Logstash用JRuby开发,运行时依赖JVM。SplunkForwarder

Splunk是一个分布式的机器数据平台主要有三个角色:SearchHead负责数据的搜索和处理,提供搜索时的信息抽取Indexer负责数据的存储和索引Forwarder负责数据的收集、清洗、变形,并发送给Indexer。







4







献花(0)
+1
(本文系胡经国图书...原创)