自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (11)
  • 收藏
  • 关注

原创 JVM

Jvm (java virtual machine) Java虚拟机,用以支撑Java一次编译导出运行的实现Java8官网https://docs.oracle.com/javase/8/Developer Guides https://docs.oracle.com/javase/8/docs/index.html 有如下图解从图中可知,jdk 包好了jre,jre包含了jvm从以前知识中我们知道,我们编写了一个Person.java 文件,通过jdk 提供的javac命...

2020-09-17 15:12:11 145

原创 Java IO模型 BIO,NIO,AIO 详解

阻塞式IO模型,BIO JDK1.4 之前都是采用BIO模式(blocking I/O) ,阻塞式IO,模型如图解释: 应用程序需要从磁盘读取数据分为两个阶段,1将磁盘数据复制到内核,2将内核数据复制到应用程序空间:准备数据:应用程序问cpu说:我需要一个aaa.txt 文件,你去给我取来。CPU告诉应用程序,你等着我去给你准备数据(应用程序一直傻傻等待)。CPU转身问磁盘:磁盘我需要aaa.txt 文件,磁盘开始准备数据,并将数据复制到内核空间中(耗时) 等磁盘把数据给到CPU之后,告...

2020-09-04 19:05:20 173

原创 Java代理模式

代理模式,顾名思义就是给一个类找个代理,让这个代理类去做一些事情,比如某明星要开演唱会,在开演唱会之前要布置场景,在开演唱会之后要收拾东西,这些事情明星是不需要做的,交给它的代理去做。在Java中也会有这样的代理类,Java中的代理模式有三种,静态代理,JDK动态代理,GCLib代理静态代理所谓静态也就是在程序运行前就已经存在代理类的字节码文件,代理类和目标类的关系在运行前就确定了使用静态代理的条件是:目标对象(要被代理的对象)和代理对象需要实现相同的接口或者是继承相同父类定义共同接口

2020-07-05 19:30:00 138

原创 Java类加载器

