中企动力 > 商学院 > 大数据采集的方法
  • ?

    大数据开发:Python数据采集快速见效的方法之一

    廖芷云

    展开

    这一节看似好讲实则难以表述清楚,

    讲不到的地方请别较真,也不要问爬虫哪家好?

    我只说我知道的,怎么选择,兄弟们请随意。

    想了解更多大数据时代各个热词之间的对比,请加大数据学习交流8群640193172,共同讨论。

  • ?

    三大核心解读大数据信息采集

    Kelli

    展开

    对于大数据的理解

    大多人还停留在很大的数据这一概念上

    其实不然

    大数据指的是存在于网络上的海量的信息碎片

    通过类似云速数据挖掘这种先进的技术将其采集、整合、

    从而发现隐藏于其中的关联信息

    下面通过三个核心来解读什么是大数据信息采集

    一、大数据营销是将所有营销行为和销售行为数据化

    将这些可挖掘、整理的数据作为营销活动的核心部分

    贴合需求打造符合市场及消费需求的商业模式、

    二、大数据信息采集实现线上线下结合的网络营销时代

    线上的营销活动不受时间空间限制

    将线上数据与传统模式结合起来

    打通数据库实现技术共享

    将是未来营销工作的首要重点

    三、大数据信息采集实现企业高效转化

    大数据营销的核心意在大规模的个性化互动

    指的是有针对性的传播内容

    更加人性化的服务

    而实现这以核心的基础就是大数据信息采集

  • ?

    网页信息采集,大数据采集技术综述

    Mathea

    展开

    大数据采集技术就是对数据进行ETL操作,通过对数据进行提取、转换、加载,最终挖掘数据的潜在价值。然后提供给用户解决方案或者决策参考。ETL,是英文 Extract-Transform-Load 的缩写,数据从数据来源端经过抽取(extract)、转换(transform)、加载(load)到目的端,然后进行处理分析的过程。

    用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据模型,将数据加载到数据仓库中去,最后对数据仓库中的数据进行数据分析和处理。

    数据采集位于数据分析生命周期的重要一环,它通过传感器数据、社交网络数据、移动互联网数据等方式获得各种类型的结构化、半结构化及非结构化的海量数据。

    由于采集的数据种类错综复杂,对于这种不同种类的数据。

    我们进行数据分析,必须通过提取技术。将复杂格式的数据,进行数据提取,从数据原始格式中提取(extract)出我们需要的数据,这里可以丢弃一些不重要的字段。

    对于数据提取后的数据,由于数据源头的采集可能存在不准确。

    所以我们必须进行数据清洗,对于那些不正确的数据进行过滤、剔除。

    针对不同的应用场景,对数据进行分析的工具或者系统不同,我们还需要对数据进行数据转换(transform)操作,将数据转换成不同的数据格式,最终按照预先定义好的数据仓库模型,将数据加载(load)到数据仓库中去。

    大数据处理目前比较流行的是两种方法,一种是离线处理,一种是在线处理,基本处理架构如下:

    在互联网应用中,不管是哪一种处理方式,其基本的数据来源都是日志数据,例如对于web应用来说,则可能是用户的访问日志、用户的点击日志等。

    如果对于数据的分析结果在时间上有比较严格的要求,则可以采用在线处理的方式来对数据进行分析,如使用Spark、Storm等进行处理。比较贴切的一个例子是天猫双十一的成交额,在其展板上,我们看到交易额是实时动态进行更新的,对于这种情况,则需要采用在线处理。

    当然,如果只是希望得到数据的分析结果,对处理的时间要求不严格,就可以采用离线处理的方式,比如我们可以先将日志数据采集到HDFS中,之后再进一步使用MapReduce、Hive等来对数据进行分析,这也是可行的。

    在现实生活中,数据产生的种类很多,并且不同种类的数据产生的方式不同。

    对于大数据采集系统,主要分为以下三类系统:

    一、系统日志采集系统。

    许多公司的业务平台每天都会产生大量的日志数据。对于这些日志信息,我们可以得到出很多有价值的数据。通过对这些日志信息进行日志采集、收集,然后进行数据分析,挖掘公司业务平台日志数据中的潜在价值。

    为公司决策和公司后台服务器平台性能评估提高可靠的数据保证。

    系统日志采集系统做的事情就是收集日志数据提供离线和在线的实时分析使用。

    目前常用的开源日志收集系统有Flume、Scribe等。Apache Flume是一个分布式、可靠、可用的服务,用于高效地收集、聚合和移动 大量的日志数据,它具有基于流式数据流的简单灵活的架构。

    其可靠性机制和许多故障转移和恢复机制,使Flume具有强大的容错能力。

    Scribe是Facebook开源的日志采集系统。Scribe实际上是一个分布式共享队列,它可以从各种数据源上收集日志数据,然后放入它上面的共享队列中。

    Scribe可以接受thrift client发送过来的数据,将其放入它上面的消息队列中。然后通过消息队列将数据Push到分布式存储系统中,并且由分布式存储系统提供可靠的容错性能。

    如果最后的分布式存储系统crash时,Scribe中的消息队列还可以提供容错能力,它会还日志数据写到本地磁盘中。Scribe支持持久化的消息队列,来提供日志收集系统的容错能力。

    二、网络数据采集系统。

    通过网络爬虫和一些网站平台提供的公共API(如Twitter和新浪微博API)等方式从网站上获取数据。这样就可以将非结构化数据和半结构化数据的网页数据从网页中提取出来。

    并将其提取、清洗、转换成结构化的数据,将其存储为统一的本地文件数据。目前常用的网页爬虫系统有Apache Nutch、Crawler4j、Scrapy等框架。

    Apache Nutch是一个高度可扩展和可伸缩性的分布式爬虫框架。

    Apache通过分布式抓取网页数据,并且由Hadoop支持,通过提交MapReduce任务来抓取网页数据,并可以将网页数据存储在HDFS分布式文件系统中。

    Nutch可以进行分布式多任务进行爬取数据,存储和索引。由于多个机器并行做爬取任务,Nutch利用多个机器充分利用机器的计算资源和存储能力,大大提高系统爬取数据能力。

    Crawler4j、Scrapy都是一个爬虫框架,提供给开发人员便利的爬虫API接口。开发人员只需要关心爬虫API接口的实现,不需要关心具体框架怎么爬取数据。Crawler4j、Scrapy框架大大降低了开发人员开发速率,开发人员可以很快的完成一个爬虫系统的开发。

    三、数据库采集系统。

    一些企业会使用传统的关系型数据库MySQL和Oracle等来存储数据。

    除此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。企业每时每刻产生的业务数据,以数据库一行记录形式被直接写入到数据库中。

    通过数据库采集系统直接与企业业务后台服务器结合,将企业业务后台每时每刻都在产生大量的业务记录写入到数据库中,最后由特定的处理分许系统进行系统分析。

    针对大数据采集技术,目前主要流行以下大数据采集分析技术。Hive是Facebook团队开发的一个可以支持PB级别的可伸缩性的数据仓库。

    这是一个建立在Hadoop之上的开源数据仓库解决方案。 Hive支持使用类似SQL的声明性语言(HiveQL)表示的查询,这些语言被编译为使用Hadoop执行的MapReduce作业。

    另外,HiveQL使用户可以将自定义的map-reduce脚本插入到查询中。该语言支持基本数据类型,类似数组和Map的集合以及嵌套组合。

    HiveQL语句被提交执行。首先Driver将查询传递给编译器compiler,通过典型的解析,类型检查和语义分析阶段,使用存储在Metastore中的元数据。

    编译器生成一个逻辑任务,然后通过一个简单的基于规则的优化器进行优化。

    最后生成一组MapReduce任务和HDFS Task的DAG优化后的Task。 然后执行引擎使用Hadoop按照它们的依赖性顺序执行这些Task。

    Hive简化了对于那些不熟悉Hadoop MapReduce接口的用户学习门槛,Hive提供了一些列简单的HiveQL语句,对数据仓库中的数据进行简要分析与计算。

  • ?

    数据产品经理必修课(66):大数据研发之采集技术

    邵乐天

    展开

    既然产品、研发与运营是互联网的三板斧,那么就不得不说说大数据时代的研发。我一直在困惑,究竟应该如何向广大的产品经理同学们讲清楚什么是大数据的研发。说详细了,必然使其困惑,而且我也不一定都能够明了其中的细节;说的粗略了,产品经理同学又会觉得不痛不痒,毫无感觉与世纪效果。再加上,本身打数据的研发就包罗万象,即便是单独成书则废寝忘食不能成也。除此之外,大数据门派众多,云计算、虚拟化、微服务都算是与大数据紧密相关的,那到底什么该讲什么不该讲呢?

    我制定了大致这样的规则,我们想和各位产品经理同学讲一讲大数据的代表性工作,Hadoop平台以及围绕该平台大致需要做的一些事情,我们并不会具体到一种语言,也不会具体到某种技术,而是从宏观的视角,把产品经理在数据上扎的根生出的藤蔓深向原本只有工程师们才能够触及的墙角与远方,并在每一处需要精心雕琢与深究的地方稍加缠绕,略微展开谈一谈这些宏观过程其中的内部机理。还记得我们在第二部分介绍数据挖掘相关技能的时候,我们使用了CRISP-DM的流程来介绍数据挖掘与数据分析的标准化步骤。如果那个时候的介绍看成是逻辑层面的流程的话,我们这里想要沿着物理层面的主线来向数据产品经理同学们展现什么是打数据的研发。具体来说,我们会按照数据采集、数据存储、数据计算以及数据分析这样四个步骤去介绍这些过程在工程师的手中,在他们心爱的服务器上都发生了什么。

    让我们还是先来看看数据采集吧。

    现如今,相信很多人手上的手机已经变成了全屏幕的触屏手机,而如果时光回到十年前,你拿起那个屏幕尺寸更小,手机功能更少的键盘机的话,不知会作何感想。那个时候的手机对于我们来说,只有三个意义:电话、短信、小游戏。如果你的手机可以播放视频,那一定是诺基亚与摩托罗拉的高端机型了。在那个时候,我们通过移动电话设备产生的数据无非也就是通话与短信数据,这些数据存储在三大运营商,他们知道我们在什么时间给谁发短信或者打电话,如果他们乐意,甚至还可以知道我们发了什么,说了什么。那个时候的数据采集量小到可怜,而且大多数还握在运营商手中。

    随着屏幕尺寸的扩大,安卓与iOS的入局,整个手机生态被打破,人们还是习惯于看大屏幕的收集,习惯使用一根手指去戳屏幕,习惯于在自己的电子设备上装上各色花花绿绿的应用,以至于在各种公共场合人们低头猛戳手机,甚至还收获了一个专有的名词叫做“低头族”。这个时候,出现了微信、微博,人们开始习惯使用微信给好友递送消息,而不再使用短信。这样的现象也改造着运营商的业务,以前每个月最需要在意的是套餐中包含多少条短信,而现如今则是每个月的套餐中的流量有多少。尽管运营商还是掌握着我们海量的数据,但是能够收集数据的人再也不止那三家运营商了。手机的生产者需要为手机在出厂的时候生产操作系统,因而他们成为了天然的数据收集方,原则上他们可以了解到你在手机里做的一切,就好比在一个封闭的屋子里装上了一个闭路电视,这个屋子就是该厂商生产的手机,你可以不进去,但是一旦你进去,所有的行为将被监控与知晓,至于这个闭路电视的监控视频内容何时被何人查看则取决于布下该系统的人的意愿罢了。除了这个房屋的建造者,还有很多的家居提供商也具备监控行为的能力,这些家居的提供商就是手机里花红叶绿的各色APP,原则上,只要你使用这样的家居产品,你在使用该产品的行为就会被记录,如果这样的家居公司与房屋的建造公司关系不错,除了能够收集自家家居产品的使用数据之外,还能顺便了解到但凡有本家公司家居产品的屋子里都还有哪些家居产品,甚至连用户是如何使用其他家居产品都是知道的。这样,数据进一步被积累,除了以前的运营商(地皮所有者)之外,手机操作系统厂商(房屋建造者)与手机内应用开发者(家居厂商)都是数据的拥有者。

    原本数据只是一口池塘,池塘中仅有的几条大鱼已经翻不过来身了,而现如今风云突变,池塘变成了湖泊,不仅这几条大鱼能够鱼翔浅底,而且随着湖泊生态的演变,鱼群变得越来越密集,每条鱼都可以自由的吮吸着湖泊中的融氧,变强,变大。就在此时此刻,湖泊的平面再一次的上升,而鱼群们则更加跃跃欲试,这个湖就是我们现在知道的大数据。

    抒情了这么久,只说了数据采集的一半,即可以采集哪些数据。当然,上面是以采集收集的数据为例来进行的说明的,而传统的网页也无非大同小异。可是这些数据究竟是怎么被厂商们采集回去的呢?也就是说到底采集的方法有哪些呢?

    我们大致可以将数据的采集分为两类,一类谓之传送带式,一类谓之土方车式。且听我细细为你道来。

    对于传送带方式的数据采集来说,实际上实在采集的前沿阵地和数据存储的大后方建立了一个传送带,一旦有星星点点的数据被采集回来就会被立即送上传送带,经过一段距离的传输就会被递送到存储的地方存储起来或者是被计算。就好像是在很多煤矿或者石料企业的现场看到一条长长的传送带,前方的挖煤机或者是采石机但凡能够搅下半点原料,这些原料就会被立刻送上传送带,送到后方。尽管在实际的场景中,这些传送带的后方有可能也是一些仓库,但不妨把这些仓库看成是在数据采集档口上的第一道存储服务器罢了。在这样的情况下,运送土方或者数据的通道是一直建立的,存储土方和数据的仓库也是时时刻刻在接受的,只要采集数据的过程不停止,那么运行这个传送带的机器与看守仓库的人就不可以停止与下班,因而在这样的实时数据采集过程中,人的注意力不可以离开,需要一直专注于整个流程,我们称他们是长连接,就好比是人的思想之弦一直紧绷,一刻不松懈的关注者另一端很长时间。与这样方式类似的数据处理形式称之为数据流处理,而打电话就是一种典型的数据流处理形式,在整个打电话的过程中,听话人需要一直关注对方在说什么,甚至需要通过听辨声音来判断通话是否还存在于线上或是已经挂断。

    对于土方车式的数据采集来说,往往是挖掘机把挖掘到的土(数据)放到土方车上,但是这些土方车不会因为有了一抔土就立刻送走离开,而是等车装满后再听从现场指挥的命令按照次序离开并送到指定的地点,这样的方式因为是需要将数据积累到一定的量,因而是一种相较前一种数据采集的方式更加随意的方式,它的随意就体现在数据并不要求实时,而是一段时间发送一次。于是乎,在挖掘机工作的时候,土方车的驾驶员(传送人)与仓库的保管员(存储人)可以稍加休息或是处理其他事情。这种数据采集的模式称之为短链接,顾名思义,人们的神经并不需要死死地盯住一个事情,而是仅仅需要在需要处理的时候响应它,在处理完了之后转而去做别的事情或者处理别人的请求即可。目前大多数的APP内的数据采集使用的就是这样的短链接模式,先将数据积累在本地,然后再一段时间把这些数据递送一次。除此之外,当你访问网页的时候,也是这样的短链接模式,你送给服务器一个URL,告诉他你想要这个网址的内容,服务器找到之后发送给你,但是它并不关心你是否能够收到,只要它一旦发出就去处理别的事情了,除非你再次请求他,否则它也不会再来理你。

    这就是你所应该知道的数据采集过程。

  • ?

    小公司收集大数据的5种创新方式

    罗安寒

    展开

    在尝试应对收集和分析大数据的挑战时,小型企业可能会觉得自己陷入了困境。不过,即使财富500强的IT预算比小企业过去的十年的收入还要多,小企业也不会被这些大公司远远地甩在后面。

    而目前小企业利用大数据的机会从来没有这么好。多家企业已经在SaaS(软件即服务)平台上推出了大型数据收集和分析工具。这意味着小企业不需要投资昂贵的硬件,聘请昂贵的数据专家,然后自行部署复杂的算法。

    但即使是SaaS大数据平台,企业仍然需要高质量的数据来帮助达成数据驱动的决策。再次,深吸一口气。虽然很多企业收集了大量的数据,但必须认识到要让信息能够为未来的分析进行正确分类。

    1.交易数据

    数据存储中最重要的一件事是场景数据。这些是包含多个变量的数据点。当顾客为你支付货物和服务时,企业需要知道:

    他们消费了多少他们购买了什么他们什么时候购买什么促销或优惠券促使他们购买他们是如何支付的。如果企业部署了正确的POS软件,将能够自动将这些信息存储在CRM(客户关系管理)软件中。虽然存储客户支付细节有些不当,但是为了方便支付处理,除了在加密的数据库中,企业可以创建一个详细的非支付工具交易数据库,以便将来进行挖掘。

    2.店内运营监控

    大数据分析正在改变零售商经营店铺的方式。随着企业采用部署运动传感器的安全系统,可以跟踪客户在整个商店中移动的位置。企业将无法确定哪个客户的身份,但是企业能够了解每个部门有多少客户购物。

    这些数据可以用来创建可以指导员工选择的趋势。对于没有部署特定人员的小型商店,需要的只是门口的柜台。

    3.在线营销分析

    当客户访问企业商店的网站时,谷歌分析应该能够为每位访客提供人口统计数据。这些信息可以帮助指导企业如何准备营销活动,以及网站的哪些方面最受关注。

    网站热点图可以帮助企业了解网站上每个网页的哪些部分有着最多的鼠标者,强大的Facebook营销工具可以帮助企业向读者反映当前的关注点。

    可以从网上与企业的品牌互动收集的数据量几乎是无限的。企业明智的做法是指导在线营销团队安装和定制插件和程序,将这些数据收集并存储在安全的地方供将来分析是明智之举。

    4.客户回报计划

    有没有想过为什么大型超市愿意给顾客提供折扣,只需要输入其电话号码或扫描奖励卡?因为客户购物档案对他们很有价值。根据其地址和消费习惯,他们可以估计顾客的年收入。

    商家需要为自己的客户创建一个奖励计划。奖励计划将通过鼓励重复购物来提高商家的整体销售额。此外,还可以获取客户级别的数据,了解客户的购买方式、时间和内容。如果商家可以与电子商务网站同步,就可以获得额外的点数,以便在网上或在网上进行最终购买之前了解客户浏览商品的更多数据。

    5.第三方促销

    企业可以创建多个第三方忠诚计划,并与自己的个人会员计划配合使用。例如,Shopkick在进入商店时会以积分奖励购物者,拍摄赞助产品的照片,并使用链接的借记卡或信用卡来完成参与商店的购物。

    首先,许多企业这些类型的节目愿意支付费用,以促进他们的商店和产品的销售。其次,所有这些数据都可以从管理移动应用程序的公司购买,这些数据将包括参与该计划的每家商店的旅行习惯和购买习惯。

    这种数据可以帮助商家更好地分析未来的促销活动和捆绑优惠。

    个性化是最终目标

    当企业开始建立一个客户档案时,其营销团队深入到统计数据中是很重要的。企业对客户了解得越多,其个性化推广就越有效。采用电子邮件推销,以及采用标准化的线上和线下促销现在很难有更好的效果。

    当客户感觉正在谈论自己的独特需求时,企业将体验到消费水平、购买频率,以及整体客户价值的巨大增长。这将有助于将投资于大数据收集和分析工具的成本分摊到大量的客户交易中,从而创建一个数据驱动的指导系统。

    总之,各种规模的商店和企业可以采集大量数据。而得益于大数据SaaS平台,企业不再需要拥有内部数据收集和分析团队。通过配置现代POS软件来收集客户的非财务数据,可以将这些数据与所有其他数据源相关联。

    随着客户与厂商进行互动,从研究到最终购买,企业将深入了解如何提供个性化的报价,这是产生客户忠诚度的关键因素。随着企业的发展与所观察到的市场需求进行对话,将发现扩展或将企业的产品和服务集中在对赢利产生最大影响的机会。

    来源:互联网

  • ?

    企业进入大数据信息采集时代

    心不痛

    展开

    做网络营销

    不论是个人还是公司都想要实现产品的渠道拓展和推广宣传

    但绝大多数的企业都不能达成想要的效果

    其实原因有很多

    一、想要做好网络营销

    客户是王道

    没有强大的客户群做后盾

    网络营销的销量不过是空想罢了

    当下客户渠道大多以网络大数据信息采集的方式来获取

    如云速数据挖掘

    通过输入行业关键字

    就能一键采集指定区域的客户信息和联系方式

    省时高效

    二、通过客户信息

    从分考虑分析目标群体的生活轨迹和习惯

    来预测客户下一步的消费行为

    以正确的时间正确的方式传达产品信息

    从而完成营销活动

    三、产品文案的策划一定要以客户需求为重点

    并且简单易懂、快速吸引客户眼球

    才能使转化率达到最佳

  • ?

    六大主流大数据采集平台架构分析

    问萍

    展开

    随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台:

    Apache Flume Fluentd Logstash Chukwa Scribe Splunk Forwarder

    大数据平台与数据采集

    任何完整的大数据平台,一般包括以下的几个过程:

    数据采集–>数据存储–>数据处理–>数据展现(可视化,报表和监控)

    其中,数据采集是所有数据系统必不可少的,随着大数据越来越被重视,数据采集的挑战也变的尤为突出。这其中包括:

    我们今天就来看看当前可用的六款数据采集的产品,重点关注它们是如何做到高可靠,高性能和高扩展。

    1、Apache Flume

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

    Flume最初是由Cloudera的工程师设计用于合并日志数据的系统,后来逐渐发展用于处理流数据事件。

    Flume设计成一个分布式的管道架构,可以看作在数据源和目的地之间有一个Agent的网络,支持数据路由。

    每一个agent都由Source,Channel和Sink组成。

    Source

    Source负责接收输入数据,并将数据写入管道。Flume的Source支持HTTP,JMS,RPC,NetCat,Exec,Spooling Directory。其中Spooling支持监视一个目录或者文件,解析其中新生成的事件。

    Channel

    Channel 存储,缓存从source到Sink的中间数据。可使用不同的配置来做Channel,例如内存,文件,JDBC等。使用内存性能高但不持久,有可能丢数据。使用文件更可靠,但性能不如内存。

    Sink

    Sink负责从管道中读出数据并发给下一个Agent或者最终的目的地。Sink支持的不同目的地种类包括:HDFS,HBASE,Solr,ElasticSearch,File,Logger或者其它的Flume Agent。

    Flume在source和sink端都使用了transaction机制保证在数据传输中没有数据丢失。

    Source上的数据可以复制到不同的通道上。每一个Channel也可以连接不同数量的Sink。这样连接不同配置的Agent就可以组成一个复杂的数据收集网络。通过对agent的配置,可以组成一个路由复杂的数据传输网络。

    配置如上图所示的agent结构,Flume支持设置sink的Failover和Load Balance,这样就可以保证即使有一个agent失效的情况下,整个系统仍能正常收集数据。

    Flume中传输的内容定义为事件(Event),事件由Headers(包含元数据,Meta Data)和Payload组成。

    Flume提供SDK,可以支持用户定制开发:

    Flume客户端负责在事件产生的源头把事件发送给Flume的Agent。客户端通常和产生数据源的应用在同一个进程空间。常见的Flume 客户端有Avro,log4J,syslog和HTTP Post。另外ExecSource支持指定一个本地进程的输出作为Flume的输入。当然很有可能,以上的这些客户端都不能满足需求,用户可以定制的客户端,和已有的FLume的Source进行通信,或者定制实现一种新的Source类型。

    同时,用户可以使用Flume的SDK定制Source和Sink。似乎不支持定制的Channel。

    2、Fluentd

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

    Fluentd的部署和Flume非常相似:

    Fluentd的架构设计和Flume如出一辙:

    Fluentd的Input/Buffer/Output非常类似于Flume的Source/Channel/Sink。

    Input

    Input负责接收数据或者主动抓取数据。支持syslog,http,file tail等。

    Buffer

    Buffer负责数据获取的性能和可靠性,也有文件或内存等不同类型的Buffer可以配置。

    Output

    Output负责输出数据到目的地例如文件,AWS S3或者其它的Fluentd。

    Fluentd的配置非常方便,如下图:

    Fluentd的技术栈如下图:

    FLuentd和其插件都是由Ruby开发,MessgaePack提供了JSON的序列化和异步的并行通信RPC机制。

    Cool.io是基于libev的事件驱动框架。

    FLuentd的扩展性非常好,客户可以自己定制(Ruby)Input/Buffer/Output。

    Fluentd从各方面看都很像Flume,区别是使用Ruby开发,Footprint会小一些,但是也带来了跨平台的问题,并不能支持Windows平台。另外采用JSON统一数据/日志格式是它的另一个特点。相对去Flumed,配置也相对简单一些。

    3、Logstash

    Logstash是著名的开源数据栈ELK (ElasticSearch, Logstash, Kibana)中的那个L。

    Logstash用JRuby开发,所有运行时依赖JVM。

    Logstash的部署架构如下图,当然这只是一种部署的选项。

    一个典型的Logstash的配置如下,包括了Input,filter的Output的设置。

    几乎在大部分的情况下ELK作为一个栈是被同时使用的。所有当你的数据系统使用ElasticSearch的情况下,logstash是首选。

    4、Chukwa

    官网:https://chukwa.apache.org/

    Apache Chukwa是apache旗下另一个开源的数据收集平台,它远没有其他几个有名。Chukwa基于Hadoop的HDFS和Map Reduce来构建(显而易见,他用Java来实现),提供扩展性和可靠性。Chukwa同时提供对数据的展示,分析和监视。很奇怪的是它的上一次 github的更新事7年前。可见该项目应该已经不活跃了。

    Chukwa的部署架构如下:

    Chukwa的主要单元有:Agent,Collector,DataSink,ArchiveBuilder,Demux等等,看上去相当复杂。由于该项目已经不活跃,我们就不细看了。

    5、Scribe

    代码托管:https://github/facebookarchive/scribe

    Scribe是Facebook开发的数据(日志)收集系统。已经多年不维护,同样的,就不多说了。

    6、Splunk Forwarder

    以上的所有系统都是开源的。在商业化的大数据平台产品中,Splunk提供完整的数据采金,数据存储,数据分析和处理,以及数据展现的能力。

    Splunk是一个分布式的机器数据平台,主要有三个角色:

    Search Head负责数据的搜索和处理,提供搜索时的信息抽取。

    Indexer负责数据的存储和索引 Forwarder,负责数据的收集,清洗,变形,并发送给Indexer

    Splunk内置了对Syslog,TCP/UDP,Spooling的支持,同时,用户可以通过开发 Input和Modular Input的方式来获取特定的数据。在Splunk提供的软件仓库里有很多成熟的数据采集应用,例如AWS,数据库(DBConnect)等等,可以方便的从云或者是数据库中获取数据进入Splunk的数据平台做分析。

    这里要注意的是,Search Head和Indexer都支持Cluster的配置,也就是高可用,高扩展的,但是Splunk现在还没有针对Farwarder的Cluster的功能。也就是说如果有一台Farwarder的机器出了故障,数据收集也会随之中断,并不能把正在运行的数据采集任务Failover到其它的 Farwarder上。

    总结

    我们简单讨论了几种流行的数据收集平台,它们大都提供高可靠和高扩展的数据收集。大多平台都抽象出了输入,输出和中间的缓冲的架构。利用分布式的网络连接,大多数平台都能实现一定程度的扩展性和高可靠性。

    其中Flume,Fluentd是两个被使用较多的产品。如果你用ElasticSearch,Logstash也许是首选,因为ELK栈提供了很好的集成。Chukwa和Scribe由于项目的不活跃,不推荐使用。

    Splunk作为一个优秀的商业产品,它的数据采集还存在一定的限制,相信Splunk很快会开发出更好的数据收集的解决方案。

  • ?

    让您了解大数据采集最新技术

    腓特烈斯韦克

    展开

    现在谈论大数据已经没有新意了,形形色色的产品、平台和公司都贴满大数据标签,但大数据却并没有掀起预期飓风,甚至还被冠以“伪命题”污名。

    大数据开启了一个大规模生产、分享和应用数据的时代,它给技术和商业带来了巨大的变化。大数据在核心领域的渗透速度有目共睹,然而调查显示,未被使用的信息比例高达99.4%,很大程度都是由于高价值的信息无法获取采集。

    因此在大数据时代背景下,如何从大数据中采集出有用的信息已经是大数据发展的关键因素之一,数据采集才是大数据产业的基石。那么什么是大数据采集技术呢?

    什么是数据采集?

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

    线上行为数据:页面数据、交互数据、表单数据、会话数据等。

    内容数据:应用日志、电子文档、机器数据、语音数据、社交媒体数据等。

    大数据的主要来源:1)商业数据 2)互联网数据 3)传感器数据

    传统数据采集的不足

    传统的数据采集来源单一,且存储、管理和分析数据量也相对较小,大多采用关系型数据库和并行数据仓库即可处理。对依靠并行计算提升数据处理速度方面而言,传统的并行数据库技术追求高度一致性和容错性,根据CAP理论,难以保证其可用性和扩展性。

    大数据采集新的方法

    以博为软件101异构数据采集技术为例:通过获取软件系统的底层数据交换、软件客户端和数据库之间的网络流量包,基于底层IO请求与网络分析等技术,采集目标软件产生的所有数据,将数据转换与重新结构化,输出到新的数据库,供软件系统调用。

    博为软件

    技术特点如下:

    1. 无需原软件厂商配合;

    2. 实时数据采集,数据端到端的响应速度达秒级;

    3. 兼容性强,可采集汇聚Windows平台各种软件系统数据;

    4. 输出结构化数据,作为数据挖掘、大数据分析应用的基础;

    5. 自动建立数据间关联,实施周期短、简单高效;

    6. 支持自动导入历史数据,通过I/O人工智能自动将数据写入目标软件;

    7. 配置简单、实施周期短。

    优点:其优势在于不需要“接口”配合,这就摆脱了对软件厂商的依赖。特别是在在需要集成多个系统数据时,不仅能节省大量时间、人力与资金,实现“一站式”完成;还避免了因个别系统开发团队解体、源代码丢失等原因导致系统数据集成出现烂尾的情况。

    缺点:只采集Windows平台的各软件系统数据

    版权声明:本文部分来自网络,如有侵权,请联系删除!

  • ?

    大数据信息采集的营销方式

    常俊驰

    展开

    企业做精准营销

    简单的来说就是利用互联网信息技术手段来实现个性化营销的活动

    需要依靠大数据信息采集系统作支撑

    企业精准营销可以从以下几个方面进行

    1.存在于网络中的信息碎片是独立错乱的

    需要将这些信息打通、链接实现信息共享

    为此要构建大数据交换共享平台

    实现用户的精准识别和数据汇集

    2.利用大数据信息采集工具实现精准营销和用户维系

    比如通过云速数据挖掘

    采集筛选精准需求客户信息

    进行一对一产品信息推广

    提高营销转化率

    3.实现运营精准化的基础是细分用户市场

    要求根据用户的消费习惯、需求等分析研究

    定位目标市场

    才能为精准营销提供依据

    最后要以客户为中心进行市场营销活动

    传统的营销模式以产品为导向

    对市场的反应速度缓慢

    大数据时代的精准营销

    是以客户的需求着手

    进行市场营销活动

  • ?

    干货丨大数据是如何被采集及应用的

    Ingram

    展开

    尽管“大数据”一词近年来屡遭热捧

    但很多人都还不知道什么是大数据

    更不知道大数据有甚卵用

    这两年,发现“大数据”这个词出现的越来越频繁了

    不仅企业,连国家都在部署大数据战略

    一番百度了之后

    Oh~ emmmmmmmmm~ +_+

    还是没搞懂大数据到底是个什么玩意儿

    直到有一天

    我发现一个秘密

    不管我在网上搜索什么

    页面都会跳出我要搜索的相关产品或关联事物

    然后,我恍然大悟!

    所谓大数据,就是算法!

    它能够“算”出我们“心中所想”

    那么问题来了

    大数据技术是如何采集到我们的信息的呢?

    数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,比如摄像头,麦克风,都是数据采集工具。

    数据采集系统整合了信号、传感器、激励器、信号调理、数据采集设备和应用软件。在数据大爆炸的互联网时代,数据的类型也是复杂多样的,包括结构化数据、半结构化数据、非结构化数据。结构化最常见,就是具有模式的数据。非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。大数据采集,是大数据分析的入口,所以是相当重要的一个环节。

    我们首先来了解一下数据采集的三大要点:

    一、数据采集的三大要点

    (1)全面性

    数据量足够具有分析价值、数据面足够支撑分析需求。

    比如对于“查看商品详情”这一行为,需要采集用户触发时的环境信息、会话、以及背后的用户id,最后需要统计这一行为在某一时段触发的人数、次数、人均次数、活跃比等。

    (2)多维性

    数据更重要的是能满足分析需求。灵活、快速自定义数据的多种属性和不同类型,从而满足不同的分析目标。

    比如“查看商品详情”这一行为,通过埋点,我们才能知道用户查看的商品是什么、价格、类型、商品id等多个属性。从而知道用户看过哪些商品、什么类型的商品被查看的多、某一个商品被查看了多少次。而不仅仅是知道用户进入了商品详情页。

    (3)高效性

    高效性包含技术执行的高效性、团队内部成员协同的高效性以及数据分析需求和目标实现的高效性。也就是说采集数据一定要明确采集目的,带着问题搜集信息,使信息采集更高效、更有针对性。此外,还要考虑数据的及时性。

    不同应用领域的大数据其特点、数据量、用户群体均不相同。不同领域根据数据源的物理性质及数据分析的目标采取不同的数据采集方法。

    那么,接下来我们再来了解一下常用的数据采集的方法。

    常用的数据采集方法归结为以下三类:传感器、日志文件、网络爬虫。

    (1)传感器

    传感器通常用于测量物理变量,一般包括声音、温湿度、距离、电流等,将测量值转化为数字信号,传送到数据采集点,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。

    (2)系统日志采集方法

    日志文件数据一般由数据源系统产生,用于记录数据源的执行的各种操作活动,比如网络监控的流量管理、金融应用的股票记账和 web 服务器记录的用户访问行为。

    很多互联网企业都有自己的海量数据采集工具,多用于系统日志采集,如Hadoop的Chukwa,Cloudera的Flume,Facebook的Scribe等,这些工具均采用分布式架构,能满足每秒数百MB的日志数据采集和传输需求。

    (3)Web 爬虫

    网络爬虫是指为搜索引擎下载并存储网页的程序,它是搜索引擎和 web 缓存的主要的数据采集方式。通过网络爬虫或网站公开API等方式从网站上获取数据信息。该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音频、视频等文件或附件的采集,附件与正文可以自动关联。

    此外,对于企业生产经营数据上的客户数据,财务数据等保密性要求较高的数据,可以通过与数据技术服务商合作,使用特定系统接口等相关方式采集数据。比如八度云计算的数企BDSaaS,无论是数据采集技术、BI数据分析,还是数据的安全性和保密性,都做的很好。

    数据的采集是挖掘数据价值的第一步,当数据量越来越大时,可提取出来的有用数据必然也就更多。只要善用数据化处理平台,便能够保证数据分析结果的有效性,助力企业实现数据驱动。

大数据采集的方法

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP