大数据
文章平均质量分 51
hadoop最佳入门
不清不慎
热爱编程,热爱生活。
展开
-
ClickHouse创建mysql数据库引擎报错【Code: 501】
使用clickhouse的数据库引擎mysql创建一个库用来同步mysql中的数据,命令如下:CREATE DATABASE mysql_db ENGINE = MySQL('localhost:3306','click_test','root','123456');结果报如下错误:CREATE DATABASE mysql_dbENGINE = MySQL('localhost:3306', 'click_test', 'root', '123456')Received exception原创 2020-09-21 16:09:24 · 2984 阅读 · 0 评论 -
Flume+Kafka+Spark Streaming实现大数据实时流式数据采集
大数据实时流式数据处理是大数据应用中最为常见的场景,与我们的生活也息息相关,以手机流量实时统计来说,它总是能够实时的统计出用户的使用的流量,在第一时间通知用户流量的使用情况,并且最为人性化的为用户提供各种优惠的方案,如果采用离线处理,那么等到用户流量超标了才通知用户,这样会使得用户体验满意度降低,这也是这几年大数据实时流处理的进步,淡然还有很多应用场景。因此Spark Streaming应用而生,...原创 2018-07-21 01:41:31 · 22385 阅读 · 3 评论 -
Spark内核架构流程深度剖析
最近一直在研究Spark,也自己练习做了几个项目,对于Spark这个框架特别的喜爱,尤其是其一站式的大数据解决方案,而且也对Spark MLlib中的机器学习算法很感兴趣,也学习过一段时间。但是在自己空闲下来回想,对于Spark的理解自己仅仅只是停留在表层,如果只是使用API来编写Spark程序,那么无疑将Spark与其他普通的框架混为一谈,发挥不了其作用,根本谈不上说熟悉Spark。因此,...原创 2018-07-25 16:12:25 · 2920 阅读 · 1 评论 -
Spark源码解读之SparkContext剖析
最近一直在研究Spark,也自己练习做了几个项目,对于Spark这个框架特别的喜爱,尤其是其一站式的大数据解决方案,而且也对Spark MLlib中的机器学习算法很感兴趣,也学习过一段时间。但是在自己空闲下来回想,对于Spark的理解自己仅仅只是停留在表层,如果只是使用API来编写Spark程序,那么无疑将Spark与其他普通的框架混为一谈,发挥不了其作用,根本谈不上说熟悉Spark。因此,...原创 2018-07-26 16:17:22 · 2081 阅读 · 1 评论 -
Spark源码解读之Master剖析
在上篇文章中我们剖析了SparkContext创建启动的整个流程,但是在创建SparkContext之后,TaskScheduler是如何向master注册application,以及master是如何调度worker启动的?带着这些问题我们来看看master的内部构造。首先我们从下面这四个方面来深入Master源码来探究:主备切换切换机制注册机制状态改变机制资源调度机制(两种资源...原创 2018-07-27 13:57:42 · 603 阅读 · 0 评论 -
Spark源码解读之Worker剖析
在上一篇中我们剖析了Master的工作原理,这节我们接着来剖析Worker的工作员原理,Worker主要包括两部分的工作,启动Executor和启动Driver,然后向Master发送注册启动消息。下面是Worker的工作流程图: 在Application向Master注册之后,Master会发出命令启动Wroker,在Worker节点启动之后,它会调动内部的两个方法LaunchDriv...原创 2018-07-28 12:49:37 · 520 阅读 · 0 评论 -
Spark源码分析之DAGScheduler详解
在前面的几节中,主要介绍了SparkContext的启动初始化过程,包括Driver的启动,向Master的注册,Master启动 Worker,在Worker中启动Executor,以及Worker向Master的注册,在讲述完这些之后,所有的准备工作都已经做完,就开始真正执行我们的Application,首先它会提交job到DAGScheduler中执行,包括对于job的stage划分,还有t...原创 2018-07-31 17:14:36 · 1417 阅读 · 0 评论 -
Spark源码解读之TaskScheduler剖析
在前面的一篇文章中介绍了stage的划分算法以及task对应的partition的最佳位置计算算法。在DAGScheduler中将stage划分好之后,然后TaskScheduler会将taskSet中的task提交到executor中去执行,那么TaskScheduler是怎么样将task提交到executor中执行,又是如何如何分配executor的呢?本篇主要围绕TaskScheduler的...原创 2018-08-02 21:13:55 · 760 阅读 · 0 评论 -
Spark源码解读之Executor以及Task工作原理剖析
前一篇文章中主要讲述了TaskScheduler发送TaskSet中的task到executor中执行,那么,本篇文章接着上文的讲述看看executor的工作原理以及task是如何执行的。首先来看看executor的工作流程:executor会启动一个后台进程CoarseGrainedExecutorBackend,首先它会向driver发送RegisterExecutor消息注册exec...原创 2018-08-03 23:04:27 · 984 阅读 · 0 评论 -
Spark性能调优之合理分配系统资源以及并行度的调节
在Spark系统中,调优是非常重要。首先,调优的第一步也是首先要考虑的就是系统的资源,只有在合理、有效的分配完了系统的资源,才会去考虑其他调优点从而提升系统的性能与速度。虽然对于系统的资源的分配,看上去没那么难,但是也不能小视,一个集群或系统的资源有效,只有在知道其Spark资源分配的原理之后才能合理分配资源,一定程度上对系统的性能带来提升。本篇文章主要从下面几个方面展开对系统资源的分配展开讨...原创 2018-08-07 23:06:22 · 1470 阅读 · 1 评论 -
【数据挖掘】NLP中文分词概述
在大数据时代,信息量越来越大,给你一篇百万文字的文章,你保证你有耐心慢慢看完吗?如果是热点新闻,我们当然会希望通过一段简洁明了的文字来概述整个文章,这时候就需要提取文章的关键字;每当我们遇到不会的问题的时候,都会想到百度,但是你有没有想过,搜索引擎是怎么样识别文本的语义进行搜索,在分析你的语义之后又是如何分析出类似的文章呈现给你,这时候就需要分析文本的相似度。NLP自然语言应用广泛,以上仅仅只是冰...原创 2018-08-13 23:31:04 · 5352 阅读 · 0 评论 -
随机梯度下降法概述与实例
机器学习算法中回归算法有很多,例如神经网络回归算法、蚁群回归算法,支持向量机回归算法等,其中也包括本篇文章要讲述的梯度下降算法,本篇文章将主要讲解其基本原理以及基于Spark MLlib进行实例示范,不足之处请多多指教。梯度下降算法包含多种不同的算法,有批量梯度算法,随机梯度算法,折中梯度算法等等。对于随机梯度下降算法而言,它通过不停的判断和选择当前目标下最优的路径,从而能够在最短路径...原创 2018-06-16 22:21:23 · 20572 阅读 · 2 评论 -
Spark SQL与DataFrame详解以及使用
Spark一站式的解决方案使得大数据技术快速发展,其中,最核心的部分当然也包括Spark SQL,它简单,常用,高效。与Spark Core中类似的,Spark SQL中最核心的部分是DataFrame抽象模型,本篇文章主要介绍Spark SQL的核心内容以及其简单使用。Spark SQL是Spark的一个结构化数据处理模块,提供一个DataFrame编程模型抽象,可以看做是一个分布式...原创 2018-06-17 21:42:21 · 2955 阅读 · 1 评论 -
Spark SQL操作多数据源
Spark SQL支持通过DataFrame接口操作的多种不同的数据源。DataFrame提供支持统一的接口加载和保存数据源中的数据,包括:结构化数据,Parquet文件,JSON文件,Hive表 ,以及通过JDBC连接外部数据源。与Hive类似的,Spark SQL也可以创建临时表和持久表(即管理表),使用registerTempTable命令创建临时表,使用saveAsTable命令将数据...原创 2018-06-18 17:20:35 · 6373 阅读 · 0 评论 -
基于交替最小二乘法(ALS)算法的协同过滤推荐案例实战【Spark MLlib】
交替最小二乘法(ALS)是统计分析中最常用的逼近计算的一种算法,其交替计算结果使得最终结果尽可能地逼近真实结果。而ALS的基础是最小二乘法(LS算法),LS算法是一种常用的机器学习算法,它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便的求得未知的数据,并使得这些求得的数据与实际数据之间误差的平法和为最小。最小二乘法以一个变量为例,在二维空间中最小二乘法的原理图如下...原创 2018-05-27 20:14:43 · 11804 阅读 · 0 评论 -
Spark Streaming初步使用以及工作原理详解
在大数据的各种框架中,hadoop无疑是大数据的主流,但是随着电商企业的发展,hadoop只适用于一些离线数据的处理,无法应对一些实时数据的处理分析,我们需要一些实时计算框架来分析数据。因此出现了很多流式实时计算框架,比如Storm,Spark Streaming,Samaz等框架,本文主要讲解Spark Streaming的工作原理以及如何使用。一、流式计算1.什么是流?...原创 2018-05-12 13:44:35 · 19289 阅读 · 1 评论 -
Spark Streaming集成Kafka的两种方式
Spark Streaming集成Kafka转载请标明原文链接:在实际开发中Spark Streaming经常会结合Flume以及Kafka来实时计算数据。这篇文章主要讲述如何集成Kafka,对于Kafka的集成有两种方式:Receiver-based ApproachDirect Approach (No Receivers)在集成Kafka之前,必须先安装kafka并且启...原创 2018-05-13 17:32:32 · 3217 阅读 · 0 评论 -
协同过滤推荐算法概述
随着电商企业的发展,为了更好的了解用户喜好以便于将更加适合的商品推荐给用户,不仅能得到用户好的评价,而且也有利于自身企业的利益,因此,随之诞生了很多推荐系统,最为常用的推荐算法就是协同过滤算法。转载请标明原文链接推荐算法的基础就是基于两个对象之间的相关性,常用的计算方法有欧几里得相似性,这是一种使用较多的相似性计算方法。除此之外还有曼哈顿相似性和余弦相似性的计算方法。协同过滤算...原创 2018-05-25 18:04:36 · 5031 阅读 · 0 评论 -
基于Spark MLlib的余弦相似度计算实战与欧几里得距离概述【相似度度量】
在上篇文章协同过滤推荐算法概述中,我们看到了对于不同形式的协同过滤举证,最重要的部分是相似度的计算,如果不同的用户或者物品之间的相似度缺乏有效而可靠的算法定义,那么协同过滤算法就失去了成立的基础条件。转载请标明原文链接:欧几里得距离相似度计算欧几里得距离是常用的计算距离的公式,它表示三维空间的两个点的真实距离。欧几里得相似度计算是一种基于用户之间直线距离的计算方式,在计算时,不同的物品...原创 2018-05-26 00:12:54 · 7995 阅读 · 0 评论 -
Spark RDD核心详解
本篇文章主要讲解Spark 的编程模型以及作业执行调度流程。对于spark 来说,其核心是RDD(Resilient Distributed Dataset,弹性分布式数据集),它是一种特殊的集合,支持多种来源,有容错机制,可以被缓存支持并行操作。下面来看看RDD这一抽象数据集的核心。Spark编程模型RDD的特征 RDD总共有五个特征,三个基本特征,两个可选特征。 (1)...原创 2018-05-04 22:32:04 · 4458 阅读 · 0 评论 -
分布式大数据仓库HBase的基本使用以及架构原理详解
当今移动互联网时代,每个人每天都会产生数据,海量数据的存储以及查询使得RDBMS无法满足需求,因此出现了HBase分布式大数据。本文主要介绍的HBase的基本使用以及Hbase的架构原理,使得读者对Hbase有一个更好地认识。一、HBase介绍首先,看看官网对于Hbase的介绍:Apache HBase™ is the Hadoop database, a distribute...原创 2018-04-20 23:54:20 · 8069 阅读 · 0 评论 -
HBase数据迁移(备份)常见方式总结以及演示(集成MapReduce)
HBase数据迁移通常我们的数据来自logs以及RDBMS中,在有些时候,我们需要进行数据迁移,比如,将RDBMS中数据进行备份迁移到HBase中存储或者将一些文件迁移到HBase中,常见的HBase的数据迁移有以上几种方式:使用Put API来插入数据使用Bulk Load方式迁移海量数据(下面会详解以及演示)编写MapReduce程序进行数据迁移使用Sqoop等工具从RDBMS...原创 2018-04-26 19:49:02 · 1169 阅读 · 0 评论 -
大数据日志文件实时收集框架Flume介绍及其使用
大数据中,我们经常会将一些日志文件收集分析,比如网站的日志文件等等,我们需要一个工具收集数据并且上传到HDFS,HIVE,HBASE等大数据仓库中,Apache为我们提供了一个很好的文件实时收集框架供我们使用。一、Flume的介绍官网的介绍如下:Apache Flume is a distributed, reliable, and available system for e...原创 2018-04-15 11:13:54 · 4639 阅读 · 0 评论 -
大数据实时日志收集框架Flume案例之抽取日志文件到HDFS
上节介绍了Flume的作用以及如何使用,本文主要通过一个简单的案例来更好地运用Flume框架。在实际开发中,我们有时需要实时抽取一些文件夹下的文件来分析,比如今天的日志文件需要抽取出来做分析。这时,如何自动实时的抽取每天的日志文件呢?我们可以使用Flume来完成这一项工作。案例需求:假设需要分析一些日志文件,在一个目录下每天会生成一个日志文件,以.log后缀结尾的文件表示正在写,没有更新完成,...原创 2018-04-19 00:24:13 · 4913 阅读 · 0 评论 -
Hadoop基本配置及在本地模式下运行MapReduce案例
一、认识Hadoop 什么是Hadoop,这里来看看官网的说法,Scalable distribute computing,即可扩展分布式计算框架。具体看下面:The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across c原创 2017-12-29 00:08:28 · 4662 阅读 · 5 评论 -
Hadoop2.x部署之完全分布式集群环境搭建
一、分布式部署概述Hadoop环境的搭建有三种方式: 本地环境搭建 伪分布式环境搭建 完全分布式环境搭建集群在前面的文章中,详细描述了如何搭建本地环境【https://blog.youkuaiyun.com/qq_37142346/article/details/78927584】及伪分布式环境【https://blog....原创 2018-03-31 15:57:13 · 1993 阅读 · 0 评论 -
Hadoop环境搭建三之配置部署启动YARN以及在YARN上运行MapReduce程序
一、配置部署启动YARN1.在hadoop安装目录下找到etc/hadoop目录,在这个目录下找到yarn-env.sh文件进行如下配置:(保险起见配置Java环境)2.然后找到yarn-site,xml文件配置:<property> <name>yarn.resourcemanager.hostname</name> ...原创 2018-03-24 18:47:20 · 1236 阅读 · 0 评论 -
Hadoop2.x环境搭建之搭建伪分布模式以及运行wordcount案例【HDFS上的数据】
一、部署运行HDFS文件系统1.在hadoop的安装目录下有core-site.xml和hdfs-site.xml这两个文件,下面分别配置这两个文件: core-site.xml:<property> <name>fs.defaultFS</name> <value>hdfs://hostname/ip:80...原创 2018-03-23 22:58:03 · 714 阅读 · 0 评论 -
HDFS中的Java API常用操作
Hadoop整合了众多的文件系统,在其中有一个综合性的文件系统抽象,它提供了文件系统实现的各类接口,HDFS只是这个抽象文件系统的一个实例。提供了一个高层的文件系统抽象类org.apache.hadoop.FileSystem。下面我们主要围绕这个抽象类讲解一下常见的文件操作。Hadoop中关于文件操作基本上全部是在“org.apache.hadoop.fs”包中,这些API能够支持的操作包含...原创 2018-03-28 20:11:09 · 1359 阅读 · 0 评论 -
HDFS HA【QJM】集群搭建以及使用Zookeeper集群进行故障转移
一、HDFS HA概述在hadoop2.x之前,hadoop集群只有一个namenode,存在单点故障【SPOF】,因此在一个namenode宕机或者该namenode所在的机器需要升级进行处理的时候,就需要停掉服务器,所有的服务都不能工作。因此,在hadoop2.x之后就提出了HDFS HA【High Availability】,HDFS HA通过配置Active/Standby两个name...原创 2018-04-01 17:23:39 · 682 阅读 · 0 评论 -
Hive安装部署以及初步使用
一、Hive概述HIve是什么?为什么要使用hive?对于一个初步接触hive的初学者,这些都是迷惑的,因此本文主要带你入门hive,让你了解到hive的安装使用以及在hive在大数据中的位置。1.为什么要使用hive?在了解hive之前,相信大家都使用过mapreduce以及hdfs,提及mapreduce我们都会想到对于一些数据的处理总是要自己去编写mapreduce程序去处理...原创 2018-04-03 21:44:11 · 777 阅读 · 0 评论 -
Hive文件存储格式查询性能的比较
一、Hive的文件存储格式Hive总共支持以下几种文件存储格式:Text FileSequenceFileRCFileAvro FilesORC FilesParquetCustom INPUTFORMAT and OUTPUTFORMAT这里,我们主要比较Text File,ORC File,Parquet文件存储格式的查询性能,在比较之前,我们先简单介绍一下这三种文件...原创 2018-04-09 21:50:37 · 3635 阅读 · 0 评论