about云开发

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3629|回复: 9

[经典公众号] 大数据技术汇

[复制链接]
发表于 2018-5-2 17:22:06 | 显示全部楼层 |阅读模式
公众号介绍:

专注于大数据领域相关分享,主要涉及主流Spark、Hadoop等框架、推荐搜索算法、数据挖掘、数据分析等相关技术和面试经验的分享。为学习大数据的朋友提供一个好的学习交流平台,大数据时代一起来学习大数据技术吧!



公众号:
dashujuhui

经典文章推荐:

用21张知识卡告诉你推荐系统的核心技术!


推荐系统目前已经深入到了互联网的各类产品中。不管是到电子商务网站购物,还是到新闻阅读网站获取信息,甚至是在出行的时候希望听到不同的音乐,不同种类的推荐系统都在我们的生活中发挥着举足轻重的作用。

为了给大家全方位给你解读推荐系统核心技术,作者精心整理了21张卡片,推荐各位收藏。

1. 现代推荐架构剖析

在讨论任何一种架构之前,我们首先来看一下这个架构需要解决什么样的问题。然后在这些问题的指引下,我们就可以来分析不同架构在解决这些问题上的优劣。

那么,对于一个推荐架构来说,我们需要解决什么样的问题呢?有以下3点:

能够在一两百毫秒内给用户提供当前的推荐结果;
对用户和系统的交互结果做出响应;
考虑用户群体的覆盖率的问题。


更多参考原文





本帖被以下淘专辑推荐:

 楼主| 发表于 2018-5-2 17:23:16 | 显示全部楼层
Hadoop集群Mapreduce原理篇


Mapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架;


Mapreduce
核心功能

是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上;


1 为什么要MAPREDUCE
(1)海量数据在单机上处理因为硬件资源限制,无法胜任
(2)而一旦将单机版程序扩展到集群来分布式运行,将极大增加程序的复杂度和开发难度
(3)引入mapreduce框架后,开发人员可以将绝大部分工作集中在业务逻辑的开发上,而将分布式计算中的复杂性交由框架来处理

更多参考原文




 楼主| 发表于 2018-5-2 17:24:33 | 显示全部楼层
大数据初学者怎样学习?(上)

    很多人都知道大数据很火,就业很好,薪资很高,想往大数据方向发展。但该学哪些技术,学习路线是什么样的呢?用不用参加大数据培训呢? 如果自己很迷茫,为了这些原因想往大数据方向发展,也可以,那么小编想问一下,你的专业是什么,对于计算机/软件,你的兴趣是什么?是计算机专业,对操作系统、硬件、网络、服务器感兴趣? 是软件专业,对软件开发、编程、写代码感兴趣?还是数学、统计学专业,对数据和数字特别感兴趣。

  其实这就是告诉你的大数据的三个发展方向,平台搭建/优化/运维/监控、大数据开发/设计/架构、数据分析/挖掘。请不要问我哪个容易,哪个前景好,哪个钱多。
  先说一下大数据的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多种吧,别说精通了,全部都会使用的,估计也没几个。
  小编主要还是推荐第二个方向(开发/设计/架构),因为这个方向容易找工作,下面给大家具体讲解一下。


更多参考原文






 楼主| 发表于 2018-5-2 17:26:04 | 显示全部楼层
大数据初学者怎样学习?(下)

前面一篇文章中主要说了大数据初学者怎样学习的前四章内容,感谢大家继续阅读,不说废话了,这里我们就来继续看看接下来的内容吧!

    第五章:快一点吧,我的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中的表。
  PS: Spark不是一门短时间内就能掌握的技术,因此建议在了解了Spark之后,可以先从SparkSQL入手,循序渐进。

更多参考原文


 楼主| 发表于 2018-5-2 17:27:06 | 显示全部楼层

从大数据到人工智能 我们还有多远的路要走


从去年开始,从政府到企业,从分析机构到业界专家,几乎所有的企业和个人都将目光锁定到了人工智能上。如果说2017年是人工智能的新纪元,人们对于人工智能的探讨还是基于概念的探讨和前景的展望上,那么2018年则是人工智能如何落地的关键一年。

从广义上讲,人工智能的应用已经非常广泛,各大新闻客户端会根据你的阅读兴趣推送相关新闻、各大电商平台会根据你的购买习惯推送相关商品、几乎所有你浏览的网页所呈现的广告都与你的历史搜索相关……这些都可以称得上是人工智能。而且,与过去60年人工智能的发展主要集中在实验室里不同,新一轮的人工智能已经在诸多应用场景中发挥威力,应该说,新一轮的人工智能浪潮才刚刚开始。



从云计算到大数据,人工智能已经具备了相对坚实的基础。其中,大数据称得上是人工智能赖以开展的生产资料,而云计算则是人工智能发展的生产工具。不过,从当下人工智能的发展现状看,大部分的人工智能还停留在大数据分析阶段,距离真正的人工智能还有一定的距离。


更多参考原文
 楼主| 发表于 2018-5-2 17:28:59 | 显示全部楼层
从Apache Kafka到Apache Spark安全地读取数据