类加载器顾名思义就是加载类的工具,在Java中用到类的时候,JVM首先要把类的字节码文件加载到内存中来,大家可能在开发的过程中经常会遇到java.lang.ClassNotFoundExcetpion这个异常,出现这种异常的原因就是类加载器找不到要加载的类了先看一下段代码public class ClassLoaderTest { public static void main(String[] args) { ClassLoader classLoader = Class

2020-07-04 21:24:15 133

原创 websocket由浅入深二

上一篇我们说了一下websocket的基本概念及简单案例,本篇是一个案例,传输文本类型的文件,可以稍微扩展成大文件上传前端代码<template> <div> 连接地址: <input type="text" id="conn" placeholder="ws://tmp.server.com:port/socket" v-model="connAddress"/> <button v-on:click="click">连接&lt

2020-07-03 22:41:05 136

原创 websocket由浅入深

websocket是一种通信协议,建立在 TCP 协议之上,也依赖于http协议。什么情况下会用websocket 呢?我们经常用的http协议是一种单工协议,就是只能从client发出请求然后server响应请求,单方面的请求。有这样一种场景就是当server端的数据更新后要实时的推送给client,此时http协议能做的就是通过ajax定时去轮询的请求server,显然这种方式是不合理的。这时就需要websocket出马,websocket的特点就是服务器可以主动向客户端推送信息,客户端也可以主

2020-07-03 21:55:12 227

原创 Java内省

Java内省一般是对Java中JavaBean的属性,事件,方法等的一些缺省处理方法,也是一些规则,其中主要用到反射。有关类主要在rt.jar包的java.beans下面,一看到这个包就很清楚都是关于bean,大家看的时候最好打开源码一块看对于JavaBean来说其实就是一些遵守了特定规则的Java类而已,比如这个类需要是public 的, 然后需要有个无参数的构造函数 这个类的属性应该是private 的, 通过setXXX()和getXXX()来访问 这个类需要能支持“事件”, 例如ad

2020-06-29 22:42:10 99

原创 Java的反射

我们要了解Java中的反射就要了解基础类Class,一切反射的基石,它也是一个类,类名就是Class,不同于我们自定义类使用的小写class。Java中所有的类都属于同一种事物那就是Class类,就像所有的人一样都属人类,当然一说人那么它就必须满足人类所固有的一些特性,Java中的类也是一样,而用来描述所有Java类的特性的就是Class,所以通过一个Class就可以获取到Java类的所有信息。下面是它的定义,它里面提供了很多方法来获取类的信息,大家可以打开源代码自己看一下。public final

2020-06-27 22:26:07 181

原创 注解二——注解的使用

上一篇我们简单说了一下注解的入门,本篇我们了解一下注解的使用——自定义注解我们首先定义一个简单的注解,只需要使用@interface 关键字来标识一下,他就成为了一个Person注解,这个注解的生命周期是到字节码阶段,使用范围是使用在类上面或者方法上面。@Retention(RetentionPolicy.CLASS)@Target({ElementType.TYPE,ElementType.METHOD})public @interface Person {}在Annotation

2020-06-25 16:42:54 181

原创 注解入门一

Java中的Annotation 在流行的框架中用的越来越多,所以对注解的原理大概介绍一下,Java5以后就开始支持注解,所以到今天注解已经成为元老级技术我们使用@interface来定义注解,它其实跟class 、interface 、enum都类似,用来标识类型。Java中annotation包下提供了这几个注解,类,接口,另外java.lang包下面又提供了五个注解下面挨个看一下他们的源码注释基本就对注解有个了解了一 Annotation接口/** * The common i

2020-06-22 22:46:59 172

原创 cas5.3.14三,TGT,Session的redis存储

上次cas5.3.14入门二,cas介绍及登陆流程讲到CAS Server生成一个TGT对象,放入自己的缓存,本片介绍一下如何将TGT存储到redis,为什么要把它存储到redis 呢,为了高可用以及扩展集群部署,集群部署的时候显然存储在内存中是不合适的先看官网:https://apereo.github.io/cas/5.3.x/官方提供了这么多存储TGT的方式,咱们只说redis 的方式,其他方式都可以参照配置。参照官网首先配置maven<dependency&g..

2020-06-12 10:36:30 2063

原创 cas5.3.14二,cas介绍及登陆流程

CAS系统体系结构由两个物理组件组成,CAS服务端和CAS客户端,它们通过各种协议进行通信,CAS服务端负责完成对用户的认证工作 , 需要独立部署。CAS客户端负责处理受保护资源的访问请求,需要对请求方进行身份认证时,重定向到 CAS服务端进行认证cas 的登陆流程如图Ticket Grangting Ticket(TGT):TGT是CAS为用户签发的登录票据,拥有了TGT,用户就可以证明自己在CAS成功登录过。TGT封装了Cookie值以及此Cookie值对应的用户信息。用户在CAS.

2020-06-10 19:19:19 1104

原创 cas5.3.14一

CAS是成熟的单点登录框架之一,官网地址https://www.apereo.org/projects/cas/。github地址https://github.com/apereo/cas。CAS是Central Authentication Service的缩写,中央认证服务,一种独立开放指令协议。耶鲁大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法。一:下载cas推荐下载使用WAR Overlay Installation 方式部署使用,什么是overlay,官网说明h

2020-06-10 17:28:38 537

原创 时间工具类

import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUtils;import org.apache.commons.lang3.time.DateFormatUtils;import org.apache.commons.lang3.time.DateUtils;import java.text...

2020-03-27 21:09:15 77

原创 Spark源码编译与导入IDEA调试

最近闲来,下载了spark源码编译调试一下,看看最新的东西。。。一、下载源码地址:http://spark.apache.org/downloads.html   选择源码包下载 https://archive.apache.org/dist/spark/spark-2.3.1/spark-2.3.1.tgz二、环境准备1、一个Linux系统环境2、在Linux系统上安装J...

2018-08-16 17:17:04 1267 2

转载 SparkStreaming如何优雅的停止服务

我们都知道SparkStreaming程序是一个长服务,一旦运转起来不会轻易停掉,那么如果我们想要停掉正在运行的程序应该怎么做呢?如果运行的是spark on yarn模式直接使用yarn application -kill taskId暴力停掉sparkstreaming是有可能出现问题的,比如你的数据源是kafka,已经加载了一批数据到sparkstreaming中正在处

2018-01-02 19:35:36 436

转载 spark log4j.properties配置详解与实例

################################################################################ #①配置根Logger,其语法为: # #log4j.rootLogger = [level],appenderName,appenderName2,... #level是日志记录的优先级,分为OFF,TRACE,DEBU

2017-12-26 10:15:56 1103

原创 parallelize中指定partition个数的详解

val rdd  = sc.parallelize(List(1,2,3,4,5,6,7),3)生成RDD的时候,RDD中的partition是如何决定的def parallelize[T: ClassTag](      seq: Seq[T],      numSlices: Int = defaultParallelism): RDD[T]

2017-11-20 10:35:39 2402

原创 决策树

0. 机器学习中分类和预测算法的评估:准确率速度强壮行可规模性可解释性1. 什么是决策树/判定树(decision tree)?          判定树是一个类似于流程图的树结构:其中,每个内部结点表示在一个属性上的测试,每个分支代表一个属性输出,而每个树叶结点代表类或类分布。树的最顶层是根结点。

2017-11-10 15:20:42 376

转载 Spark sc.textFile(...).map(...).count() 执行完整流程

Transform 和Action的来源一般刚接触Spark 的同学,都会被告知这两个概念。Transform就是RDD的转换,从一个RDD转化到另一个RDD(也有多个的情况)。 Action则是出发实际的执行动作。标题中的map就是一个典型的tansform操作,看源码,无非就是从当前的RDD构建了一个新的MapPartitionsRDDdef map[U: ClassT

2017-11-10 14:42:20 460

转载 Tachyon:Spark生态系统中的分布式内存文件系统

Tachyon是Spark生态系统内快速崛起的一个新项目。 本质上, Tachyon是个分布式的内存文件系统, 它在减轻Spark内存压力的同时,也赋予了Spark内存快速大量数据读写的能力。Tachyon把内存存储的功能从Spark中分离出来, 使Spark可以更专注计算的本身, 以求通过更细的分工达到更高的执行效率。 本文将先向读者介绍Tachyon在Spark生态系统中的使用, 也将分享百度

2017-11-10 10:07:32 180

转载 spark结构化数据处理:Spark SQL、DataFrame和Dataset

本文讲解Spark的结构化数据处理,主要包括:Spark SQL、DataFrame、Dataset以及Spark SQL服务等相关内容。本文主要讲解Spark 1.6.x的结构化数据处理相关东东,但因Spark发展迅速(本文的写作时值Spark 1.6.2发布之际,并且Spark 2.0的预览版本也已发布许久),因此请随时关注Spark SQL官方文档以了解最新信息。文中使用Scala对

2017-11-08 10:52:47 1476

转载 mysql索引总结----mysql 索引类型以及创建

关于MySQL索引的好处,如果正确合理设计并且使用索引的mysql是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTR

2017-08-31 09:19:31 167

转载 MySQL5.7 linux二进制安装

介绍MySQL5.7出来也有大半年了,业内也一直在宣传5.7有多么的N,官网的也是宣传5.7有好几倍的速度的提升包括在语法方面更多的支持、JOSN、并行复制等;但是一直期待的线程池还是没有在5.7中出现有点遗憾。忍不住也下载一个来玩玩,mysql5.7的安装相对于5.6还是有点区别,本章主要介绍二进制的安装方法。环境:centos6.7,mysql5.7.12 安装

2017-08-23 16:10:20 212

转载 CentOS6.4离线安装mysql5.6.22

我们前面已经记录过一篇Linux系统有网的情况下在线安装的情况。CentOS6.4安装mysql5.6.14有一种情况是 linux系统没外网,但是需要安装MySQL,这种情况的话 我们需要把包用其他有外网的机子下载下来传到无外网的linux系统中安装。详细步骤记录如下:下载MySQL 安装包1)http://dev.mysq

2017-07-08 14:43:16 296

转载 Ambari系列(一):在离线环境中自动化安装Hadoop集群

机器部署:cluster-01 : yum servercluster-02:MySQL server,ambari server 安装思路:在生产环境中,应该是没有外网链接的环境,或者做了外网隔离,因此在离线环境下搭建集群很有价值。在内网集群中搭建yum服务器,安装ambari和集群,是一种比较好的解决思路。 安装步骤:搭建Yu

2017-07-07 08:29:36 545

原创 Android Studio Error:Connection timed out: connect.解决方案

遇到了这样的错误:Error:Connection timed out: connect. If you are behind an HTTP proxy, please configure the proxy settings either in IDE or Gradle 错误发生在构建Gradle的过程中正在下载gradle.zip文件的时候,估计应该是访问地址被墙了

2017-06-23 14:30:44 863

原创 zookeeper安装

1.什么是zookeeper  ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供

2017-06-21 14:24:08 176

转载 Sqoop-1.4.6安装部署及详细使用介绍

之所以选择Sqoop1是因为Sqoop2目前问题太多。无法正常使用,综合比较后选择Sqoop1。Sqoop1安装配置比较简单一、安装部署(1)、下载地址:http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.6-cdh5.5.2.tar.gz解压到/opt/cdh5/sqoop(2)、拷贝MySQL的jdbc驱动包

2017-06-21 14:20:57 250

原创 Storm安装

下载稳定版本的storm,然后解压将其拷贝到/usr/lib/storm目录:$ wget https://github.com/downloads/nathanmarz/storm/storm-0.8.1.zip$ unzip storm-0.8.1.zip $ mv storm-0.8.1 /usr/lib/storm接下来,配置环境变量:export STO

2017-06-21 14:16:52 204

转载 HBase介绍、搭建、环境、安装部署

hadoop培训课程:HBase介绍、搭建、环境、安装部署1、搭建环境部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用户在根目录下创建/app目录,并修改该目录拥有者

2017-06-19 08:36:16 394

转载 Flume架构以及应用介绍

在具体介绍本文内容之前,先给大家看一下Hadoop业务的整体开发流程:  从hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步,从而引出我们本文的主角—Flume。本文将围绕Flume的架构、Flume的应用(日志采集)进行详细的介绍。 (一)Flume架构介绍 1、Flume的概念  flume是分布式的日

2017-06-14 09:01:09 331

转载 Hive 2.1.1安装配置

前期工作安装JDK安装Hadoop安装MySQL安装Hive下载Hive安装包可以从 Apache 其中一个镜像站点中下载最新稳定版的 Hive, apache-hive-2.1.1-bin.tar.gz。解压安装Hive使用以下命令安装 Hive:sudo mv apache-hive-2.1.1-bin.tar.gz /optcd /optsudo ta

2017-05-24 16:19:59 989

转载 MySQL5.7安装与配置(YUM)

安装环境:CentOS7 64位,MySQL5.71、配置YUM源在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/ # 下载mysql源安装包shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

2017-05-24 15:29:39 204

转载 ActiveMQ 即时通讯服务 浅析

一、 概述与介绍ActiveMQ 是Apache出品,最流行的、功能强大的即时通讯和集成模式的开源服务器。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现。提供客户端支持跨语言和协议,带有易于在充分支持JMS 1.1和1.4使用J2EE企业集成模式和许多先进的功能。二、 特性1、 多种语言和协议编写客户端。语言:

2017-04-26 09:05:32 439

原创 Ajax技术简介及使用

AJax (Asynchronous JavaScript And Xml)即异步的JavaScript  和 XML是指一种创建交互式网页应用的网页开发技术是一种独立于Web服务器软件的浏览器技术用一句话总结就是:从浏览器端使用异步的方式发送请求,请求服务器并获得资源的技术AJAX不是一种新的编程语言,而是一种用于创建更好(Better)更快(Faster)以及交互性更强(U

2017-03-30 22:18:13 312

原创 ButterKnife点击事件无效或控件绑定为空

出现ButterKnife无效的原因就是在ButterKnife从7.x到8.x后,运行时和编译器被分开来所以在引入时我们还需要引入编译包引入步骤:1、在项目的build.gradle文件中引入buildscript { repositories { jcenter() } dependencies { classpath

2017-03-23 10:34:58 2377

原创 Android Studio SVN 使用方法

Android Studio SVN 使用方法如何安装配置SVN请直接参考《SVN在Android Studio中的配置》http://www.cnblogs.com/songmeng/p/4389446.html如何使用SVN本文主要参考了《AndroidStudio配置SVN以及使用代码管理》http://www.it165.net/pro/html

2017-03-22 18:34:52 657

原创 getMeasuredHeight() 和 getHeight()的区别

在Android中要经常获取控件的宽高,那么久要经常用到getMeasuredHeight()和getHeight(),那么他俩到底有什么区别呢?getMeasuredHeight() 顾名思义,就是获取控件测量后的高度,就是控件的实际高度getHeight()是控件显示在屏幕上的高度,当控件能够在屏幕中显示完全时,二者是相等的,当控件在屏幕中显示不完全时,那么getMeasuredH

2017-03-21 10:01:28 1072

原创 Android全屏设置

在Android中设置全屏的方式有两种,一种是在清单文件中配置,一种是在代码中设置在清单文件中配置如下: <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name"

2017-03-20 11:44:37 288

postman免安装

postman免安装app-6.7.4!

2020-09-21

数据挖掘导论(完整版)

Pang-Ning Tan Michael Steinbach Vipin Kumar著 范明 范宏建 等译

2018-09-27

keepalived安装文档

keepalived安装文档。。

2018-09-25

Neo4j权威指南

第1章 Neo4j 图数据库基础介绍传统数据库、图数据库概念以及 Neo4j 的体系结构。本章可以作为初学者的入门部分。有经验者可以略过,直接阅读后续章节; 第2章 Neo4j 基础入门引导读者初步使用 Neo4j,包括 Neo4j 的安装部署、操控平台的使用、引导实例; 第3章 Neo4j 之 Cypher详细介绍 Cypher 语法,它是 Neo4j 引擎的接口语言,掌握好它是用好 Neo4j 的关键,也是使用中常备的参考资料; 第4章 Neo4j 程序开发详细讨论如何将 Neo4j 与开发平台、编程语言之间的集成,并提供相应开发实例; 第5章 Neo4j 数据库管理介绍 Neo4j 数据库管理相关的内容,主要包括:部署、监控、安全管理、运维与优化、备份与恢复、数据库管理相关工具等基本知识和基本操作; 第6章 Neo4j 集群技术主要介绍如何部署大规模生产环境,包括高可用性、备份与恢复,以及最新的因果集群; 第7章 Neo4j 应用案例对 Neo4j 目前的客户应用实践进行汇总,同时介绍5 个Neo4j典型应用案例; 第8章 Neo4j 高级应用介绍高级索引、Docker 环境部署、自定义批量导入、Neo4j与图计算、Neo4j 与自然语言处理等高级话题; 第9章 Neo4j 简体中文版介绍 Neo4j 简体中文版及其扩展功能,包括图片显示、数据驱动下节点和关系的呈现、以及智能查询功能; 附录A Neo4j 配置设置详细介绍配置文件 neo4j.conf 的配置细节; 附录B Neo4j 内建过程详细介绍通用过程、本地用户和角色管理过程

2018-06-30

Python核心编程(第二版).pdf

Python核心编程(第二版).pdf,Python核心编程(第二版).pdf

2018-04-25

Spark快速大数据分析.pdf 中文版

第 1 章 Spark 数据分析导论 .......................................................................................................... 1 1.1 Spark 是什么 ............................................................................................................................... 1 1.2 一个大一统的软件栈 ................................................................................................................. 2 1.2.1 Spark Core ...................................................................................................................... 2 1.2.2 Spark SQL ....................................................................................................................... 3 1.2.3 Spark Streaming .............................................................................................................. 3 1.2.4 MLlib .............................................................................................................................. 3 1.2.5 GraphX ............................................................................................................................ 3 1.2.6 集群管理器 .................................................................................................................... 4 1.3 Spark 的用户和用途 ................................................................................................................... 4 1.3.1 数据科学任务 ................................................................................................................ 4 1.3.2 数据处理应用 ................................................................................................................ 5 1.4 Spark 简史 ................................................................................................................................... 5 1.5 Spark 的版本和发布 ................................................................................................................... 6 1.6 Spark 的存储层次 ....................................................................................................................... 6 第 2 章 Spark 下载与入门 ............................................................................................................... 7 2.1 下载 Spark ................................................................................................................................... 7 vi | 目录 2.2 Spark 中 Python 和 Scala 的 shell .............................................................................................. 9 2.3 Spark 核心概念简介 ................................................................................................................. 12 2.4 独立应用 ................................................................................................................................... 14 2.4.1 初始化 SparkContext ................................................................................................... 15 2.4.2 构建独立应用 .............................................................................................................. 16 2.5 总结 ........................................................................................................................................... 19 第 3 章 RDD 编程 ............................................................................................................................ 21 3.1 RDD 基础 ................................................................................................................................. 21 3.2 创建 RDD ................................................................................................................................. 23 3.3 RDD 操作 ................................................................................................................................. 24 3.3.1 转化操作 ...................................................................................................................... 24 3.3.2 行动操作 ...................................................................................................................... 26 3.3.3 惰性求值 ...................................................................................................................... 27 3.4 向 Spark 传递函数 .................................................................................................................... 27 3.4.1 Python ........................................................................................................................... 27 3.4.2 Scala .............................................................................................................................. 28 3.4.3 Java ............................................................................................................................... 29 3.5 常见的转化操作和行动操作 ................................................................................................... 30 3.5.1 基本 RDD ..................................................................................................................... 30 3.5.2 在不同 RDD 类型间转换 ............................................................................................ 37 3.6 持久化 ( 缓存 ) ......................................................................................................................... 39 3.7 总结 ........................................................................................................................................... 40 第 4 章 键值对操作 ......................................................................................................................... 41 4.1 动机 ........................................................................................................................................... 41 4.2 创建 Pair RDD .......................................................................................................................... 42 4.3 Pair RDD 的转化操作 .............................................................................................................. 42 4.3.1 聚合操作 ...................................................................................................................... 45 4.3.2 数据分组 ...................................................................................................................... 49 4.3.3 连接 .............................................................................................................................. 50 4.3.4 数据排序 ...................................................................................................................... 51 4.4 Pair RDD 的行动操作 .............................................................................................................. 52 4.5 数据分区(进阶) ..................................................................................................................... 52 4.5.1 获取 RDD 的分区方式 ................................................................................................ 55 4.5.2 从分区中获益的操作 .................................................................................................. 56 4.5.3 影响分区方式的操作 .................................................................................................. 57 4.5.4 示例:PageRank .......................................................................................................... 57 4.5.5 自定义分区方式 .......................................................................................................... 59 4.6 总结 ........................................................................................................................................... 61 目录 | vii 第 5 章 数据读取与保存 ................................................................................................................ 63 5.1 动机 ........................................................................................................................................... 63 5.2 文件格式 ................................................................................................................................... 64 5.2.1 文本文件 ...................................................................................................................... 64 5.2.2 JSON ............................................................................................................................. 66 5.2.3 逗号分隔值与制表符分隔值 ...................................................................................... 68 5.2.4 SequenceFile ................................................................................................................. 71 5.2.5 对象文件 ...................................................................................................................... 73 5.2.6 Hadoop 输入输出格式 ................................................................................................. 73 5.2.7 文件压缩 ...................................................................................................................... 77 5.3 文件系统 ................................................................................................................................... 78 5.3.1 本地 /“常规”文件系统 ............................................................................................ 78 5.3.2 Amazon S3 .................................................................................................................... 78 5.3.3 HDFS ............................................................................................................................ 79 5.4 Spark SQL 中的结构化数据 .................................................................................................... 79 5.4.1 Apache Hive ................................................................................................................. 80 5.4.2 JSON ............................................................................................................................. 80 5.5 数据库 ....................................................................................................................................... 81 5.5.1 Java 数据库连接 .......................................................................................................... 81 5.5.2 Cassandra ...................................................................................................................... 82 5.5.3 HBase ............................................................................................................................ 84 5.5.4 Elasticsearch ................................................................................................................. 85 5.6 总结 ........................................................................................................................................... 86 第 6 章 Spark 编程进阶 ................................................................................................................. 87 6.1 简介 ........................................................................................................................................... 87 6.2 累加器 ....................................................................................................................................... 88 6.2.1 累加器与容错性 .......................................................................................................... 90 6.2.2 自定义累加器 .............................................................................................................. 91 6.3 广播变量 ................................................................................................................................... 91 6.4 基于分区进行操作 ................................................................................................................... 94 6.5 与外部程序间的管道 ............................................................................................................... 96 6.6 数值 RDD 的操作 .................................................................................................................... 99 6.7 总结 ......................................................................................................................................... 100 第 7 章 在集群上运行 Spark ...................................................................................................... 101 7.1 简介 ......................................................................................................................................... 101 7.2 Spark 运行时架构 ................................................................................................................... 101 7.2.1 驱动器节点 ................................................................................................................ 102 viii | 目录 7.2.2 执行器节点 ................................................................................................................ 103 7.2.3 集群管理器 ................................................................................................................ 103 7.2.4 启动一个程序 ............................................................................................................ 104 7.2.5 小结 ............................................................................................................................ 104 7.3 使用 spark-submit 部署应用 ................................................................................................ 105 7.4 打包代码与依赖 ..................................................................................................................... 107 7.4.1 使用 Maven 构建的用 Java 编写的 Spark 应用 ....................................................... 108 7.4.2 使用 sbt 构建的用 Scala 编写的 Spark 应用 ............................................................ 109 7.4.3 依赖冲突 .................................................................................................................... 111 7.5 Spark 应用内与应用间调度 ................................................................................................... 111 7.6 集群管理器 ............................................................................................................................. 112 7.6.1 独立集群管理器 ........................................................................................................ 112 7.6.2 Hadoop YARN ............................................................................................................ 115 7.6.3 Apache Mesos ............................................................................................................. 116 7.6.4 Amazon EC2 ............................................................................................................... 117 7.7 选择合适的集群管理器 ......................................................................................................... 120 7.8 总结 ......................................................................................................................................... 121 第 8 章 Spark 调优与调试 ........................................................................................................... 123 8.1 使用 SparkConf 配置 Spark ................................................................................................... 123 8.2 Spark 执行的组成部分:作业、任务和步骤 ....................................................................... 127 8.3 查找信息 ................................................................................................................................. 131 8.3.1 Spark 网页用户界面 .................................................................................................. 131 8.3.2 驱动器进程和执行器进程的日志 ............................................................................ 134 8.4 关键性能考量 ......................................................................................................................... 135 8.4.1 并行度 ........................................................................................................................ 135 8.4.2 序列化格式 ................................................................................................................ 136 8.4.3 内存管理 .................................................................................................................... 137 8.4.4 硬件供给 .................................................................................................................... 138 8.5 总结 ......................................................................................................................................... 139 第 9 章 Spark SQL ........................................................................................................................ 141 9.1 连接 Spark SQL ...................................................................................................................... 142 9.2 在应用中使用 Spark SQL ...................................................................................................... 144 9.2.1 初始化 Spark SQL ...................................................................................................... 144 9.2.2 基本查询示例 ............................................................................................................ 145 9.2.3 SchemaRDD ............................................................................................................... 146 9.2.4 缓存 ............................................................................................................................ 148 9.3 读取和存储数据 ..................................................................................................................... 149 9.3.1 Apache Hive ............................................................................................................... 149 目录 | ix 9.3.2 Parquet ........................................................................................................................ 150 9.3.3 JSON ........................................................................................................................... 150 9.3.4 基于 RDD ................................................................................................................... 152 9.4 JDBC/ODBC 服务器 .............................................................................................................. 153 9.4.1 使用 Beeline ............................................................................................................... 155 9.4.2 长生命周期的表与查询 ............................................................................................ 156 9.5 用户自定义函数 ..................................................................................................................... 156 9.5.1 Spark SQL UDF .......................................................................................................... 156 9.5.2 Hive UDF .................................................................................................................... 157 9.6 Spark SQL 性能 ...................................................................................................................... 158 9.7 总结 ......................................................................................................................................... 159 第 10 章 Spark Streaming .......................................................................................................... 161 10.1 一个简单的例子 ................................................................................................................... 162 10.2 架构与抽象 ........................................................................................................................... 164 10.3 转化操作 ............................................................................................................................... 167 10.3.1 无状态转化操作 ..................................................................................................... 167 10.3.2 有状态转化操作 ..................................................................................................... 169 10.4 输出操作 ............................................................................................................................... 173 10.5 输入源 ................................................................................................................................... 175 10.5.1 核心数据源 ............................................................................................................. 175 10.5.2 附加数据源 ............................................................................................................. 176 10.5.3 多数据源与集群规模 ............................................................................................. 179 10.6 24/7 不间断运行 ................................................................................................................... 180 10.6.1 检查点机制 ............................................................................................................. 180 10.6.2 驱动器程序容错 ..................................................................................................... 181 10.6.3 工作节点容错 ......................................................................................................... 182 10.6.4 接收器容错 ............................................................................................................. 182 10.6.5 处理保证 ................................................................................................................. 183 10.7 Streaming 用户界面 ............................................................................................................. 183 10.8 性能考量 ............................................................................................................................... 184 10.8.1 批次和窗口大小 ..................................................................................................... 184 10.8.2 并行度 ..................................................................................................................... 184 10.8.3 垃圾回收和内存使用 ............................................................................................. 185 10.9 总结 ....................................................................................................................................... 185 第 11 章 基于 MLlib 的机器学习 ............................................................................................... 187 11.1 概述 ....................................................................................................................................... 187 11.2 系统要求 ............................................................................................................................... 188 11.3 机器学习基础 ....................................................................................................................... 189 x | 目录 11.4 数据类型 ............................................................................................................................... 192 11.5 算法 ....................................................................................................................................... 194 11.5.1 特征提取 ................................................................................................................. 194 11.5.2 统计 ......................................................................................................................... 196 11.5.3 分类与回归 ............................................................................................................. 197 11.5.4 聚类 ......................................................................................................................... 202 11.5.5 协同过滤与推荐 ..................................................................................................... 203 11.5.6 降维 ......................................................................................................................... 204 11.5.7 模型评估 ................................................................................................................. 206 11.6 一些提示与性能考量 ........................................................................................................... 206 11.6.1 准备特征 ................................................................................................................. 206 11.6.2 配置算法 ................................................................................................................. 207 11.6.3 缓存 RDD 以重复使用 ........................................................................................... 207 11.6.4 识别稀疏程度 ......................................................................................................... 207 11.6.5 并行度 ..................................................................................................................... 207 11.7 流水线 API ........................................................................................................................... 208 11.8 总结 ....................................................................................................................................... 209

2017-09-25

MQTTDemo在Android上的实现

使用MQTT协议实现Android消息推送

2017-03-07

org.eclipse.paho.client.mqttv3-1.0.1.jar

2017-03-07

mosquitto-1.1.2-install-cygwin.exe

Windows64位安装程序mosquitto

2017-03-07

MQTT中文文档

MQTT对照官网的详细中文文档

2017-03-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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