中企动力 > 商学院 > 大数据下载
  • ?

    8个公开大数据网站推荐,帮数据收集的新手入门!

    马越彬

    展开

    如果您对传统企业互联网转型、大数据、工业4.0等内容的文章、资料、PPT等感兴趣(有提供下载哦~),欢迎关注强企阅闻公众号。

    来源/钱塘大数据

    在这个用数据说话的时代,能够打动人的往往是用数据说话的理性分析,无论是对于混迹职场的小年轻,还是需要数据进行分析和研究的同学,能够找到合适的数据源都是非常重要的。特别是想要对一个新的领域进行研究和探索,拥有这个领域的数据那都是有十分重要的意义的。

    1.- 国家数据 -

    http://data.stats.gov/index.htm

    数据来源于中国国家统计局,包含了我国经济民生等多个方面的数据,并且在月度、季度、年度都有覆盖,较为全面和权威,对于社会科学的研究不要太有帮助。最关键的是,网站简洁美观,还有专门的可视化读物。

    2.- CEIC -

    http://ceicdata/zh-hans

    最完整的一套超过128个国家的经济数据,能够精确查找GDP, CPI, 进口,出口,外资直接投资,零售,销售,以及国际利率等深度数据。其中的“中国经济数据库”收编了300,000多条时间序列数据,数据内容涵盖宏观经济数据、行业经济数据和地区经济数据。

    3.- wind(万得)-

    http://wind/

    万得被誉为中国的Bloomberg,在金融业有着全面的数据覆盖,金融数据的类目更新非常快,据说很受国内的商业分析者和投资人的亲睐。

    4.- 搜数网 -

    http://soshoo/

    已加载到搜数网站的统计资料达到7,874本,涵盖1,761,009张统计表格和364,580,479个统计数据,汇集了中国资讯行自92年以来收集的所有统计和调查数据,并提供多样化的搜索功能。

    5.- 中国统计信息网 -

    http://tjcn.org/

    国家统计局的官方网站,汇集了海量的全国各级政府各年度的国民经济和社会发展统计信息,建立了以统计公报为主,统计年鉴、阶段发展数据、统计分析、经济新闻、主要统计指标排行等。

    6.- 亚马逊aws -

    http://aws.amazon/cn/datasets/?nc1=h_ls

    来自亚马逊的跨科学云数据平台,包含化学、生物、经济等多个领域的数据集。

    7.- figshare -

    https://figshare/

    研究成果共享平台,在这里你会发现来自世界的大牛们的研究成果分享,同时get其中的研究数据,内容很有启发性,网站颇具设计感。

    8.- github -

    https://github/caesar0301/awesome-public-datasets

    如果觉得前面的数据源还不够,github上的大神已经为大家整理好了一个非常全面的数据获取渠道,包含各个细分领域的数据库资源,自然科学和社会科学的覆盖都很全面,简直是做研究和数据分析的利器。

    随便上几个图,满满的都是资源啊

    免责声明:本公众号所载文章为本公众号原创或根据网络搜集编辑整理,文章版权归原作者所有。如涉及作品内容、版权和其他问题,请与我们联系! 文章内容为作者独立观点 ,并不代表兮易强企赞同或支持其观点。

  • ?

    大数据下,一丝不挂!

    盼秋

    展开

    “这是最好的时代,这是最坏的时代。”一百年前狄更斯说过的这句话,似乎在互联网时代的今天依然有极大的现实意义。


    尤其是在移动互联网时代,我们出行可以在手机上网约车,吃饭可以在手机上叫外卖,看书可以在手机上下载阅读软件,哪怕单身没对象,也可以花不到一分钟的时间,下载个相亲软件,不到半天就能认识一打异性。


    名人明星信息泄露换汤不换药


    任何事情发展得过了,都是物极必反,互联网便捷的背后却藏着令人忧心的现实。无论是刚刚过去的希拉里的邮件门,亦或是朴槿惠的闺蜜干政,甚至是更远一点的卡戴珊因为在网上炫耀钻戒,而遭遇盗贼偷窃。


    这些事情,人类历史上一定发生过很多次,因为事情的本质无非就是政客丑闻曝光、有钱人露富被盗贼盯上。历史虽然是重复的,但手段往往是翻新的。互联网普及以来,政治名人和明星隐私的暴露大都是乘着互联网的“东风”。


    跟全世界网民联系最多的两大互联网公司谷歌和Facebook,都曾因为泄露用户数据惹上过官司。


    以谷歌为例,这家全世界很多有志青年都想加入的工作目的地,早在2004年就因为Gmail被指扫描用户信息而遭到起诉。


    而后来在谷歌不断扩大规模的过程中,谷歌一直都是法庭上的常见客。



    曾经,谷歌给用户带带来了很大的便利,我们免费使用它的地图、网盘,然而这真的是免费的吗?


    一方面谷歌是真的想给大众提供有用便捷的科技,另一方面谷歌要靠这些“免费”来吸引用户透露更多的资料信息,最终谷歌可以用更高的价格进行贩卖。


    当然,并不是只有谷歌一家公司在这样做,国内外很多互联网公司都是这样做的。


    我们的信息全天候24小时在泄露


    Facebook这家全球最大的社群网络,毫无疑问他的成功就是因为用户们在Facebook上前所未有地“分享”着自己,大到支持哪个总统,小到今天早餐吃了啥。而今年的美国大选,候选人在拉选票时,就充分运用了这一点,来寻找支持自己的选民,从而“精准”地投广告。


    从国外的谷歌和Facebook,到国内的互联网巨头们,很难说我们的信息不曾被他们搜集。


    笔者前几天在某旅游网站搜索了北京到南阳的机票,当时看了看并没有下单,而后连续两天,打开浏览器页面,都有关于“北京到南阳机票”的促销信息。


    相信大家可能也遇到类似经历,比如,在网店浏览了雪地靴,接下来的几天可能都会有雪地靴的弹框出来。


    有时还会收到垃圾邮件、垃圾信息,尽管手机可以设置拦截,可是信息有时还是会储存在手机里。笔者每天最少会收到2条,最多10余条左右的垃圾信息,不是电商购物信息,就是运营商和银行发来的促销信息。


    笔者曾经因为求职注册了某招聘网站,后来在都入职新工作一个月后,依然能收到至少3家招聘公司的群发招聘信息,按照短信提示回复“T”都没有用,后来不得不拉黑。那这些招聘公司从哪里知道信息呢?答案不言而喻。


    这些年有学者提出生活安宁权,就是作为自然人,有维持安稳宁静的私人生活状态,并排除他人不法侵扰的具体人格权。这么一想,生活中几乎很多人的生活安宁权都或多或少被侵犯过。


    总体来讲,大数据时代,网民最容易被侵犯的就是隐私权和生活安宁权。而以隐私权被侵犯占据数量最多。


  • ?

    大数据构架师从入门到精通学习必看宝典

    宇文绮

    展开

    经常有初学者在博客和QQ问我,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高。如果自己很迷茫,为了这些原因想往大数据方向发展,也可以,那么我就想问一下,你的专业是什么,对于计算机/软件,你的兴趣是什么?是计算机专业,对操作系统、硬件、网络、服务器感兴趣?是软件专业,对软件开发、编程、写代码感兴趣?还是数学、统计学专业,对数据和数字特别感兴趣。

    其实这就是想告诉你的大数据的三个发展方向,平台搭建/优化/运维/监控、大数据开发/ 设计/ 架构、数据分析/挖掘。请不要问我哪个容易,哪个前景好,哪个钱多。

    分享之前我还是要推荐下我自己创建的大数据学习交流Qun531629188无论是大牛还是想转行想学习的大学生小编我都挺欢迎,今天的已经资讯上传到群文件,不定期分享干货,包括我自己整理的一份最新的适合2018年学习的大数据教程,欢迎初学和进阶中的小伙伴。

    先扯一下大数据的4V特征:

    数据量大,TB->PB

    数据类型繁多,结构化、非结构化文本、日志、视频、图片、地理位置等;

    商业价值高,但是这种价值需要在海量数据之上,通过数据分析与机器学习更快速的挖掘出来;

    处理时效性高,海量数据的处理需求不再局限在离线计算当中。

    现如今,正式为了应对大数据的这几个特点,开源的大数据框架越来越多,越来越强,先列举一些常见的:

    文件存储:Hadoop HDFS、Tachyon、KFS

    离线计算:Hadoop MapReduce、Spark

    流式、实时计算:Storm、Spark Streaming、S4、Heron

    K-V、NOSQL数据库:HBase、Redis、MongoDB

    资源管理:YARN、Mesos

    日志收集:Flume、Scribe、Logstash、Kibana

    消息系统:Kafka、StormMQ、ZeroMQ、RabbitMQ

    查询分析:Hive、Impala、Pig、Presto、Phoenix、SparkSQL、Drill、Flink、Kylin、Druid

    分布式协调服务:Zookeeper

    集群管理与监控:Ambari、Ganglia、Nagios、Cloudera Manager

    数据挖掘、机器学习:Mahout、Spark MLLib

    数据同步:Sqoop

    任务调度:Oozie

    眼花了吧,上面的有30多种吧,别说精通了,全部都会使用的,估计也没几个。就我个人而言,主要经验是在第二个方向(开发/设计/架构),且听听我的建议吧。

    第一章:初识Hadoop

    1.1 学会百度与Google

    不论遇到什么问题,先试试搜索并自己解决。Google首选,翻不过去的,就用百度吧。

    1.2 参考资料首选官方文档

    特别是对于入门来说,官方文档永远是首选文档。相信搞这块的大多是文化人,英文凑合就行,实在看不下去的,请参考第一步。

    1.3 先让Hadoop跑起来

    Hadoop可以算是大数据存储和计算的开山鼻祖,现在大多开源的大数据框架都依赖Hadoop或者与它能很好的兼容。

    关于Hadoop,你至少需要搞清楚以下是什么:

    Hadoop 1.0、Hadoop 2.0

    MapReduce、HDFS

    NameNode、DataNode

    JobTracker、TaskTracker

    Yarn、ResourceManager、NodeManager

    自己搭建Hadoop,请使用第一步和第二步,能让它跑起来就行。建议先使用安装包命令行安装,不要使用管理工具安装。另外:Hadoop1.0知道它就行了,现在都用Hadoop 2.0.

    1.4 试试使用Hadoop

    HDFS目录操作命令;上传、下载文件命令;提交运行MapReduce示例程序;打开Hadoop WEB界面,查看Job运行状态,查看Job运行日志。知道Hadoop的系统日志在哪里。

    1.5 你该了解它们的原理了

    MapReduce:如何分而治之;HDFS:数据到底在哪里,什么是副本;

    Yarn到底是什么,它能干什么;NameNode到底在干些什么;Resource Manager到底在干些什么;

    1.6 自己写一个MapReduce程序

    请仿照WordCount例子,自己写一个(照抄也行)WordCount程序,

    打包并提交到Hadoop运行。你不会Java?Shell、Python都可以,有个东西叫Hadoop Streaming。如果你认真完成了以上几步,恭喜你,你的一只脚已经进来了。

    第二章:更高效的WordCount

    2.1 学点SQL吧

    你知道数据库吗?你会写SQL吗?如果不会,请学点SQL吧。

    2.2 SQL版WordCount

    在1.6中,你写(或者抄)的WordCount一共有几行代码?给你看看我的:

    SELECT word,COUNT(1) FROM wordcount GROUP BY word;

    这便是SQL的魅力,编程需要几十行,甚至上百行代码,我这一句就搞定;使用SQL处理分析Hadoop上的数据,方便、高效、易上手、更是趋势。不论是离线计算还是实时计算,越来越多的大数据处理框架都在积极提供SQL接口。

    2.3 SQL On Hadoop之Hive

    什么是Hive?官方给的解释如下:The Apache Hive data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage and queried using SQL syntax.

    为什么说Hive是数据仓库工具,而不是数据库工具呢?有的朋友可能不知道数据仓库,数据仓库是逻辑上的概念,底层使用的是数据库,数据仓库中的数据有这两个特点:最全的历史数据(海量)、相对稳定的;所谓相对稳定,指的是数据仓库不同于业务系统数据库,数据经常会被更新,数据一旦进入数据仓库,很少会被更新和删除,只会被大量查询。而Hive,也是具备这两个特点,因此,Hive适合做海量数据的数据仓库工具,而不是数据库工具。

    2.4 安装配置Hive

    请参考1.1 和 1.2 完成Hive的安装配置。可以正常进入Hive命令行。

    2.5 试试使用Hive

    请参考1.1 和 1.2 ,在Hive中创建wordcount表,并运行2.2中的SQL语句。

    在Hadoop WEB界面中找到刚才运行的SQL任务。看SQL查询结果是否和1.4中MapReduce中的结果一致。

    2.6 Hive是怎么工作的

    明明写的是SQL,为什么Hadoop WEB界面中看到的是MapReduce任务?

    2.7 学会Hive的基本命令

    创建、删除表;加载数据到表;下载Hive表的数据;请参考1.2,学习更多关于Hive的语法和命令。

    如果你已经按照《写给大数据开发初学者的话》中第一章和第二章的流程认真完整的走了一遍,那么你应该已经具备以下技能和知识点:

    MapReduce的原理(还是那个经典的题目,一个10G大小的文件,给定1G大小的内存,如何使用Java程序统计出现次数最多的10个单词及次数);

    HDFS读写数据的流程;向HDFS中PUT数据;从HDFS中下载数据;

    自己会写简单的MapReduce程序,运行出现问题,知道在哪里查看日志;

    会写简单的SELECT、WHERE、GROUP BY等SQL语句;

    Hive SQL转换成MapReduce的大致流程;

    Hive中常见的语句:创建表、删除表、往表中加载数据、分区、将表中数据下载到本地;

    从上面的学习,你已经了解到,HDFS是Hadoop提供的分布式存储框架,它可以用来存储海量数据,MapReduce是Hadoop提供的分布式计算框架,它可以用来统计和分析HDFS上的海量数据,而Hive则是SQL On Hadoop,Hive提供了SQL接口,开发人员只需要编写简单易上手的SQL语句,Hive负责把SQL翻译成MapReduce,提交运行。

    此时,你的”大数据平台”是这样的:那么问题来了,海量数据如何到HDFS上呢?

    第三章:把别处的数据搞到Hadoop上

    此处也可以叫做数据采集,把各个数据源的数据采集到Hadoop上。

    3.1 HDFS PUT命令

    这个在前面你应该已经使用过了。put命令在实际环境中也比较常用,通常配合shell、python等脚本语言来使用。建议熟练掌握。

    3.2 HDFS API

    HDFS提供了写数据的API,自己用编程语言将数据写入HDFS,put命令本身也是使用API。

    实际环境中一般自己较少编写程序使用API来写数据到HDFS,通常都是使用其他框架封装好的方法。比如:Hive中的INSERT语句,Spark中的saveAsTextfile等。建议了解原理,会写Demo。

    3.3 Sqoop

    Sqoop是一个主要用于Hadoop/Hive与传统关系型数据库,Oracle、MySQL、SQLServer等之间进行数据交换的开源框架。就像Hive把SQL翻译成MapReduce一样,Sqoop把你指定的参数翻译成MapReduce,提交到Hadoop运行,完成Hadoop与其他数据库之间的数据交换。

    自己下载和配置Sqoop(建议先使用Sqoop1,Sqoop2比较复杂)。了解Sqoop常用的配置参数和方法。

    使用Sqoop完成从MySQL同步数据到HDFS;使用Sqoop完成从MySQL同步数据到Hive表;如果后续选型确定使用Sqoop作为数据交换工具,那么建议熟练掌握,否则,了解和会用Demo即可。

    3.4 Flume

    Flume是一个分布式的海量日志采集和传输框架,因为“采集和传输框架”,所以它并不适合关系型数据库的数据采集和传输。Flume可以实时的从网络协议、消息系统、文件系统采集日志,并传输到HDFS上。

    因此,如果你的业务有这些数据源的数据,并且需要实时的采集,那么就应该考虑使用Flume。

    下载和配置Flume。使用Flume监控一个不断追加数据的文件,并将数据传输到HDFS;Flume的配置和使用较为复杂,如果你没有足够的兴趣和耐心,可以先跳过Flume。

    3.5 阿里开源的DataX

    之所以介绍这个,是因为我们公司目前使用的Hadoop与关系型数据库数据交换的工具,就是之前基于DataX开发的,非常好用。

    可以参考我的博文《异构数据源海量数据交换工具-Taobao DataX 下载和使用》。现在DataX已经是3.0版本,支持很多数据源。你也可以在其之上做二次开发。有兴趣的可以研究和使用一下,对比一下它与Sqoop。

    第四章:把Hadoop上的数据搞到别处去

    Hive和MapReduce进行分析了。那么接下来的问题是,分析完的结果如何从Hadoop上同步到其他系统和应用中去呢?其实,此处的方法和第三章基本一致的。

    4.1 HDFS GET命令

    把HDFS上的文件GET到本地。需要熟练掌握。

    4.2 HDFS API

    同3.2.

    4.3 Sqoop

    同3.3.使用Sqoop完成将HDFS上的文件同步到MySQL;使用Sqoop完成将Hive表中的数据同步到MySQL。

    4.4 DataX

    同3.5. 如果你认真完成了上面的学习和实践,此时,你的”大数据平台”应该是这样的:

    如果你已经按照《写给大数据开发初学者的话2》中第三章和第四章的流程认真完整的走了一遍,那么你应该已经具备以下技能和知识点:

    知道如何把已有的数据采集到HDFS上,包括离线采集和实时采集;你已经知道sqoop(或者还有DataX)是HDFS和其他数据源之间的数据交换工具;你已经知道flume可以用作实时的日志采集。

    从前面的学习,对于大数据平台,你已经掌握的不少的知识和技能,搭建Hadoop集群,把数据采集到Hadoop上,使用Hive和MapReduce来分析数据,把分析结果同步到其他数据源。

    接下来的问题来了,Hive使用的越来越多,你会发现很多不爽的地方,特别是速度慢,大多情况下,明明我的数据量很小,它都要申请资源,启动MapReduce来执行。

    第五章:快一点吧,我的SQL

    其实大家都已经发现Hive后台使用MapReduce作为执行引擎,实在是有点慢。因此SQL On Hadoop的框架越来越多,按我的了解,最常用的按照流行度依次为SparkSQL、Impala和Presto.这三种框架基于半内存或者全内存,提供了SQL接口来快速查询分析Hadoop上的数据。关于三者的比较,请参考1.1.

    我们目前使用的是SparkSQL,至于为什么用SparkSQL,原因大概有以下吧:使用Spark还做了其他事情,不想引入过多的框架;Impala对内存的需求太大,没有过多资源部署。

    5.1 关于Spark和SparkSQL

    什么是Spark,什么是SparkSQL。

    Spark有的核心概念及名词解释。

    SparkSQL和Spark是什么关系,SparkSQL和Hive是什么关系。

    SparkSQL为什么比Hive跑的快。

    5.2 如何部署和运行SparkSQL

    Spark有哪些部署模式?

    如何在Yarn上运行SparkSQL?

    使用SparkSQL查询Hive中的表。Spark不是一门短时间内就能掌握的技术,因此建议在了解了Spark之后,可以先从SparkSQL入手,循序渐进。

    关于Spark和SparkSQL,如果你认真完成了上面的学习和实践,此时,你的”大数据平台”应该是这样的。

    第六章:一夫多妻制

    请不要被这个名字所诱惑。其实我想说的是数据的一次采集、多次消费。

    在实际业务场景下,特别是对于一些监控日志,想即时的从日志中了解一些指标(关于实时计算,后面章节会有介绍),这时候,从HDFS上分析就太慢了,尽管是通过Flume采集的,但Flume也不能间隔很短就往HDFS上滚动文件,这样会导致小文件特别多。

    为了满足数据的一次采集、多次消费的需求,这里要说的便是Kafka。

    6.1 关于Kafka

    什么是Kafka?Kafka的核心概念及名词解释。

    6.2 如何部署和使用Kafka

    使用单机部署Kafka,并成功运行自带的生产者和消费者例子。使用Java程序自己编写并运行生产者和消费者程序。Flume和Kafka的集成,使用Flume监控日志,并将日志数据实时发送至Kafka。

    如果你认真完成了上面的学习和实践,此时,你的”大数据平台”应该是这样的。

    这时,使用Flume采集的数据,不是直接到HDFS上,而是先到Kafka,Kafka中的数据可以由多个消费者同时消费,其中一个消费者,就是将数据同步到HDFS。

    如果你已经按照《写给大数据开发初学者的话3》中第五章和第六章的流程认真完整的走了一遍,那么你应该已经具备以下技能和知识点:

    为什么Spark比MapReduce快。

    使用SparkSQL代替Hive,更快的运行SQL。

    使用Kafka完成数据的一次收集,多次消费架构。

    自己可以写程序完成Kafka的生产者和消费者。

    从前面的学习,你已经掌握了大数据平台中的数据采集、数据存储和计算、数据交换等大部分技能,而这其中的每一步,都需要一个任务(程序)来完成,各个任务之间又存在一...

  • ?

    收藏 | 大数据应用及其解决方案(完整版)

    明慧

    展开

    目录

    1. 大数据概述

    1.1. 概述1.2. 大数据定义1.3. 大数据技术发展

    2. 大数据应用

    2.1. 大数据应用阐述2.2. 大数据应用架构2.3. 大数据行业应用

    3. 大数据解决方案

    3.1. 大数据技术组成

    3.2. 大数据处理过程

    3.3. 大数据处理的核心技术-Hadoop

    3.4. 大数据处理技术发展前景

    4. 基于基站大数据应用及案例

    4.1. 气象灾害应急短信发布平台

    4.2. 旅游客源分析

    1

    大数据概述

    1.1. 概述

    大数据,IT行业的又一次技术变革,大数据的浪潮汹涌而至,对国家治理、企业决策和个人生活都在产生深远的影响,并将成为云计算、物联网之后信息技术产业领域又一重大创新变革。未来的十年将是一个“大数据”引领的智慧科技的时代、随着社交网络的逐渐成熟,移动带宽迅速提升、云计算、物联网应用更加丰富、更多的传感设备、移动终端接入到网络,由此而产生的数据及增长速度将比历史上的任何时期都要多、都要快。

    数据技术发展历史如图一所示:

    图一

    1.2. 大数据定义

    “大数据”是一个涵盖多种技术的概念,简单地说,是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。IBM将“大数据”理念定义为4个V,即大量化(Volume)、多样化(Variety)、快速化(Velocity)及由此产生的价值(Value)。如图二;

    图二

    要理解大数据这一概念,首先要从"大"入手,"大"是指数据规模,大数据一般指在10TB(1TB=1024GB)规模以上的数据量。大数据同过去的海量数据有所区别,其基本特征可以用4个V来总结(Vol-ume、Variety、Value和Veloc-ity),即体量大、多样性、价值密度低、速度快。

    数据体量巨大。从TB级别,跃升到PB级别。

    数据类型繁多,如前文提到的网络日志、视频、图片、地理位置信息,等等。

    价值密度低。以视频为例,连续不间断监控过程中,可能有用的数据仅仅有一两秒。

    处理速度快。1秒定律。最后这一点也是和传统的数据挖掘技术有着本质的不同。物联网、云计算、移动互联网、车联网、手机、平板电脑、PC以及遍布地球各个角落的各种各样的传感器,无一不是数据来源或者承载的方式。

    大数据技术是指从各种各样类型的巨量数据中,快速获得有价值信息的技术。解决大数据问题的核心是大数据技术。目前所说的"大数据"不仅指数据本身的规模,也包括采集数据的工具、平台和数据分析系统。大数据研发目的是发展大数据技术并将其应用到相关领域,通过解决巨量数据处理问题促进其突破性发展。因此,大数据时代带来的挑战不仅体现在如何处理巨量数据从中获取有价值的信息,也体现在如何加强大数据技术研发,抢占时代发展的前沿。

    1.3. 大数据技术发展

    大数据技术描述了一种新一代技术和构架,用于以很经济的方式、以高速的捕获、发现和分析技术,从各种超大规模的数据中提取价值,而且未来急剧增长的数据迫切需要寻求新的处理技术手段。如图三所示:

    图三

    在“大数据”(Big data)时代,通过互联网、社交网络、物联网,人们能够及时全面地获得大信息。同时,信息自身存在形式的变化与演进,也使得作为信息载体的数据以远超人们想象的速度迅速膨胀。

    云时代的到来使得数据创造的主体由企业逐渐转向个体,而个体所产生的绝大部分数据为图片、文档、视频等非结构化数据。信息化技术的普及使得企业更多的办公流程通过网络得以实现,由此产生的数据也以非结构化数据为主。预计到2012年,非结构化数据将达到互联网整个数据量的75%以上。用于提取智慧的“大数据”,往往是这些非结构化数据。传统的数据仓库系统、BI、链路挖掘等应用对数据处理的时间要求往往以小时或天为单位。但“大数据”应用突出强调数据处理的实时性。在线个性化推荐、股票交易处理、实时路况信息等数据处理时间要求在分钟甚至秒级。

    全球技术研究和咨询公司Gartner将“大数据”技术列入2012年对众多公司和组织机构具有战略意义的十大技术与趋势之一,而其他领域的研究,如云计算、下一代分析、内存计算等也都与“大数据”的研究相辅相成。Gartner在其新兴技术成熟度曲线中将“大数据”技术视为转型技术,这意味着“大数据”技术将在未来3—5年内进入主流。

    而 “大数据”的多样性决定了数据采集来源的复杂性,从智能传感器到社交网络数据,从声音图片到在线交易数据,可能性是无穷无尽的。选择正确的数据来源并进行交叉分析可以为企业创造最显著的利益。随着数据源的爆发式增长,数据的多样性成为“大数据”应用亟待解决的问题。例如如何实时地及通过各种数据库管理系统来安全地访问数据,如何通过优化存储策略,评估当前的数据存储技术并改进、加强数据存储能力,最大限度地利用现有的存储投资。从某种意义上说,数据将成为企业的核心资产。

    “大数据”不仅是一场技术变革,更是一场商业模式变革。在“大数据”概念提出之前,尽管互联网为传统企业提供了一个新的销售渠道,但总体来看,二者平行发展,鲜有交集。我们可以看到,无论是Google通过分析用户个人信息,根据用户偏好提供精准广告,还是Facebook将用户的线下社会关系迁移在线上,构造一个半真实的实名帝国,但这些商业和消费模式仍不能脱离互联网,传统企业仍无法嫁接到互联网中。同时,传统企业通过传统的用户分析工具却很难获得大范围用户的真实需求。

    企业从大规模制造过渡到大规模定制,必须掌握用户的需求特点。在互联网时代,这些需求特征往往是在用户不经意的行为中透露出来的。通过对信息进行关联、参照、聚类、分类等方法分析,才能得到答案。

    “大数据”在互联网与传统企业间建立一个交集。它推动互联网企业融合进传统企业的供应链,并在传统企业种下互联网基因。传统企业与互联网企业的结合,网民和消费者的融合,必将引发消费模式、制造模式、管理模式的巨大变革。

    大数据正成为IT行业全新的制高点,各企业和组织纷纷助推大数据的发展,相关技术呈现百花齐放局面,并在互联网应用领域崭露头角,具体情况如下图四所示:

    图四

    大数据将带来巨大的技术和商业机遇,大数据分析挖掘和利用将为企业带来巨大的商业价值,而随着应用数据规模急剧增加,传统计算面临严重挑战,大规模数据处理和行业应用需求日益增加和迫切出现越来越多的大规模数据处理应用需求,传统系统难以提供足够的存储和计算资源进行处理,云计算技术是最理想的解决方案。调查显示:目前,IT专业人员对云计算中诸多关键技术最为关心的是大规模数据并行处理技术大数据并行处理没有通用和现成的解决方案对于应用行业来说,云计算平台软件、虚拟化软件都不需要自己开发,但行业的大规模数据处理应用没有现成和通用的软件,需要针对特定的应用需求专门开发,涉及到诸多并行化算法、索引查询优化技术研究、以及系统的设计实现,这些都为大数据处理技术的发展提供了巨大的驱动力。

    2

    大数据应用

    2.1. 大数据应用阐述

    大数据能做什么?我们那么多地方探讨大数据,无非总结下来就做三件事:

    第一,对信息的理解。你发的每一张图片、每一个新闻、每一个广告,这些都是信息,你对这个信息的理解是大数据重要的领域。

    第二,用户的理解,每个人的基本特征,你的潜在的特征,每个用户上网的习惯等等,这些都是对用户的理解。

    第三,关系。关系才是我们的核心,信息与信息之间的关系,一条微博和另外一条微博之间的关系,一个广告和另外一个广告的关系。一条微博和一个视频之间的关系,这些在我们肉眼去看的时候是相对简单的。

    比如有条微博说这两天朝鲜绑架我们船的事,那条微博也大概是谈这件事的。人眼一眼就能看出来。但是用机器怎么能看出来这是一件事,以及他们之间的因果关 系,这是很有难度的。然后就是用户与用户之间的关系。哪些人你愿意收听,是你的朋友,哪些是你感兴趣的领域,你是一个音乐达人,你是一个吃货,那个用户也 是一个吃货,你愿意收听他。这就是用户与用户之间的关系理解。还有用户与信息之间的理解,就是你对哪一类型的微博感兴趣,你对哪一类型的信息感兴趣,如果 牵扯到商业化,你对哪一类的广告或者商品感兴趣。其实就是用户与信息之间的关系,他无非是做这件事。

    大数据说的那么悬,其实主要是做三件事:对用户的理解、对信息的理解、对关系的理解。如果我们在这三件事之间还要提一件事的话,一个叫趋势。 他也是关系的一种变种,只是关系稍微远一点,情感之间的分析,还有我们政府部门做的舆情监控。他可以监控大规模的数据,可以分析出人的动向。在美国的好莱 坞,这两年也是基于FACEBOOK和TIWTTER的数据来预测即将上映的电影的票房。他也是一个趋势的分析,只是我们把这个趋势提前来。核心就是这三件事。

    2.2. 大数据应用架构

    2.3. 大数据行业应用

    2.3.1. 医疗行业

    1. Seton Healthcare是采用IBM最新沃森技术医疗保健内容分析预测的首个客户。该技术允许企业找到大量病人相关的临床医疗信息,通过大数据处理,更好地分析病人的信息。

    2. 在加拿大多伦多的一家医院,针对早产婴儿,每秒钟有超过3000次的数据读取。通过这些数据分析,医院能够提前知道哪些早产儿出现问题并且有针对性地采取措施,避免早产婴儿夭折。

    3. 它让更多的创业者更方便地开发产品,比如通过社交网络来收集数据的健康类App。也许未来数年后,它们搜集的数据能让医生给你的诊断变得更为精确,比方说不是通用的成人每日三次一次一片,而是检测到你的血液中药剂已经代谢完成会自动提醒你再次服药。

    2.3.2. 能源行业

    1. 智能电网现在欧洲已经做到了终端,也就是所谓的智能电表。在德国,为了鼓励利用太阳能,会在家庭安装太阳能,除了卖电给你,当你的太阳能有多余电的时候还可以买回来。通过电网收集每隔五分钟或十分钟收集一次数据,收集来的这些数据可以用来预测客户的用电习惯等,从而推断出在未来2~3个月时间里,整个电网大概需要多少电。有了这个预测后,就可以向发电或者供电企业购买一定数量的电。因为电有点像期货一样,如果提前买就会比较便宜,买现货就比较贵。通过这个预测后,可以降低采购成本。

    2. 维斯塔斯风力系统,依靠的是BigInsights软件和IBM超级计算机,然后对气象数据进行分析,找出安装风力涡轮机和整个风电场最佳的地点。利用大数据,以往需要数周的分析工作,现在仅需要不足1小时便可完成。

    2.3.3. 通信行业

    1. XO Communications通过使用IBM SPSS预测分析软件,减少了将近一半的客户流失率。XO现在可以预测客户的行为,发现行为趋势,并找出存在缺陷的环节,从而帮助公司及时采取措施,保留客户。此外,IBM新的Netezza网络分析加速器,将通过提供单个端到端网络、服务、客户分析视图的可扩展平台,帮助通信企业制定更科学、合理决策。

    2. 电信业者透过数以千万计的客户资料,能分析出多种使用者行为和趋势,卖给需要的企业,这是全新的资料经济。

    3. 中国移动通过大数据分析,对企业运营的全业务进行针对性的监控、预警、跟踪。系统在第一时间自动捕捉市场变化,再以最快捷的方式推送给指定负责人,使他在最短时间内获知市场行情。

    4. NTT docomo把手机位置信息和互联网上的信息结合起来,为顾客提供附近的餐饮店信息,接近末班车时间时,提供末班车信息服务。

    2.3.4. 零售业

    1. "我们的某个客户,是一家领先的专业时装零售商,通过当地的百货商店、网络及其邮购目录业务为客户提供服务。公司希望向客户提供差异化服务,如何定位公司的差异化,他们通过从 Twitter 和 Facebook 上收集社交信息,更深入的理解化妆品的营销模式,随后他们认识到必须保留两类有价值的客户:高消费者和高影响者。希望通过接受免费化妆服务,让用户进行口碑宣传,这是交易数据与交互数据的完美结合,为业务挑战提供了解决方案。"Informatica的技术帮助这家零售商用社交平台上的数据充实了客户主数据,使他的业务服务更具有目标性。

    2. 零售企业也监控客户的店内走动情况以及与商品的互动。它们将这些数据与交易记录相结合来展开分析,从而在销售哪些商品、如何摆放货品以及何时调整售价上给出意见,此类方法已经帮助某领先零售企业减少了17%的存货,同时在保持市场份额的前提下,增加了高利润率自有品牌商品的比例。

    3

    大数据解决方案

    3.1. 大数据技术组成

    大数据技术由四种技术构成,它们包括:

    3.1.1. 分析技术

    分析技术意味着对海量数据进行分析以实时得出答案,由于大数据的特殊性,...

  • ?

    福利领取 2018最新人工智能、大数据行业报告免费下载

    离人泪

    展开

    你有没有过相似的经历?

    10G 资料包、2000 份精选 PPT、800 份简历模板……每每在网上看到这样的字眼,总是不由自主地激动不已,不管自己是否用得着,先保存着再说。

    然而,收藏了那么多“干货”,等到真正要用时,随便打开几个,才发现里面的内容并不像想象中的高大上,真正好用的寥寥无几。

    本以为收藏资料节约了很多时间,却没想到自己还要再次筛选。看似省时省力,其实费时费力。

    为此,小编特意整理筛选了188份大数据、AI行业最新的相关报告,诚意满满!

    以下为部分报告截选:【文末附领取方式】

    《2018数据人才白皮书》

    《2018北京城市大数据活跃报告》

    《2018中国人工智能投资市场研究报告》

    《AI技术人才成长路线图》

    《2018德勤全球人力资本趋势报告》

  • ?

    大数据时代的危机意识:要如何防范数据信息泄露?

    绿柏

    展开

    近日,社交媒体巨头Facebook因5000万用户数据泄露一事,被推到舆论的风口浪尖。事实上,生活中无论是个人还是企业都不想自己的信息被他人盗取加以不良利用。作为个人需要对自己的信息多加防范,采取措施降低信息泄露的风险;对于拥有众多用户信息的平台和企业,更是需要重视用户信息的保护,并有义务保障用户的信息安全。

    信息泄露正以无孔不入的态势入侵大家的正常生活,尤其是扫码支付已经成了我们日常生活中一部分。显然移动端所面临的数据问题更严重,可能无意中点击的功能或者下载的应用,都存在信息被实时获取的可能性,可能还会存在手机被ROOT的风险,毕竟有些软件它可以绕过任何权限,无论用户是否同意,都可以记录用户所有操作,做任何想做的事情。

    那么面对这些未知的风险,我们又该如何防范数据信息泄露?

    【个人】

    1、 设置复杂的密码

    密码是信息盗取的第一道门槛,冗长又复杂的密码会增加信息破密难度系数。建议用户可采用“大小写+数字+特殊符号”这样的形式来设置账户密码。需要注意的是,众多账户尽可能不要使用同一个密码。还有如果记不住过于繁杂的密码,可以将它记在纸上,放在自己知道的秘密空间里

    2、 定期更改密码

    定期修改密码,会增加账户的安全度,3个月更改一次密码最佳。(不说了,写完这篇稿小编就去更改APP的密码…)

    3、 不要轻易出售个人信息

    目前很多平台或APP为了拉动新用户注册率,会以各种优惠的活动吸引用户,诱导用户进行注册甚至是信息绑定,当有APP或平台需要获得你的各项信息权限的时候,可千万要注意了,别薅羊毛不成反被羊咬。

     【企业】

    1、 加强安全管理

    作为企业管理人员需要加强信息安全管理工作,做到有偿负责管理,数据的安全需要管理权限与加密,堤防内鬼的出现

    2、 培训员工安全意识

    给员工进行定期培训,加强安全防范意识。让企业员工知道钓鱼攻击的来源及各种钓鱼手段,警惕在不明网址输入用户名和密码。这将有助于消除攻击的频次,加大攻击者窃取用户凭证的难度,防止大规模的数据泄露。

    3、 接入云服务安全平台保护企业信息安全

    有些企业并不具备信息安全保护的能力该怎么办呢?此时,他们可以借助专业的云安全产品或服务,以精密的技术,保障企业的信息安全。防止数据泄露,及时发现漏洞、修复漏洞是关键。

    例如国内领先的阿里云安全,多层防护+云端大数据。集阿里巴巴集团多年来安全技术研究积累的成果,同时结合阿里云计算平台强大的数据分析能力,为客户提供一整套安全产品和服务,帮助用户发现安全短板。

    在互联网特别是移动互联网已经成为大家生活的一部分的时候,Facebook的信息“泄露”事件引发的全球性影响也为我们国内互联网平台和用户的信息安全敲响了警钟,信息安全及隐私不仅关涉企业,同样需要个人保护。

  • ?

    什么叫大数据分析

    难胜

    展开

    大数据行业发展如火如荼,国家政策利好,互联网大佬纷纷在大数据行业布局,我们想让自己的职业生涯在一个朝阳行业发展,肯定又要学习相关技术,让自己与时俱进,但是难就难在大数据是一个新兴事物,目前我国大学的专业里面还鲜少有这个专业,国家刚批的大数据专业,全国目前35个高校,但是从17年开始招生,2021年才有第一批毕业生进入职场,在四年期间,是大数据行业发展的飞速时期,没有行业发展是等着人才进入的,而是需要要虚位以待、蓄势待发,所以在没有高等教育准备好的大数据教育,如何高效的学习大数据,如何快速的与行业发展想契合,那么需要我们成为第一个吃螃蟹的人,作为一个随着大数据行业成长的职业人,首先要知道大数据是个啥?

    大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    那来帮大家分析下:如何高效的学习大数据。

    经常有初学者会问,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高……首先,如果你确定了想往这个方面发展,先考虑自己的过去从业经历、专业、兴趣是什么。计算机专业——操作系统、硬件、网络、服务器?软件专业——软件开发、编程、写代码?还是数学、统计学专业——对数据和数字特别感兴趣?

    那么你能找师傅带吗?

    但凡有这种想法的人,或多或少都会存有侥幸之心,或者叫做“天真,单纯”。希望不花一分钱,就能更快速的学到更优质,更实用的技能。

    关于这一点,我只想反问一句你:“如果你是大师,你凭什么愿意带我?”

    其实这就是想告诉你大数据的三个发展方向,平台搭建/优化/运维/监控、大数据开发/设计/架构、数据分析/挖掘。

    先说一下大数据的4V特征:

    数据量大,TB->PB

    数据类型繁多,结构化、非结构化文本、日志、视频、图片、地理位置等;

    商业价值高,但是这种价值需要在海量数据之上,通过数据分析与机器学习更快速的挖掘出来;

    处理时效性高,海量数据的处理需求不再局限在离线计算当中。

    现如今,正式为了应对大数据的这几个特点,开源的大数据框架越来越多,越来越强,先列举一些常见的:

    文件存储:Hadoop HDFS、Tachyon、KFS

    离线计算:Hadoop MapReduce、Spark

    流式、实时计算:Storm、Spark Streaming、S4、Heron

    K-V、NOSQL数据库:HBase、Redis、MongoDB

    资源管理:YARN、Mesos

    日志收集:Flume、Scribe、Logstash、Kibana

    消息系统:Kafka、StormMQ、ZeroMQ、RabbitMQ

    查询分析:Hive、Impala、Pig、Presto、Phoenix、SparkSQL、Drill、Flink、Kylin、Druid

    分布式协调服务:Zookeeper

    集群管理与监控:Ambari、Ganglia、Nagios、Cloudera Manager

    数据挖掘、机器学习:Mahout、Spark MLLib

    数据同步:Sqoop

    任务调度:Oozie

    ······

    第一步:初识Hadoop

    1.1 学会百度与Google

    不论遇到什么问题,先试试搜索并自己解决。

    Google首选,翻不过去的,就用百度吧。

    1.2 参考资料首选官方文档

    特别是对于入门来说,官方文档永远是首选文档。

    相信搞这块的大多是文化人,英文凑合就行,实在看不下去的,请参考第一步。

    1.3 先让Hadoop跑起来

    Hadoop可以算是大数据存储和计算的开山鼻祖,现在大多开源的大数据框架都依赖Hadoop或者与它能很好的兼容。

    关于Hadoop,你至少需要搞清楚以下是什么:

    · Hadoop 1.0、Hadoop 2.0

    · MapReduce、HDFS

    · NameNode、DataNode

    · JobTracker、TaskTracker

    · Yarn、ResourceManager、NodeManager

    自己搭建Hadoop,请使用第一步和第二步,能让它跑起来就行。

    建议先使用安装包命令行安装,不要使用管理工具安装。

    另外:Hadoop1.0知道它就行了,现在都用Hadoop 2.0.

    1.4 尝试使用Hadoop

    · HDFS目录操作命令;

    · 上传、下载文件命令;

    · 提交运行MapReduce示例程序;

    · 打开Hadoop WEB界面,查看Job运行状态,查看Job运行日志。

    · 知道Hadoop的系统日志在哪里。

    1.5了解它们的原理

    MapReduce:如何分而治之;

    HDFS:数据到底在哪里,什么是副本;

    Yarn到底是什么,它能干什么;

    NameNode到底在干些什么;

    ResourceManager到底在干些什么;

    1.6 自己写一个MapReduce程序

    仿照WordCount例子,自己写一个(照抄也行)WordCount程序,

    打包并提交到Hadoop运行。

    不会Java的话,Shell、Python都可以,有个东西叫Hadoop Streaming。

    如果能认真完成了以上几步,恭喜你,你的一只脚已经进来了。

    第二步:更高效的WordCount

    2.1 学点SQL吧

    如果不懂数据库的童鞋先学习使用SQL句。

    2.2 SQL版WordCount

    在1.6中,你写(或者抄)的WordCount一共有几行代码?

    如果用SQL的话:

    SELECT word,COUNT(1) FROM wordcount GROUP BY word;

    这便是SQL的魅力,编程需要几十行,甚至上百行代码,SQL一句就搞定;使用SQL处理分析Hadoop上的数据,方便、高效、易上手、更是趋势。不论是离线计算还是实时计算,越来越多的大数据处理框架都在积极提供SQL接口。

    2.3 安装配置Hive

    Hive算是数据仓库工具,安装不难,网上有很多教程,配置完成后,可以正常进入Hive命令行。

    2.4 试试使用Hive

    尝试在Hive中创建wordcount表,并运行2.2中的SQL语句。在Hadoop WEB界面中找到刚才运行的SQL任务。看SQL查询结果是否和1.4中MapReduce中的结果一致。

    明明写的是SQL,为什么Hadoop WEB界面中看到的是MapReduce任务?

    2.5 学会Hive的基本命令

    创建、删除表;加载数据到表;下载Hive表的数据;并学习更多关于Hive的语法和命令。

    0和Hadoop2.0的区别

    MapReduce的原理(还是那个经典的题目,一个10G大小的文件,给定1G大小的内存,如何使用Java程序统计出现次数最多的10个单词及次数);

    HDFS读写数据的流程;向HDFS中PUT数据;从HDFS中下载数据;

    自己会写简单的MapReduce程序,运行出现问题,知道在哪里查看日志;

    会写简单的SELECT、WHERE、GROUP BY等SQL语句;

    Hive SQL转换成MapReduce的大致流程;

    Hive中常见的语句:创建表、删除表、往表中加载数据、分区、将表中数据下载到本地;

    从上面的学习,你已经了解到,HDFS是Hadoop提供的分布式存储框架,它可以用来存储海量数据,MapReduce是Hadoop提供的分布式计算框架,它可以用来统计和分析HDFS上的海量数据,而Hive则是SQL On Hadoop,Hive提供了SQL接口,开发人员只需要编写简单易上手的SQL语句,Hive负责把SQL翻译成MapReduce,提交运行。

    第三步:把别处的数据搞到Hadoop上

    此处也可以叫做数据采集,把各个数据源的数据采集到Hadoop上。

    3.1 HDFS PUT命令

    put命令在实际环境中也比较常用,通常配合shell、python等脚本语言来使用。建议需熟练掌握。

    3.2 HDFS API

    HDFS提供了写数据的API,自己用编程语言将数据写入HDFS,put命令本身也是使用API。

    实际环境中一般自己较少编写程序使用API来写数据到HDFS,通常都是使用其他框架封装好的方法。比如:Hive中的INSERT语句,Spark中的saveAsTextfile等。

    可以尝试了解原理,试着写几个Demo。

    3.3 Sqoop

    Sqoop是一个主要用于Hadoop/Hive与传统关系型数据库Oracle/MySQL/SQLServer等之间进行数据交换的开源框架。

    就像Hive把SQL翻译成MapReduce一样,Sqoop把你指定的参数翻译成MapReduce,提交到Hadoop运行,完成Hadoop与其他数据库之间的数据交换。

    自己下载和配置Sqoop(建议先使用Sqoop1,Sqoop2比较复杂)。

    了解Sqoop常用的配置参数和方法。

    使用Sqoop完成从MySQL同步数据到HDFS;

    使用Sqoop完成从MySQL同步数据到Hive表;

    PS:如果后续选型确定使用Sqoop作为数据交换工具,那么建议熟练掌握,否则,了解和会用Demo即可。

    3.4 Flume

    Flume是一个分布式的海量日志采集和传输框架,因为“采集和传输框架”,所以它并不适合关系型数据库的数据采集和传输。Flume可以实时的从网络协议、消息系统、文件系统采集日志,并传输到HDFS上。因此,如果你的业务有这些数据源的数据,并且需要实时的采集,那么就应该考虑使用Flume。

    下载和配置Flume。使用Flume监控一个不断追加数据的文件,并将数据传输到HDFS;

    PS:Flume的配置和使用较为复杂,如果你没有足够的兴趣和耐心,可以先跳过Flume。

    3.5 阿里开源的DataX

    之所以介绍这个,是因为以前某公司客户目前使用的Hadoop与关系型数据库数据交换的工具,就是之前基于DataX开发的,个人感觉非常好用。现在DataX已经是3.0版本,支持很多数据源。你也可以在其之上做二次开发。

    PS:有兴趣的可以研究和使用一下,对比一下它与Sqoop。

    至此,你的“大数据平台”应该是这样的:

    第四步:把Hadoop上的数据搞到别处去

    前面介绍了如何把数据源的数据采集到Hadoop上,数据到Hadoop上之后,便可以使用Hive和MapReduce进行分析了。那么接下来的问题是,分析完的结果如何从Hadoop上同步到其他系统和应用中去呢?

    其实此处的方法和第三步基本一致的。

    4.1 HDFS GET命令

    把HDFS上的文件GET到本地。需要熟练掌握。

    4.2 HDFS API

    原理同3.2。

    4.3 Sqoop

    原理同3.3。

    使用Sqoop完成将HDFS上的文件同步到MySQL;

    使用Sqoop完成将Hive表中的数据同步到MySQL;

    4.4 DataX

    原理同3.4

    此时,“你的大数据平台”应该是这样的:

    走完第三步和第四步的流程,那么你应该已经具备以下技能和知识点:

    · 知道如何把已有的数据采集到HDFS上,包括离线采集和实时采集;

    · 知道sqoop(或者还有DataX)是HDFS和其他数据源之间的数据交换工具;

    · 知道flume可以用作实时的日志采集;

    至此,对于大数据平台,应该已经掌握如何搭建Hadoop集群,把数据采集到Hadoop上,使用Hive和MapReduce来分析数据,把分析结果同步到其他数据源。

    接下来的问题就是,Hive使用的越来越多,你会发现很多不愉快的地方,特别是速度慢,

    大多情况下,明明我的数据量很小,它都要申请资源,启动MapReduce来执行。

    第五步:快一点吧,我的SQL

    其实大家都已经发现Hive后台使用MapReduce作为执行引擎,实在是有点慢。因此SQL On Hadoop的框架越来越多,按我的了解,最常用的按照流行度依次为SparkSQL、Impala和Presto.这三种框架基于半内存或者全内存,提供了SQL接口来快速查询分析Hadoop上的数据。

    目前我们的方案使用的是SparkSQL,至于为什么用SparkSQL,原因大概如下:

    · 使用Spark还做了其他事情,不想引入过多的框架;

    · Impala对内存的需求太大,没有过多资源部署;

    5.1 关于Spark和SparkSQL

    什么是Spark,什么是SparkSQL。

    Spark有的核心概念及名词解释。

    SparkSQL和Spark是什么关系,SparkSQL和Hive是什么关系。

    5.2 如何部署和运行SparkSQL

    Spark有哪些部署模式?

    如何在Yarn上运行SparkSQL?

    使用SparkSQL查询Hive中的表。

    PS:Spark不是一门短时间内就能掌握的技术,因此建议在了解了Spark之后,可以先从SparkSQL入手,循序渐进。

    第六步:一夫多妻制

    其实我想说的是数据的一次采集、多次消费。

    在实际业务场景下,特别是对于一些监控日志,想即时的从日志中了解一些指标(关于实时计算,后面步节会有介绍),这时候,从HDFS上分析就太慢了,尽管是通过Flume采集的,但Flume也不能间隔很短就往HDFS上滚动文件,这样会导致小文件特别多。

    为了满足数据的一次采集、多次消费的需求,这里要说的便是Kafka。

    6.1 关于Kafka

    Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    6.2 如何部署和使用Kafka

    使用单机部署Kafka,并成功运行自带的生产者和消费者例子。

    使用Java程序自己编写并运行生产者和消费者程序。

    Flume和Kafka的集成,使用Flume监控日志,并将日志数据实时发送至Kafka。

    至此,“大数据平台”应该扩充成这样:

    这时,使用Flume采集的数据,不是直接到HDFS上,而是先到Kafka,Kafka中的数据可以由多个消费者同时消费,其中一个消费者,就是将数据同步到HDFS。

    总结:

    为什么Spark比MapReduce快。

    使用SparkSQL代替Hive,更快的运行SQL。

    使用Kafka完成数据的一次收集,多次消费架构。

    自己可以写程序完成Kafka的生产者和消费者。

    前面的学习已经掌握了大数据平台中的数据采集、数据存储和计算、数据交换等大部分技能,而这其中的每一步,都需要一个任务(程序)来完成,各个任务...

  • ?

    全球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++...

  • ?

    分享:大数据学习资料(从下载狂转变为学习狂)

    jllsr

    展开

    很早之前就看过一篇文章,题目就是《从下载狂转变为学习者》,我们经常是一味的寻找资料,下载资料。寻找资料好像一匹狼,恨不得把有关的全部资料全部收入自己的硬盘,这个下载的过程,具有无比的快感,下载后,束之高阁,隐藏在硬盘的N层文件夹以下。

    为什么会如此呢?

    因为我们已经在下载过程中享受过了那种难以形容的快感。快感是一种多么难以重复的物质啊!

    今日开始本人将自己下载的大数据相关电子书,视频讲座不断分享出来,谢谢各位持续关注!

大数据下载

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

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

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP