<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GodXuzzZ的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GodXuzzZ</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GodXuzzZ]]></copyright><item><title><![CDATA[es性能优化]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/110622131</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/110622131</guid><author>GodXuzzZ</author><pubDate>Fri, 04 Dec 2020 10:56:02 +0800</pubDate><description><![CDATA[目录
es性能优化
写入性能优化
增加refresh的时间间隔
默认1s就会触发一次Refresh，然后Refresh会把内存中的数据刷新到操作系统的文件缓存系统中（buffer ——&gt; OS cache）。每次索引的refresh会产生一个新的segment段，这会导致频繁的segment merge行为。一般在查询实时性要求不高的场景下可改为30s，甚至是“-1”（关闭refresh）。入库完之后修改回默认值是1s即可，形如：
refresh参数设置
Curl -XPUT "localhost:9]]></description><category></category></item><item><title><![CDATA[数据仓库理论]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108700753</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108700753</guid><author>GodXuzzZ</author><pubDate>Mon, 21 Sep 2020 00:50:19 +0800</pubDate><description><![CDATA[数仓概述
数据仓库的概念原先为“商业数据仓库”。本质上，数据仓库是一种从操作性系统到决策支持环境的数据流架构模型，而数仓概念也是为了解决和这个数据流相关的各种问题，主要是解决多重数据复制带来的高成本问题。在没有数据仓库的时代，需要大量的冗余数据来支撑多个决策支持环境。
Inmon将数据仓库描述为一个面向主题的、集成的、随时间变化的、非易失的数据集合，用于支持管理者的决策过程。
数据仓库的数据是面向主题的
传统的操作型系统是围绕组织的功能性应用进行组织的，而数据仓库是面向主题的。主题是一个抽象概念，简单的说就]]></description><category></category></item><item><title><![CDATA[拉链表案例简介]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108577453</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108577453</guid><author>GodXuzzZ</author><pubDate>Mon, 14 Sep 2020 13:43:25 +0800</pubDate><description><![CDATA[user_his




userid
username
phone
start_date
end_date




1001
zhangsan
13066666666
2020-09-01
9999-12-31


1002
lisi
13055555555
2020-09-01
9999-12-31


1003
wangwu
13077777777
2020-09-01
9999-12-31


user_update




userid
username
phone




1001
zhangs]]></description><category></category></item><item><title><![CDATA[分布式计算模型MapReduce]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108405153</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108405153</guid><author>GodXuzzZ</author><pubDate>Fri, 04 Sep 2020 17:39:05 +0800</pubDate><description><![CDATA[MapReduce基本使用
MapReduce编程规范
用户编写的程序分成三个部分：Mapper、Reducer 和 Driver。
1、编写Mapper类
（1）用户自定义的Mapper要继承框架提供的Mapper类。
（2）Mapper的输入数据是KV键值对的形式（KV的类型可自定义）。
（3）对数据的处理逻辑写在Mapper类中map() 方法中。
（4）Mapper的输出数据是KV键值对的形式（KV的类型可自定义）。
（5）map() 方法（maptask进程）每一个&lt;K,V&gt;数据执行一]]></description><category></category></item><item><title><![CDATA[答题日志练习]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108366600</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108366600</guid><author>GodXuzzZ</author><pubDate>Wed, 02 Sep 2020 18:41:42 +0800</pubDate><description><![CDATA[1.
hdfs  dfs -mkdir -p /app/data/exam
hdfs dfs -put /root/data/answer_question.log /app/data/exam

2.
def main(args: Array[String]): Unit = {
	val conf = new SparkConf().setAppName("exam").setMaster("local[*]")
	val sc = new SparkContext(conf)
	val rdd...]]></description><category></category></item><item><title><![CDATA[HBase基础加进阶]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108228383</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108228383</guid><author>GodXuzzZ</author><pubDate>Wed, 26 Aug 2020 08:30:33 +0800</pubDate><description><![CDATA[HBase安装
见hbase文章
HBase架构原理
HBase结构
HBase架构比较复杂，也比较难理解
HBase是Master/slaves架构，从安装环境能看出，HBase分布式环境安装成功后，有一个HMaster，多个HResgionServer进程，HBase架构如图：

HBase是由Client、Zookeeper、HMaster、HRegionServer、HDFS等组件组成，组件的相关功能：
1、Client：客户端，可以是HBase Shell、Java API客户端、RestAPI等]]></description><category></category></item><item><title><![CDATA[Redis数据库]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108227475</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108227475</guid><author>GodXuzzZ</author><pubDate>Tue, 25 Aug 2020 19:28:09 +0800</pubDate><description><![CDATA[目录Redis安装Redis数据类型String（字符串）hash（哈希）List（列表）Set（集合）java连接Redisspark连接RedisPython连接Redis
Redis安装
安装redis
redis是基于c语言编译的
wget http://download.redis.io/releases/redis-4.0.6.tar.gz
tar -zxf redis-4.0.6.tar.gz
yum install -y gcc
cd redis-4.0.6
make MALLOC=libc]]></description><category></category></item><item><title><![CDATA[Python基础及函数]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108226727</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108226727</guid><author>GodXuzzZ</author><pubDate>Tue, 25 Aug 2020 19:12:17 +0800</pubDate><description><![CDATA[内置函数
内置函数
无需导包即可使用的函数
不同版本的Python内置函数可能略有不同
之前已经接触过的内置函数
type()、dir()、input()、print()、id()
内置函数和使用方法参考文档
https://docs.python.org/zh-cn/3/library/functions.html
自定义函数
定义函数
def func_name(参数列表):
	函数体
	[return/yield函数返回值]

Python函数的特点
函数参数类型多样
允许嵌套函数
无需声明函数返回值]]></description><category></category></item><item><title><![CDATA[斐波拉契蛇和你好中国]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108204623</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108204623</guid><author>GodXuzzZ</author><pubDate>Mon, 24 Aug 2020 18:16:46 +0800</pubDate><description><![CDATA[目录斐波拉契蛇用python解答结果你好中国用python解答结果
斐波拉契蛇

用python解答
import numpy as np
import pandas as pd

# n 矩阵n*n  斐波那契蛇
def makeSnake(n):
    snakeArr = np.zeros((n,n))
    # 制作一个point和方向控制变量 direction
    xPos = yPos = 0
    direction = 1    # 1右2下3左4上
    # 获取fibona]]></description><category></category></item><item><title><![CDATA[Python环境搭建及Python数据类型]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108152314</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108152314</guid><author>GodXuzzZ</author><pubDate>Fri, 21 Aug 2020 17:44:03 +0800</pubDate><description><![CDATA[导入Pandas与Numpy
import numpy as np
import pandas as pd
s = pd.Series([1,2,3,np.nan,5,6,7])

]]></description><category></category></item><item><title><![CDATA[Apache Spark基础及架构]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108035712</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/108035712</guid><author>GodXuzzZ</author><pubDate>Mon, 17 Aug 2020 02:06:59 +0800</pubDate><description><![CDATA[认识Spark
Apache Spark是大数据领域最活跃的项目之一，其活跃度目前远超Hadoop。特点是快速、易用、通用及多种运行模式。
1、快速
Spark是面向内存的大数据处理引擎，这使得Spark能够为多个不同数据源的数据提供近乎实时的处理性能，是用于需要多次操作特定数据集的应用场景。
面向磁盘的MapReduce受限于磁盘读/写性能和网络I/O性能的约束，在处理迭代计算、实时计算、交互式数据查询等方面并不高效，但是这些却在图计算、数据挖掘和机器学习等相关应用领域中非常常见。针对这一不足，将数据存储]]></description><category></category></item><item><title><![CDATA[基于Spark Streaming的流处理和分析]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107942443</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107942443</guid><author>GodXuzzZ</author><pubDate>Tue, 11 Aug 2020 19:59:03 +0800</pubDate><description><![CDATA[Spark Streaming原理
批处理针对有界的、大量的、持久化的静态数据，流处理针对无界的、小量的（每次处理）、持续实时快速生产的数据。应该说批处理系统强调的是计算能力，流处理系统更要求吞吐量（单位时间内处理请求数量）、实时性（至少秒级）。两者之间的关系如下图：

目前来看，各类大数据平台都在往批流统一方向发展。无论是有界的历史数据流还是无界的实时数据流，都采用一套底层API解决。以Spark为例，RDD是Spark Core的核心抽象，DStream是Spark Streaming的提供的高级别抽象]]></description><category></category></item><item><title><![CDATA[基于Spark GraphX的图形数据分析]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107904232</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107904232</guid><author>GodXuzzZ</author><pubDate>Mon, 10 Aug 2020 13:45:29 +0800</pubDate><description><![CDATA[为什么需要图计算？
许多大数据以大规模图或网络的形式呈现
许多非图结构的大数据，常会被转换为图模型进行分析
图数据结构很好的表达了数据之间的关联性
图（Graph）的基本概念
图是由顶点集合（vertex）及顶点间关系集合（边edge）组成的一种网状数据结构
通常表示为二元组：Graph =（V，E）
可以对事物之间的关系建模
应用场景
在地图应用中寻找最短路径
社交网络关系
网页间超链接关系
图的术语
顶点（Vertex）
边（Edge）
Graph = （V，E）
集合V={v1，v2，v3}
集合E=]]></description><category></category></item><item><title><![CDATA[Apache Spark分布式计算原理]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107853398</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107853398</guid><author>GodXuzzZ</author><pubDate>Fri, 07 Aug 2020 13:34:07 +0800</pubDate><description><![CDATA[RDD依赖与DAG原理
Spark根据计算逻辑中的RDD的转换与动作生成RDD的依赖关系，同时这个计算链也形成了逻辑上的DAG
RDD的转换
以WordCount为例，分析一下RDD的转换细节
val lines = sc.textFile("/data/words.txt")
val count = lines.flatMap(line =&gt; line.split(" ")).map(word =&gt; (word,1)).reduceByKey(_+_)
count.collect

1、首先从]]></description><category></category></item><item><title><![CDATA[Kafka核心原理]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107848058</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107848058</guid><author>GodXuzzZ</author><pubDate>Thu, 06 Aug 2020 20:20:08 +0800</pubDate><description><![CDATA[Kafka架构设计
安装Kafka
zkServer.sh start
tar -zxf kafka_2.11-2.0.0.tgz
mv kafka_2.11-2.0.0 soft/kafka211
cd soft/kafka211/config/
vi server.properties
如果是分布式环境则需要修改broker.id的编号不能相同
log.dir是存储数据的位置需要指定(不是日志)
Zookeeper.connect=你的zookeeper的IP：2182（多个用逗号隔开）
vi /etc]]></description><category></category></item><item><title><![CDATA[Flume自定义拦截器Interceptors]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107847685</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107847685</guid><author>GodXuzzZ</author><pubDate>Thu, 06 Aug 2020 19:28:19 +0800</pubDate><description><![CDATA[用java实现一个自定义拦截器

将上述图片的性别男设置为1，女设置为0，其他默认为2
java自定义拦截器
pom：添加flume-ng-core依赖

CustomInterceptor类：
import org.apache.flume.Context;
import org.apache.flume.Event;
import org.apache.flume.interceptor.Interceptor;
import java.util.List;

public class CustomIn]]></description><category></category></item><item><title><![CDATA[Flume日志收集]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107795266</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107795266</guid><author>GodXuzzZ</author><pubDate>Tue, 04 Aug 2020 20:20:19 +0800</pubDate><description><![CDATA[Apache Flume简介
Flume用于将多种来源的日志以流的方式传输至Hadoop或者其他目的地
一种可靠、可用的高效分布式数据收集服务
Flume拥有基于数据流上的简单灵活架构，支持容错、故障转移与恢复
由Cloudera 2009年捐赠给Apache，现为Apache顶级项目
Flume架构
Client：客户端，数据产生的地方，如Web服务器
Event：事件，指通过Agent传输的单个数据包，如日志数据通常对应一行数据
Agent：代理，一个独立的JVM进程
Flume以一个或多个Agent部]]></description><category></category></item><item><title><![CDATA[Scala]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107771830</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107771830</guid><author>GodXuzzZ</author><pubDate>Tue, 04 Aug 2020 08:30:28 +0800</pubDate><description><![CDATA[Scala简介
Scala是一种基于JVM的多范式编程语言，这里的范式可以理解为一种编程风格，比如面向对象编程就是一种范式。常见范式包括：面向过程、面向对象、泛型以及函数式编程
Scala的特点
静态类型
Scala的变量声明后不允许改变类型，换句话说所有变量和表达式的类型在编译时就已经完全确定。这一点和Java是一样的，反过来说像Python则是动态类型语言。
静态类型语言对IDE比较友好，IDE可以做到很好的代码感知能力，所以静态类型语言在开发大型复杂系统时更加效率。
静态类型语言可读性较好，多数静态类]]></description><category></category></item><item><title><![CDATA[Spark SQL精华及与Hive的集成]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107695503</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107695503</guid><author>GodXuzzZ</author><pubDate>Thu, 30 Jul 2020 18:26:42 +0800</pubDate><description><![CDATA[SQL on Hadoop
SQL是一种传统的用来进行数据分析的标准
Hive是原始的SQL-on-Hadoop解决方案
Impala：和Hive一样，提供了一种可以针对已有Hadoop数据编写SQL查询的方法
Presto：类似于Impala，未被主要供应商支持
Shark：Spark SQL的前身，设计目标是作为Hive的一个补充
Phoenix：基于HBase的开源SQL查询引擎
Spark SQL前身
Spark的初衷：让Hive运行在Spark之上
是对Hive的改造，继承了大量Hive代码，给优]]></description><category></category></item><item><title><![CDATA[Apache Spark分布式计算原理]]></title><link>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107642806</link><guid>https://blog.youkuaiyun.com/GodXuzzZ/article/details/107642806</guid><author>GodXuzzZ</author><pubDate>Tue, 28 Jul 2020 18:59:32 +0800</pubDate><description><![CDATA[Spark WordCount原理

为什么需要划分Stage
数据本地化
移动计算，而不是移动数据
保证一个Stage内不会发生数据移动
根据是否发生了数据移动判断是否划分了阶段
Spark Shuffle过程
在分区之间重新分配数据
父RDD中同一分区中的数据按照算子要求重新进入子RDD的不同分区中
中间结果写入磁盘
由子RDD拉取数据，而不是由父RDD推送
默认情况下，Shuffle不会改变分区数量



...]]></description><category></category></item></channel></rss>