自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Tomorrow never comes

你可以不博学,但不能无知;你可以不交友,但不能孤僻;你可以不乐观,但不能厌世;你可以不慷慨,但不能损人;你可以不追求,但不能嫉妒;你可以不进取,但不能倒退。

原创 Kafka 简介

问题:集群角色副本leader选举数据存储通过offset查找messagetoptic 分区集群消费集群角色每个分区有一个为leader,其他都为follower,leader处理partition的所有读写请求,与此同时,follower会被动定期地去复制leader上的数据。 性能受最后一个同步数据的分区界节点决定。副本kafka中的副本机制是以分区粒度进行复制的...

2019-06-19 12:36:51 180

原创 vuePreee 部署技术文档

mkdir api-doccd api-docnpm install -D vuepressmkdir docsnpx vuepress dev docs#生成 package.jsonnpm init -y#添加编译脚本vim package.json "scripts": { "test": "echo \"Error: no test specified\"...

2018-12-18 11:42:42 111

转载 Hadoop Yarn 框架原理及运作机制

1.1 YARN 基本架构YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的JobTracker拆分成了两个独立的服务:一个全局的资源管理器ResourceManager和每个应用程序特有的ApplicationMaster。其中ResourceManager负责整个系统的资源管理和分配,而ApplicationMaster负责单个应用程序的管理。1.2 YARN基本...

2018-04-25 16:25:29 124

转载 spark 基础操作

dataframespark dataframe派生于RDD类,但是提供了非常强大的数据操作功能。主要对类SQL的支持。DataFrame是一种以RDD为基础的分布式数据集,类似于传统数据块中的表,它与RDD最主要的区别在于:DataFrame有schema元数据,即DataFrame所表示的数据集的每一列都有名称和数据类型。正是因为有了这些schema元数据,Sparl SQL的查询优化器就可以...

2018-04-13 11:07:16 1196 1

转载 Spark性能优化指南

Spark性能优化指南——基础篇李雪蕤 ·2016-04-29 14:00前言在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛。在美团•大众点评,已经有很多同学在各种项目中尝试使用Spark。大多数同学(包括笔者在内),最初开始尝...

2018-04-11 12:52:09 422

转载 BloomFilter——大规模数据处理利器

Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。 一. 实例   为了说明Bloom Filter存在的重要意义,举一个实例:  假设要你写一个网络蜘蛛(web crawler)。由于网络间的链接错综复杂,蜘蛛在网络间爬行很可能会形成“环”。为了避免形成“环”,就需要知道蜘...

2018-04-09 14:27:24 316

转载 使用git rebase合并多次commit

转自:https://blog.csdn.net/yangcs2009/article/details/471663611.首先使用git log查看一下提交历史[plain] view plain copy[demo@ubuntu1204:zh_cn(bugfix/ycs-MOS-1503-notify-template-table-center)]$ git log  commit 5e187...

2018-04-02 12:10:41 782

原创 hdfs详解

******HDFS基本概念篇******1. HDFS前言l 设计思想分而治之:将大文件、大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析; l 在大数据系统中作用:为各类分布式运算框架(如:mapreduce,spark,tez,……)提供数据存储服务 l 重点概念:文件切块,副本存放,元数据 2. HDFS的概念和特性首先,它是一个文件系统,用于存储文件,...

2018-03-27 11:51:53 349

原创 hadoop集群搭建

