中企动力 > 商学院 > 大数据采集工具
  • ?

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

    闵葵阴

    展开

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

    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很快会开发出更好的数据收集的解决方案。

  • ?

    QQ数据采集软件-QQ营销必备

    程夏菡

    展开

    QQ数据采集器-QQ营销必备工具

    导语

    现在是大数据时代,无论做什么营销都需要用到数据。数据是根本,数据能引导你的营销思维。做QQ营销同样需要大量的精准数据,今天小编为大家介绍一款QQ数据采集软件,这款软件既可以采集精准客户QQ,同时也可以采集精准客户QQ群以及QQ群成员。

    软件功能特点

    ⊙支持按关键词采集精准客户qq

    ⊙支持自动检测所采集好友是否为单双向好友

    ⊙支持自动检测所采集qq是否开通临时会话功能

    ⊙支持自动识别qq所在城市、性别。年龄

    ⊙支持按关键词采集精准客户qq群

    ⊙支持自动筛选出群主qq

    ⊙支持自动检测是否可以直接添加qq群

    ⊙支持以文本文档格式导出qq群

    ⊙支持采集qq附近的人(全国定位)

    ⊙支持采集本地好友和群

    ⊙支持采集空间qq

    ⊙支持采集微博听众

    ⊙支持采集企业qq

    ⊙支持论坛qq采集

    软件功能效果展示

    易推客营销软件

  • ?

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

    Victor

    展开

    对于大数据的理解

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

    其实不然

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

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

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

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

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

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

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

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

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

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

    打通数据库实现技术共享

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

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

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

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

    更加人性化的服务

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

  • ?

    干货!最全、最好用的大数据工具都在这了

    邵二娘

    展开

    大数据日益成为研究行业的重要研究目标,面对其高数据量、多维度与异构化的特点,以及分析方法思路的扩展,传统统计工具已经难以应对。工欲善其事,必先利其器。众多新的软件分析工具作为深入大数据洞察研究的重要助力,也成为数据科学家所必须掌握的知识技能。

    为了帮你节省时间并且让你第一次使用就能挑选出正确的工具,我们搜集和整理了数据提取、数据存储、数据清洗、数据挖掘、数据分析和数据集成方面的我们最爱用的工具。

    传统数据分析所用工具

    1、Excel作为电子表格软件,适合简单统计(分组/求和等)需求,由于其方便好用,功能也能满足很多场景需要,所以实际成为研究人员最常用的软件工具。其缺点在于功能单一,且可处理数据规模小。这两年Excel在大数据方面(如地理可视化和网络关系分析)上也作出了一些增强,但应用能力有限。

    2、SPSS(SPSS Statistics)和SAS作为商业统计软件,提供研究常用的经典统计分析(如回归、方差、因子、多变量分析等)处理。SPSS轻量、易于使用,但功能相对较少,适合常规基本统计分析

    3、SAS功能丰富而强大(包括绘图能力),且支持编程扩展其分析能力,适合复杂与高要求的统计性分析。

    数据存储和管理所用工具

    Hadoop现在几乎已经等同于大数据。它是存储在计算机集群中的超大数据集的一个开源的分布式的基础架构。你可以随意增大或减小你的数据量而不用担心硬件故障。Hadoop提供了对任何种类的海量数据的存储、强大的处理能力和几乎无限的并行工作能力。

    Hadoop并不适合数据初学者。要想充分发挥Hadoop的能力,你需要了解Java。学习Java可能耗时,但是Hadoop绝对值得你付出,因为大量的公司和技术都依赖于它甚至和它融为了一体。

    数据清洗所用工具

    在你进行数据挖掘之前,应该先对你的数据进行清洗。OpenRefine现在是一款用来专门清洗混乱数据的开源工具。从而使你能够轻松和快速的探索有一定程度非结构化的大数据集。

    数据挖掘所用工具

    数据挖掘作为大数据应用的重要领域,在传统统计分析基础上,更强调提供机器学习的方法,关注高维空间下复杂数据关联关系和推演能力。代表是SPSS Modeler,SPSS Modeler的统计功能相对有限,主要是提供面向商业挖掘的机器学习算法(决策树、神经元网络、分类、聚类和预测等)的实现。同时,其数据预处理和结果辅助分析方面也相当方便,这一点尤其适合商业环境下的快速挖掘。不过就处理能力而言,实际感觉难以应对亿级以上的数据规模。

    大数据常用的编程语言

    1、R语言是用来进行统计分析和绘图的一种语言。如果上述的数据挖掘和统计软件无法满足你的需求的话,那么R语言一定会有所帮助。实际上如果你要成为一个数据科学家,了解R语言是一项必备技能。

    2、Python语言——最大的优势是在文本处理以及大数据量处理场景,且易于开发。在相关分析领域,Python代替R的势头越来越明显。

    在你的数据生涯中学会单一工具很难一招鲜吃遍天。现在的工具虽然使用起来越来越简便,功能也越来越强大,但是有的时候还是自己编程更好一些。即使你不是一个专业程序员,理解这些语言的基本工作原理对诸多的工具的运行和使用方法的理解也是大有裨益。此外西线学院建议,数据分析员要发挥自身对业务的深入理解,从数据结果中洞察发现有深度的结果,这才是最有价值的。

  • ?

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

    Sandra

    展开

    做网络营销

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

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

    其实原因有很多

    一、想要做好网络营销

    客户是王道

    没有强大的客户群做后盾

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

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

    如云速数据挖掘

    通过输入行业关键字

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

    省时高效

    二、通过客户信息

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

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

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

    从而完成营销活动

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

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

    才能使转化率达到最佳

  • ?

    浅谈:大数据的可怕,以及对大数据进行搜集的爬虫工具!

    期待

    展开

    什么是网络爬虫

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

    爬虫并不追求大的覆盖,而将目标定为抓取与某一特定主题内容相关的网页,为面向主题的用户查询准备数据资源。

    小编记得有一个知名的网站号称最强大的“黑暗”搜索引擎工具Shodan,互联网上最可怕的搜索引擎!小编的确进去看过,搜索TP-LINK后,出现了大量的路由器,我点击任何一个所有信息都是可以看到的,包括国家,主机名等等,有兴趣的大家可以去官网上看看

    在如今这个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据就是这个高科技时代的产物,而面临的问题就是大数据隐私

    你或许并不敏感,当你在不同的网站上注册了个人信息后,可能这些信息已经被扩散出去了,当你莫名其妙的接到各种邮件,电话,短信的滋扰时,你不会想到自己的电话号码,邮箱,生日,购买记录,收入水平,家庭住址,亲朋好友等私人信息早就被各种商业机构非法存储或贱卖给其它任何有需要的企业或个人了。

    更可怕的是,这些信息你永远无法删除,它们永远存在于互联网的某些你不知道的角落。除非你更换掉自己的所有信息,但是这代价太大了。

    而我认为手握大数据还应该有大数据的思维,才能更好的利用!好的用途有:

    大数据帮助政府实现市场经济调控、公共卫生安全防范、灾难预警、社会舆论监督;

    大数据帮助城市预防犯罪,实现智慧交通,提升紧急应急能力;

    大数据帮助医疗机构建立患者的疾病风险跟踪机制,帮助医药企业提升药品的临床使用效果,帮助艾滋病研究机构为患者提供定制的药物;

    大数据帮助航空公司节省运营成本,帮助电信企业实现售后服务质量提升,帮助保险企业识别欺诈骗保行为,帮助快递公司监测分析运输车辆的故障险情以提前预警维修,帮助电力公司有效识别预警即将发生故障的设备;

    大数据帮助电商公司向用户推荐商品和服务,帮助旅游网站为旅游者提供心仪的旅游路线,帮助二手市场的买卖双方找到最合适的交易目标,帮助用户找到最合适的商品购买时期、商家和最优惠价格;

    大数据帮助企业提升营销的针对性,降低物流和库存的成本,减少投资的风险,以及帮助企业提升广告投放精准度;

    大数据帮助娱乐行业预测歌手,歌曲,电影,电视剧的受欢迎程度,并为投资者分析评估拍一部电影需要投入多少钱才最合适,否则就有可能收不回成本;等等

    今天在知乎上看到了一个帖子,分享给大家,不知大家看完有何感想

    我们今天浅谈了一下大数据,希望不了解的朋友看一下,第二个方面今天我们不做程序员,教你如何进行简单的爬虫,将自己需要的大数据进行搜集,分享几个的小白上手易操作爬虫软件,感兴趣的可以试一下。

    第一个:八爪鱼 大数据

    第二个极搜客 这两个都是有免费的

    第三个 熊猫采集 这个大家可以试用一下,并不是免费的

    其他的比较专业的有Arachnid、EX-Crawlere、HerDy等等

    好了,今天的文章到此结束了,希望能帮助到大家,对爬虫有兴趣的朋友可以试试我分享的这三款软件,个人认为极搜客还是蛮不错的,谢谢大家看我的文章,知数码行天下每天不断更新新的文章!

  • ?

    国内五大主流网站内容抓取工具、采集软件大盘点

    濮真

    展开

    大数据技术用了多年时间进行演化,才从一种看起来很炫酷的新技术变成了企业在生产经营中实际部署的服务。其中,数据采集产品迎来了广阔的市场前景,无论国内外,市面上都出现了许多技术不一、良莠不齐的采集软件。

    今天,我们将对比国内五大主流采集软件优缺点,帮助你选择最适合的爬虫,体验数据hunting带来的快感。

    国内篇

    1.火车头

    作为采集界的老前辈,我们火车头是一款互联网数据抓取、处理、分析,挖掘软件,可以抓取网页上散乱分布的数据信息,并通过一系列的分析处理,准确挖掘出所需数据。它的用户定位主要是拥有一定代码基础的人群,适合编程老手。

    采集功能完善,不限网页与内容,任意文件格式都可下载具有智能多识别系统以及可选的验证方式保护安全支持PHP和C#插件扩展,方便修改处理数据具有同义,近义词替换、参数替换,伪原创必备技能Conclusion:火车头适用于编程能手,规则编写容易,软件的定位比较专业而且精准化。

    2.八爪鱼

    一款可视化免编程的网页采集软件,可以从不同网站中快速提取规范化数据,帮助用户实现数据的自动化采集、编辑以及规范化,降低工作成本。云采集是它的一大特色,相比其他采集软件,云采集能够做到更加精准、高效和大规模。

    自定义采集过程中,八爪鱼采集器系统自写的Xpath、自动生成的流程,可能无法满足数据采集需求。对数据质量要求高,则需自写Xpath,调成流程图等,以优化规则。

    使用自定义采集的同学,虽然八爪鱼操作简单,比较容易上手。但是,仍需对八爪鱼采集原理有所了解,看完相关教程,循序渐进,成长周期较长。

    可视化操作,无需编写代码,制作规则采集,适用于零编程基础的用户云采集是其主要功能,支持关机采集,并实现自动定时采集

    Conclusion:八爪鱼是一款适合小白用户尝试的采集软件,云功能强大,当然爬虫老手也能开拓它的高级功能。

    3.集搜客

    一款简单易用的网页信息抓取软件,能够抓取网页文字、图表、超链接等多种网页元素。同样可通过简单可视化流程进行采集,服务于任何对数据有采集需求的人群。

    可视化流程操作,与八爪鱼不同,集搜客的流程重在定义所抓取的数据和爬虫路线,八爪鱼的规则流程十分明确,由用户决定软件的每一步操作

    支持抓取在指数图表上悬浮显示的数据,还可以抓取手机网站上的数据

    会员可以互助抓取,提升采集效率,同时还有模板资源可以套用

    Conclusion:集搜客操作较简单,适用于初级用户,功能方面没有太大的特色,后续付费要求比较多。

    4.神箭手云爬虫

    一款新颖的云端在线智能爬虫/采集器,基于神箭手分布式云爬虫框架,帮助用户快速获取大量规范化的网页数据。

    直接接入代理IP,避免IP封锁

    自动登录验证码识别,网站自动完成验证码输入

    可在线生成图标,采集结果以丰富表格化形式展现本地化隐私保护,云端采集,可隐藏用户IP

    Conclusion: 神箭手类似一个爬虫系统框架,具体采集还需用户自写爬虫,需要代码基础。

    5.狂人采集器

    一套专业的网站内容采集软件,支持各类论坛的帖子和回复采集,网站和博客文章内容抓取,分论坛采集器、CMS采集器和博客采集器三类。

    支持对文章内容中的文字、链接批量替换和过滤可以同时向网站或论坛的多个版块一起批量发文具备采集或发帖任务完成后自动关机功能

    Conclusion: 专注论坛、博客文本内容的抓取,对于全网数据的采集通用性不高。

    注:给火车采集器的新手们一点学习建议

    火车采集器是一个非常专业的数据抓取和数据处理软件,对软件使用者有较高的技术要求, 使用者要有基本的HTML基础,能看得懂网页源码,网页结构。

    同时如果用到web发布或数据库发布,则对自己文章系统及数据存储结构要非常了解。

  • ?

    全球100款大数据工具汇总

    无心

    展开

    1、 Talend Open Studio

    是第一家针对的数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商。Talend的下载量已超过200万人次,其开源软件提供了数据整合功能。其用户包括美国国际集团(AIG)、康卡斯特、电子港湾、通用电气、三星、Ticketmaster和韦里逊等企业组织。

    2、DYSON

    探码科技自主研发的DYSON智能分析系统,可以完整的实现大数据的采集、分析、处理。DYSON智能分析系统专业针对互联网数据抓取、处理、分析,挖掘。可以灵活迅速地抓取网页上散乱分布的信息,并通过强大的处理功能,准确挖掘出所需数据,是目前使用人数最多的网页采集工具.

    3、YARN

    一种新的Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,解决了旧MapReduce框架的性能瓶颈。它的基本思想是把资源管理和作业调度/监控的功能分割到单独的守护进程。

    4、Mesos

    由加州大学伯克利分校的AMPLab首先开发的一款开源群集管理软件,支持Hadoop、ElasticSearch、Spark、Storm 和Kafka等架构。对数据中心而言它就像一个单一的资源池,从物理或虚拟机器中抽离了CPU,内存,存储以及其它计算资源, 很容易建立和有效运行具备容错性和弹性的分布式系统。

    5、Datale

    由探码科技研发的一款基于Hadoop的大数据平台开发套件,RAI大数据应用平台架构。

    6、 Ambari

    作为Hadoop生态系统的一部分,提供了基于Web的直观界面,可用于配置、管理和监控Hadoop集群。目前已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeper、Sqoop和Hcatalog等。

    7、ZooKeeper

    一个分布式的应用程序协调服务,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的工具,让Hadoop集群里面的节点可以彼此协调。ZooKeeper现在已经成为了 Apache的顶级项目,为分布式系统提供了高效可靠且易于使用的协同服务。

    8、Thrift

    在2007年facebook提交Apache基金会将Thrift作为一个开源项目,对于当时的facebook来说创造thrift是为了解决facebook系统中各系统间大数据量的传输通信以及系统之间语言环境不同需要跨平台的特性。

    9、Chukwa

    监测大型分布式系统的一个开源数据采集系统。建立在HDFS/MapReduce框架之上并继承了Hadoop的可伸缩性和可靠性,可以收集来自大型分布式系统的数据,用于监控。它还包括灵活而强大的显示工具用于监控、分析结果。

    10、Lustre

    一个大规模的、安全可靠的、具备高可用性的集群文件系统,它是由SUN公司开发和维护的。该项目主要的目的就是开发下一代的集群文件系统,目前可以支持超过10000个节点,数以PB的数据存储量。

    11、HDFS

    Hadoop Distributed File System,简称HDFS,是一个分布式文件系统。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。

    12、GlusterFS

    一个集群的文件系统,支持PB级的数据量。GlusterFS 通过RDMA和TCP/IP方式将分布到不同服务器上的存储空间汇集成一个大的网络化并行文件系统。

    13、Alluxio

    前身是Tachyon,是以内存为中心的分布式文件系统,拥有高性能和容错能力,能够为集群框架(如Spark、MapReduce)提供可靠的内存级速度的文件共享服务。

    14、Ceph

    新一代开源分布式文件系统,主要目标是设计成基于POSIX的没有单点故障的分布式文件系统,提高数据的容错性并实现无缝的复制。

    15、PVFS

    一个高性能、开源的并行文件系统,主要用于并行计算环境中的应用。PVFS特别为超大数量的客户端和服务器端所设计,它的模块化设计结构可轻松的添加新的硬件和算法支持。

    16、QFS

    Quantcast File System (QFS) 是一个高性能、容错好、分布式的文件系统,用于开发支持 MapReduce处理或者需要顺序读写大文件的应用。

    17、 Logstash

    一个应用程序日志、事件的传输、处理、管理和搜索的平台。可以用它来统一对应用程序日志进行收集管理,提供了Web接口用于查询和统计。

    18、Scribe

    Scribe是Facebook开源的日志收集系统,它能够从各种日志源上收集日志,存储到一个中央存储系统(可以是NFS,分布式文件系统等)上,以便于进行集中统计分析处理。

    19、Flume

    Cloudera提供的一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输的系统。Flume支持在日志系统中定制各类数据发送方,用于收集数据。同时,Flume支持对数据进行简单处理,并写入各种数据接受方(可定制)。

    20、RabbitMQ

    一个受欢迎的消息代理系统,通常用于应用程序之间或者程序的不同组件之间通过消息来进行集成。RabbitMQ提供可靠的应用消息发送、易于使用、支持所有主流操作系统、支持大量开发者平台。

    21、ActiveMQ

    Apache出品,号称“最流行的,最强大”的开源消息集成模式服务器。ActiveMQ特点是速度快,支持多种跨语言的客户端和协议,其企业集成模式和许多先进的功能易于使用,是一个完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现。

    22、Kafka

    一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模网站中的所有动作流数据,目前已成为大数据系统在异步和分布式消息之间的最佳选择。

    23、Spark

    一个高速、通用大数据计算处理引擎。拥有Hadoop MapReduce所具有的优点,但不同的是Job的中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。它可以与Hadoop和Apache Mesos一起使用,也可以独立使用。

    24、Kinesis

    可以构建用于处理或分析流数据的自定义应用程序,来满足特定需求。Amazon Kinesis Streams 每小时可从数十万种来源中连续捕获和存储数TB数据,如网站点击流、财务交易、社交媒体源、IT日志和定位追踪事件。

    25、 Hadoop

    一个开源框架,适合运行在通用硬件,支持用简单程序模型分布式处理跨集群大数据集,支持从单一服务器到上千服务器的水平scale up。Apache的Hadoop项目已几乎与大数据划上了等号,它不断壮大起来,已成为一个完整的生态系统,拥有众多开源工具面向高度扩展的分布式计算。高效、可靠、可伸缩,能够为你的数据存储项目提供所需的YARN、HDFS和基础架构,并且运行主要的大数据服务和应用程序。

    26、Spark Streaming

    实现微批处理,目标是很方便的建立可扩展、容错的流应用,支持Java、Scala和Python,和Spark无缝集成。Spark Streaming可以读取数据HDFS,Flume,Kafka,Twitter和ZeroMQ,也可以读取自定义数据。

    27、Trident

    是对Storm的更高一层的抽象,除了提供一套简单易用的流数据处理API之外,它以batch(一组tuples)为单位进行处理,这样一来,可以使得一些处理更简单和高效。

    28、Flink

    于今年跻身Apache顶级开源项目,与HDFS完全兼容。Flink提供了基于Java和Scala的API,是一个高效、分布式的通用大数据分析引擎。更主要的是,Flink支持增量迭代计算,使得系统可以快速地处理数据密集型、迭代的任务。

    29、Samza

    出自于LinkedIn,构建在Kafka之上的分布式流计算框架,是Apache顶级开源项目。可直接利用Kafka和Hadoop YARN提供容错、进程隔离以及安全、资源管理。

    30、Storm

    Storm是Twitter开源的一个类似于Hadoop的实时数据处理框架。编程模型简单,显著地降低了实时处理的难度,也是当下最人气的流计算框架之一。与其他计算框架相比,Storm最大的优点是毫秒级低延时。

    31、Yahoo S4 (Simple Scalable Streaming System)

    是一个分布式流计算平台,具备通用、分布式、可扩展的、容错、可插拔等特点。程序员可以很容易地开发处理连续无边界数据流(continuous unbounded streams of data)的应用。它的目标是填补复杂专有系统和面向批处理开源产品之间的空白,并提供高性能计算平台来解决并发处理系统的复杂度。

    32、HaLoop

    是一个Hadoop MapReduce框架的修改版本,其目标是为了高效支持 迭代,递归数据 分析任务,如PageRank,HITs,K-means,sssp等。

    33、Presto

    是一个开源的分布式SQL查询引擎,适用于交互式分析查询,可对250PB以上的数据进行快速地交互式分析。Presto的设计和编写是为了解决像Facebook这样规模的商业数据仓库的交互式分析和处理速度的问题。Facebook称Presto的性能比诸如Hive和MapReduce要好上10倍有多。

    34、 Drill

    于2012年8月份由Apache推出,让用户可以使用基于SQL的查询,查询Hadoop、NoSQL数据库和云存储服务。它能够运行在上千个节点的服务器集群上,且能在几秒内处理PB级或者万亿条的数据记录。它可用于数据挖掘和即席查询,支持一系列广泛的数据库,包括HBase、MongoDB、MapR-DB、HDFS、MapR-FS、亚马逊S3、Azure Blob Storage、谷歌云存储和Swift。

    35、Phoenix

    是一个Java中间层,可以让开发者在Apache HBase上执行SQL查询。Phoenix完全使用Java编写,并且提供了一个客户端可嵌入的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase scan,并编排执行以生成标准的JDBC结果集。

    36、Pig

    是一种编程语言,它简化了Hadoop常见的工作任务。Pig可加载数据、转换数据以及存储最终结果。Pig最大的作用就是为MapReduce框架实现了一套shell脚本 ,类似我们通常熟悉的SQL语句。

    37、Hive

    是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

    38、SparkSQL

    前身是Shark,SparkSQL抛弃原有Shark的代码并汲取了一些优点,如内存列存储(In-Memory Columnar Storage)、Hive兼容性等。由于摆脱了对Hive的依赖性,SparkSQL无论在数据兼容、性能优化、组件扩展方面都得到了极大的方便。

    39、Stinger

    原来叫Tez,是下一代Hive,由Hortonworks主导开发,运行在YARN上的DAG计算框架。某些测试下,Stinger能提升10倍左右的性能,同时会让Hive支持更多的SQL。

    40、Tajo

    目的是在HDFS之上构建一个可靠的、支持关系型数据的分布式数据仓库系统,它的重点是提供低延迟、可扩展的ad-hoc查询和在线数据聚集,以及为更传统的ETL提供工具。

    41、Impala

    Cloudera 声称,基于SQL的Impala数据库是“面向Apache Hadoop的领先的开源分析数据库”。它可以作为一款独立产品来下载,又是Cloudera的商业大数据产品的一部分。Cloudera Impala 可以直接为存储在HDFS或HBase中的Hadoop数据提供快速、交互式的SQL查询。

    42、 Elasticsearch

    是一个基于Lucene的搜索服务器。它提供了一个分布式、支持多用户的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索、稳定、可靠、快速、安装使用方便。

    43、Solr

    基于Apache Lucene,是一种高度可靠、高度扩展的企业搜索平台。知名用户包括eHarmony、西尔斯、StubHub、Zappos、百思买、AT&T、Instagram、Netflix、彭博社和Travelocity。

    44、Shark

    即Hive on Spark,本质上是通过Hive的HQL解析,把HQL翻译成Spark上的RDD操作,然后通过Hive的metadata获取数据库里的表信息,实际HDFS上的数据和文件,会由Shark获取并放到Spark上运算。Shark的特点就是快,完全兼容Hive,且可以在shell模式下使用rdd2sql()这样的API,把HQL得到的结果集,继续在scala环境下运算,支持自己编写简单的机器学习或简单分析处理函数,对HQL结果进一步分析计算。

    45、Lucene

    基于Java的Lucene可以非常迅速地执行全文搜索。据官方网站声称,它在现代硬件上每小时能够检索超过150GB的数据,它拥有强大而高效的搜索算法。

    46、Terracotta

    声称其BigMemory技术是“世界上首屈一指的内存中数据管理平台”,支持简单、可扩展、实时消息,声称在190个国家拥有210万开发人员,全球1000家企业部署了其软件。

    47、 Ignite

    是一种高性能、整合式、分布式的内存中平台,可用于对大规模数据集执行实时计算和处理,速度比传统的基于磁盘的技术或闪存技术高出好几个数量级。该平台包括数据网格、计算网格、服务网格、流媒体、Hadoop加速、高级集群、文件系统、消息传递、事件和数据结构等功能。

    48、GemFire

    Pivotal宣布它将开放其大数据套件关键组件的源代码,其中包括GemFire内存中NoSQL数据库。它已向Apache软件基金会递交了一项提案,以便在“Geode”的名下管理GemFire数据库的核心引擎。

    49、 GridGain

    由Apache Ignite驱动的GridGrain提供内存中数据结构,用于迅速处理大数据,还提供基于同一技术的Hadoop加速器。

    50、MongoDB

    是一个基于分布式文件存储的数据库。由C++...

  • ?

    2018年最值得推荐的6款大数据采集工具

    宫海冬

    展开

    数据肯定是无价的。但分析数据并非易事,因为结果越准确,成本就越高。鉴于数据急剧增长,需要一个过程来提供有意义的信息,最终变成实用的洞察力。

    数据挖掘是指这个过程:在庞大数据集当中发现模式,将它转换成有效的信息。该技术利用特定的算法、统计分析、人工智能和数据库系统,从庞大数据集中提取信息,并转换成易于理解的形式。本文介绍了广泛用于大数据行业的6种综合数据挖掘工具。

    1. Rapid Miner

    Rapid Miner是一个数据科学软件平台,为数据准备、机器学习、深度学习、文本挖掘和预测分析提供一种集成环境。它是领先的数据挖掘开源系统之一。

    该程序完全用Java编程语言编写。该程序提供了一个选项,以便用户试用大量可任意嵌套的操作符,这些操作符在XML文件中有详细说明,可由Rapid Miner的图形用户界面来构建。

    2. Oracle Data Mining

    它是Oracle高级分析数据库的代表。市场领先的公司用它最大限度地发掘数据的潜力,做出准确的预测。该系统配合强大的数据算法,锁定最佳客户。

    此外,它可识别异常情况和交叉销售机会,让用户能够根据需要运用不同的预测模型。此外,它以所需的方式定制客户画像。

    3. IBM SPSS Modeler

    说到大规模项目,IBM SPSS Modeler最适合。在这个建模器中,文本分析及其最先进的可视化界面极具价值。它有助于生成数据挖掘算法,基本上不需要编程。

    它可广泛用于异常检测、贝叶斯网络、CARMA、Cox回归以及使用多层感知器和反向传播学习的基本神经网络。

    4. KNIME

    Konstanz Information Miner是一个开源数据分析平台。你可以迅速在其中部署、扩展和熟悉数据。在商业智能界,KNIME号称是有助于为毫无经验的用户提供预测智能的平台。

    此外,数据驱动的创新系统有助于发掘数据潜力。此外,它包括数千个模块和随时可用的示例以及一大批集成的工具和算法。

    5. Python

    Python是一种免费的开源语言,因易用性常常与R相提并论。与R不同,Python学起来往往很容易上手,易于使用。许多用户发现可以在几分钟内开始构建数据,并进行极其复杂的亲和度分析。

    只要你熟悉变量、数据类型、函数、条件语句和循环等基本编程概念,最常见的业务用例数据可视化就很简单。

    6.火车采集器

    火车采集器由合肥乐维信息技术有限公司开发,是一款专业的网络数据采集/信息挖掘处理软件,通过灵活的配置,可以很轻松迅速地从网页上抓取结构化的文本、图片、文件等资源信息,可编辑筛选处理后选择发布到网站后台,各类文件或其他数据库系统中。

  • ?

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

    庞向露

    展开

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

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

    更不知道大数据有甚卵用

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

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

    一番百度了之后

    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