随着CDH平台上物联网用例数量的不断增加,此类工作负载的安全性至关重要。本章描述了如何以安全的方式从Spark中的Kafka(这是物联网用例的两个关键组件)中消费数据。
Apache Kafka 2.0.0的Cloudera发行版(基于Apache Kafka 0.9.0)引入了一个新的Kafka使用者API,允许消费者从安全的Kafka集群读取数据。这允许管理员锁定他们的Kafka集群,并要求客户端通过Kerberos进行身份验证。它还允许客户在与Kafka代理(通过SSL / TLS)通信时通过网络加密数据。随后,在Apache Kafka 2.1.0的Cloudera Distribution中,Kafka引入了对通过Apache Sentry进行授权的支持。这使Kafka管理员可以锁定某些主题并将权限授予特定角色和用户,从而利用基于角色的访问控制。
现在,从Cloudera Distribution of Spark 2.1 release 1开始,我们可以从Spark中的Kafka安全地读取功能。要详细了解Spark 2的Cloudera Distribution,请参阅文档。
要求
  • Cloudera发布Spark 2.1版本1或更高版本。
  • Cloudera发布的Kafka 2.1.0或更高版本。

建筑
在安全的Kafka集群中使用Spark中的新直接连接器(此处提供了源代码)支持。直接连接器不使用单独的进程(AKA  接收器)来读取数据。相反,Spark驱动程序会跟踪各种Kafka主题分区的偏移量,并将偏移量发送给直接从Kafka读取数据的执行程序。下面显示了一个直接连接器的简单描述。
1.png
图1:Spark中的Kafka直接连接器。
重要的一点是Spark要以分布的方式访问Kafka的数据。Spark中的每个任务都会从Kafka主题的特定分区(称为主题分区)中读取数据。主题分区在卡夫卡经纪人中是理想的均匀分布。你可以阅读Spark如何将执行者放置在这里。

更多参考原文






 楼主| 发表于 2018-5-2 17:31:03 | 显示全部楼层
Hadoop Map/Reduce执行流程详解

一个Map/Reduce 作业(job) 通常会把输入的数据(input file)切分为若干独立的数据块(splits),然后由 map任务(task)以完全并行的方式处理它们。Map/Reduce框架会对map的输出做一个 Shuffle 操作,Shuffle 操作的后的结果会输入给reduce任务。整个Map/Reduce框架负责任务的调度和监控,以及重新执行已经失败的任务。

1.png
Map/Reduce计算集群由一个单独的JobTracker(master) 和每个集群节点一个 TaskTracker(slave)共同组成。JobTracker负责调度构成一个作业的所有任务,这些任务会被分派到不同的TaskTracker上去执行,JobTracker会监控它们的执行、重新执行已经失败的任务。而TaskTracker仅负责执行由JobTracker指派的任务。


更多参考原文


 楼主| 发表于 2018-5-2 17:32:24 | 显示全部楼层
海量实时用户行为数据的存储和分析

在短时间内爆发大量数据,这时数据资源的采集、存储和分析和应用等,都是大数据行业的难点。行为数据、日志数据的处理,往往成为企业数据建设首先面对的瓶颈,这些数据不易保存,实时获取分析难度较大,但是数据价值却不可估量。

在大数据中,90% 以上的数据爆发来自于行为数据,就像现在的互联网、移动互联网、甚至在产生于物联网中用来描述人和物的每一分每一秒的变化的数据状态,这些都是行为数据。

行为数据能用做什么?

1.png

行为数据能做什么?有一个简单的例子 —— 分析访客行为的路径,我们拿一个网站的数据进行分析,针对网站的访客,我们可以通过分析其访问前期、中期、后期的行为习惯去了解哪些引流的渠道需要加强投入,以及使用这些来指导内容编辑和竞品研究分析工作。

实际上在做需求时,还有更多的细节要求如:对数据的实时性的要求比较高、要求数据的热点情报的准确性、与客户数据的协同分析等。


更多参考原文


 楼主| 发表于 2018-5-2 17:34:13 | 显示全部楼层
【DataMagic】如何在万亿级别规模的数据量上使用Spark

一、前言
Spark作为大数据计算引擎,凭借其快速、稳定、简易等特点,快速的占领了大数据计算的领域。本文主要为作者在搭建使用计算平台的过程中,对于Spark的理解,希望能给读者一些学习的思路。文章内容为介绍Spark在DataMagic平台扮演的角色、如何快速掌握Spark以及DataMagic平台是如何使用好Spark的。

二、Spark在DataMagic平台中的角色
1.png
图 2-1

整套架构的主要功能为日志接入、查询(实时和离线)、计算。离线计算平台主要负责计算这一部分,系统的存储用的是COS(公司内部存储),而非HDFS。
下面将主要介绍Spark on Yarn这一架构,抽取出来即图2-2所示,可以看到Spark on yarn的运行流程。
2.png


更多参考原文






 楼主| 发表于 2018-5-2 17:39:22 | 显示全部楼层
大数据时代,电商是如何利用大数据给用户建立画像的

什么是用户画像

   1.png

  交互设计之父Alan Cooper最早提出了用户画像(persona)的概念,认为“用户画像是真实用户的虚拟代表,是建立在一系列真实数据之上的目标用户模型”。通过对客户多方面的信息的了解,将多种信息集合在一起并形成在一定类型上的独特的特征与气质,这就形成了用户的独特的”画像”。




更多参考原文


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /3 下一条

QQ|小黑屋|about云开发-学问论坛|社区 ( 京ICP备12023829号

GMT+8, 2018-12-20 00:13 , Processed in 0.550932 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.2 Licensed

快速回复 返回顶部 返回列表