4. 集群搭建4.1 HADOOP集群搭建4.1.1集群简介HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起HDFS集群:负责海量数据的存储,集群中的角色主要有 NameNode / DataNodeYARN集群:负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager(那mapreduce是什么呢...

2018-03-27 11:38:36 115

原创 豆瓣爬虫:根据tag 爬书籍,实现urllib、BeautifulSoup、导出excel

豆瓣爬虫:根据tag 爬书籍,实现urllib、BeautifulSoup、导出excelimport timeimport urllibimport urllib.parseimport numpy as npfrom bs4 import BeautifulSoupimport randomfrom openpyxl import Workbook​hds = [{'User-...

2018-03-26 17:59:55 277

原创 Java多线程增强+反射+代理

Ø java多线程增强1. java多线程基本知识1.1进程介绍 不管是我们开发的应用程序,还是我们运行的其他的应用程序,都需要先把程序安装在本地的硬盘上。然后找到这个程序的启动文件,启动程序的时候,其实是电脑把当前的这个程序加载到内存中,在内存中需要给当前的程序分配一段独立的运行空间。这片空间就专门负责当前这个程序的运行。 不同的应用程序运行的过程中都需要在内存中分配自己独立的运行空间,彼此之间...

2018-03-26 14:53:27 390

原创 redis 学习笔记

一、redis学习 01/ nosql介绍 NoSQL:一类新出现的数据库(not only sql),它的特点:1、 不支持SQL语法2、 存储结构跟传统关系型数据库中的那种关系表完全不同,nosql中存储的数据都是KV形式3、 NoSQL的世界中没有一种通用的语言,每种nosql数据库都有自己的api和语法,以及擅长的业务场景4、 NoSQL中的产品种类相当多:a) Mongodb  文档型n...

2018-03-26 12:14:08 4826 3

原创 shell编程

01/ linux操作增强1.1 防火墙配置防火墙根据配置文件/etc/sysconfig/iptables来控制本机的“出、入”网络访问行为其对行为的配置策略有四个策略表 1.1.1 必备技能查看防火墙状态 service iptables status关闭防火墙service iptables stop启动防火墙service iptables start禁止防火墙自启chkconfig ip...

2018-03-22 10:50:28 101

原创 linux基础

3.2 Linux常用命令3.1.1 基本日常操作命令  1、查看当前所在的工作目录的全路径 pwd[test@hdp-node-01 ~]$ pwd/home/test 2、查看当前系统的时间 date[test@hdp-node-01 ~]$ date +%Y-%m-%d2016-05-18[test@hdp-node-01 ~]$ date +%Y-%m-%d  --date="-1 day...

2018-03-22 10:25:05 129

原创 scala lazy关键字

scala lazy 加载、 模式匹配case实例lazy 赖加载 Scala中使用关键字lazy来定义惰性变量,实现延迟加载(懒加载)。 惰性变量只能是不可变变量,并且只有在调用惰性变量时,才会去实例化这个变量。我们看一下spark源码中的这段代码/** Default properties present in the currently defined defaults file. */...

2018-03-21 14:09:17 116

转载 python爬虫案例——东方财富股票数据采集

通过python爬取东方财富的股票信息。获取每只股票的:总市值 净资产 净利润 市盈率 市净率 毛利率 净利率 ROE东方财富网址:http://quote.eastmoney.com/stocklist.html先爬取股票汇总页面。 在进入每只股票的详情页,爬取每只股票的具体信息。需要安装BeautifulSoup包(点击下载)、requests包(点击下载)、lxml包(点击下载)python...

2018-03-21 10:54:08 4770 4

转载 Scrapy爬虫框架教程-- 抓取AJAX异步加载网页

Scrapy爬虫框架教程(一)– Scrapy入门Scrapy爬虫框架教程(二)– 爬取豆瓣电影TOP250Scrapy爬虫框架教程(三)– 调试(Debugging)Spiders前言前一段时间工作太忙一直没有时间继续更新这个教程,最近离职了趁着这段时间充裕赶紧多写点东西。之前我们已经简单了解了对普通网页的抓取,今天我就给大家讲一讲怎么去抓取采用Ajax异步加的网站。工具和环境语言:python...

2018-03-19 16:56:10 1865

原创 Spark 源码阅读(6)——Master接收到ClientActor后,进行worker的资源分配

看一下appActor的preStart方法override def preStart() { context.system.eventStream.subscribe(self, classOf[RemotingLifecycleEvent]) try { registerWithMaster() } catch { case e: Exception => ...

2018-03-18 21:57:54 307

原创 Spark 源码阅读(5)——Spark-submit任务提交流程

任务提交后执行前的逻辑:client端:1、spark-submit脚本提交任务,会通过反射的方式调用到我们自己提交的类的main方法2、执行我们自己代码中的new SparkContext    2.1、创建actorSystem    2.2、创建TaskSchedulerImpl 任务分发的类    2.3、创建SparkDeploySchedulerBackend 调度任务    2.4、...

2018-03-18 11:26:36 806

原创 Scala 注解

1.@volatile实际上这个注解或是关键字,大多用于被并发访问的共享变量。在JVM内存模型中happens-before规则有一条就是volatile变量法则(有兴趣可以阅读Java并发编程实践 第16章Java内存模型),对于volatile变量,同一变量的写操作总是先于读操作。class Person(@volatile var name: String) { def set(chan...

2018-03-17 11:18:03 299

原创 Scala 泛型

Scala在方法定义的时候可以指定泛型def startServiceOnPort[T]( startPort: Int, startService: Int => (T, Int), conf: SparkConf, serviceName: String = ""): (T, Int) = {}1、泛型类class Animals[A,B](var nam...

2018-03-17 11:04:21 290

原创 Scala 方法返回值

Scala 方法的最后一句代码就是该方法的返回值,返回值可以是一个元组Tuple,如:def createActorSystem( name: String, host: String, port: Int, conf: SparkConf, securityManager: SecurityManager): (ActorSystem, Int) = {...

2018-03-17 10:38:50 5382

原创 Scala 方法参数以及Option

1.可变长度参数Scala 允许你指明函数的最后一个参数可以是重复的。这可以允许客户向函数传入可变长度参数列表。想要标注一个重复参数,在参数的类型之后放一个星号。例如:scala> def echo(args: String*) =for (arg <- args) println(arg)echo: (String*)Unit这样定义, echo 可以被零个至多个 String ...

2018-03-17 10:24:39 1590

转载 Spark【案例】实现黑名单实时过滤

黑名单实时过滤一、实验介绍1.1 实验内容本节课主要讲解 Spark 的 RDD 操作,让您对 Spark 算子的特性快速了解。通过演示案例实时黑名单过滤,让您切身体会到 RDD 的强大功能,然后学以致用。1.2 先学课程Spark 系列课程1.3 实验知识点ncSparkStreamingSpark RDD1.4 实验环境spark-2.1.0-bin-hadoop2.6Xfce 终端1.5 适...

2018-03-16 10:33:54 1536

原创 Spark 源码阅读(4)——Master和Worker的启动流程

启动脚本中调用的是Master的main方法,所以我们找到Master的main方法:private[spark] object Master extends Logging {  val systemName = "sparkMaster"  private val actorName = "Master"​  def main(argStrings: Array[String]) {...

2018-03-15 17:16:20 636

转载 Flume实战采集文件内容存入HDFS

1、flume安装目录下新建文件夹 example 2、在example下新建文件 log-hdfs.conf内容如下:[plain] view plain copy# Name the components on this agent  a1.sources = r1  a1.sinks = k1  a1.channels = c1    #exec 指的是命令  # Describe/conf...

2018-03-15 12:51:50 474

转载 kafka配置文件详解之:server.properties

[html] view plain copy#每一个broker在集群中的唯一表示,要求是正数。当该服务器的IP地址发生改变时,broker.id没有变化,则不会影响consumers的消息情况  broker.id=0    #broker server服务端口    port =9092    #处理网络请求的线程数量  num.network.threads=2      #broker处理...

2018-03-15 12:42:03 385

原创 Zookeeper基本使用

03/ Zookeeper简介3.1 概念介绍Zookeeper是一个分布式协调服务;就是为用户的分布式应用程序提供协调服务1、zookeeper是为别的分布式程序服务的2、Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)3、Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务……4、虽然说可以提供各种服务...

2018-03-12 16:38:03 253 1

转载 ELK日志处理之使用logstash收集log4J日志

介绍一下如何从Java工程中导出log4J日志到Logstash。一、log4j基础不能免俗的官方介绍:Log4j 是一个使用 Java 语言编写的,可靠、快速、灵活的日志框架(API),使用 Apache Software License 授权。它被移植到 C、C++、C#、Perl、Python、Ruby 和 Eiffel 语言中。Log4j 是高度可配置的,在运行期使用外部的配置文件对其进行...

2018-03-12 14:43:15 780 1

原创 Spark 集群安装

3、Spark集群安装3.1、安装3.1.1、机器部署准备两台以上Linux服务器,安装好JDK1.73.1.2、下载Spark安装包  http://www.apache.org/dyn/closer.lua/spark/spark-1.5.2/spark-1.5.2-bin-hadoop2.6.tgz上传解压安装包上传spark-1.5.2-bin-hadoop2.6.tgz安装包到Linux...

2018-03-12 11:55:42 83

转载 logstash配置文件详解

Logstash实际应用配置详解背景业务目的是能够分析nginx和apache每天产生的日志,对url、ip、rest接口等信息进行监控,并将数据发送到elasticsearch服务。config输入从日志文件中获取信息file { path => "/home/keepgostudio/demo/logs/test.log" start_position => "be...

2018-03-12 11:38:26 803

转载 使用Logstash filter grok过滤日志文件

Logstash Filter Plugin GrokLogstash提供了一系列filter过滤plugin来处理收集到的log event,根据log event的特征去切分所需要的字段,方便kibana做visualize和dashboard的data analysis。所有logstash支持的event切分插件查看这里。下面我们主要讲grok切分。Grok基本介绍Grok 使用文本片段切...

2018-03-12 11:28:20 10186

转载 Logstash学习3_通过Kafka传输数据给logstash-1.4和logstash-1.5

目录(?)[-]通过kafka传输kafka 基本概念小提示插件安装logstash-14 安装logstash-15 安装小贴士插件配置Input 配置示例Input 解释注意Output 配置Output 解释消息模式相关小贴士性能队列监控input-kafka 的 JSON 序列化性能其他方案通过kafka传输Kafka 是一个高吞吐量的分布式发布订阅日志服务,具有高可用、高性能、分布式、高...

2018-03-11 21:07:30 208

原创 Kafka负载均衡、Kafka自定义Partition、Kafk文件存储机制

1、Kafka整体结构图Kafka名词解释和工作方式 l Producer :消息生产者,就是向kafkabroker发消息的客户端。l Consumer :消息消费者,向kafkabroker取消息的客户端l Topic :咋们可以理解为一个队列。l Consumer Group (CG):这是kafka用来实现一个topic消息的广播(发给所有的consumer)和单播(发给任意一个consu...

2018-03-11 17:00:17 3399

原创 Kafka 基本使用

1、Kafka是什么l Apache Kafka是一个开源消息系统,由Scala写成。是由Apache软件基金会开发的一个开源消息系统项目。l Kafka最初是由LinkedIn开发,并于2011年初开源。2012年10月从ApacheIncubator毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。l Kafka是一个分布式消息队列:生产者、消费者的功能。它提供了类似于JM...

2018-03-11 16:43:38 1917

原创 ELK 工作栈

ELK技术栈介绍一、 ELK工作栈简介1. 简介         ELKStack 是 Elasticsearch、Logstash、Kibana 三个开源软件的组合。在实时数据检索和分析场合,三者通常是配合共用,而且又都先后归于 Elastic.co 公司名下,故有此简称。          ELKStack 在最近两年迅速崛起,成为机器数据分析,或者说实时日志处理领域,开源界的第一选择。和传统...

2018-03-11 08:14:42 605

转载 Spark Streaming中的操作函数分析

  根据Spark官方文档中的描述,在Spark Streaming应用中,一个DStream对象可以调用多种操作,主要分为以下几类TransformationsWindow OperationsJoin OperationsOutput Operations一、Transformations1、map(func)  map操作需要传入一个函数当做参数,具体调用形式为val b = a.map(f...

2018-03-10 15:26:18 74

原创 Flume 使用总结

前言在一个完整的大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示:  1. 日志采集框架Flume1.1 Flume介绍1.1.1 概述u Flume是Cloudera提供的一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。u ...

2018-03-10 09:35:00 4224

原创 Spark-sql 结合hive使用

1.安装hive(配置好)2.将配置好的hive-site.xml放入$SPARK-HOME/conf目录下3.将mysql-xxx-connector-xx.jar放到spark集群中节点的lib目录下4.启动spark-shell时指定mysql连接驱动位置bin/spark-shell \ --master spark://node1.itcast.cn:7077 \...

2018-03-09 22:05:28 518

原创 Mysql 存储过程源码案例

CREATE DEFINER=`myl`@`192.168.2.%` PROCEDURE `pr_investStatistics`(IN `adminId` bigint)BEGIN declare totalInvestment varchar(255) default '0'; declare dueinfund varchar(255) default '...

2018-03-09 16:32:31 343

提示
确定要删除当前文章?
取消 删除