-
HIVE- SCD缓慢变化维
SCD缓慢变化维,比如一个用户维表,用户属性会变化,但是不会变化很剧烈,可能一年只会变化一两次,也不会所有用户的属性都会有变化,只有少量的数据发生变化,所以叫缓慢变化维。这种问题就是由于维度的变化所造成的。 解决方式: 是否保留历史数据 保留多久历史数据 历史状态如何与事实表关联 SCD1 保留最新状态 注册日期 用户编号 手机号码 2019-01-01 0001 111111 20…... 牛肉丸没牛肉
- 0
- 0
- 73
-
Hadoop- NameNode和Secondary NameNode元数据管理机制
元数据的存储机制A、内存中有一份完整的元数据(内存meta data)B、磁盘有一个“准完整”的元数据镜像(fsimage)文件(在namenode的工作目录中)C、用于衔接内存metadata和持久化元数据镜像fsimage之间的操作日志(edits文件)NameNode和Secondary NameNode元数据管理机制客户端每次对文件的操作,如果涉及到元数据的更新(读除外),比如…... 牛肉丸没牛肉
- 0
- 0
- 75
-
Scala- Double类型工具类
格式化分数,按照指定小数位四舍五入工具类 package com.rz.util object NumberUtils { /** * 格式化小数 * @param num Double对象 * @param scale 四舍五入的位数 * @return 格式化后的小数 */ def formatDouble(num: Double, scale: Int)={ val decim…... 牛肉丸没牛肉
- 0
- 0
- 70
-
Spark- Spark基本工作原理
Spark特点: 1.分布式 spark读取数据时是把数据分布式存储到各个节点内存中 2.主要基于内存(少数情况基于磁盘,如shuffle阶段) 所有计算操作,都是针对多个节点上内存的数据,进行并行操作的 3.迭代式计算 对分布式节点内存中的数据进行处理,处理后的数据可能会移动到其他节点的内存中,当需要用到某些数据时,从这些节点的内存中就能找到,迭代出来使用 Spark与MapRed…... 牛肉丸没牛肉
- 0
- 0
- 97
-
DataWarehouse- 从面试定位自己的水平
1.讲一下什么是维度表和事实表。用户资料表算是什么类型表。 2. 维度建模属于第几范式,让你对维度建模改进,有什么思路吗。 3. 了解数据血缘分析吗,让你实现的话有什么技术方案,感觉难点在哪。 4. 了解数据分层吗,讲一下分四层或者五层各有什么优劣。自己摸你一个场景,给出不同的方案。 5. 数据口径不一致的问题一般在什么情况下会发生,怎么避免。 ... 牛肉丸没牛肉
- 0
- 0
- 63
-
Spark- Transformation实战
RDD的算子分为两类,是 Trans formation(Lazy),一类是 Action(触发任务执行 RDD不存在真正要计算的数据,而是记录了RDD的转换关系(调用了什么方法,传入什么函数) RDD的 Trans formation的特点 1. lazy 2.生成新的RDD package cn.rzlee.spark.core import org.…... 牛肉丸没牛肉
- 0
- 0
- 89
-
Hive- Hive安装
Hive安装 1.1下载Hive安装包 官网:http://hive.apache.org/downloads.html 个人建议到这里下载:http://apache.forsale.plus/ 1.2将hive文件上传到HADOOP集群,并解压 将文件上传到 /usr ,解压 tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /usr/ 重命名:…... 牛肉丸没牛肉
- 0
- 0
- 83
-
JAVA- 清除数组重复元素
清除数组重复元素并打印新数组。 1 import java.util.*; 2 public class Repeat { 3 4 public static void main(String[] args) { 5 // TODO Auto-generated method stub 6 int arr[]={10,1,2,3,2,1,10}; 7 arr=clearRepeat(…... 牛肉丸没牛肉
- 0
- 0
- 71
-
Python- NumPy
NumPy包括的内容 NumPy系统是 Python的一种开源的数值计算扩展,是一个用 python实现的科学计算包。包括: 一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组,称为 ndarray(N-dimensional array object ) 用于对整组数据进行快速运算的标准数学函数, func( universal function object) 用于整…... 牛肉丸没牛肉
- 0
- 0
- 188
-
Hive- Hive 的基本操作
创建数据库 create database db_hive; use db_hive; create database if not exists db_hive_02; create database if not exists db_hive_01 location '/user/rz_lee/warehouse/db_hive_01.db'; //指定数据库…... 牛肉丸没牛肉
- 0
- 0
- 105
-
JAVA-关键字&标识符
关键字: 关键字就是在java程序中具备特殊含义的标识符。关键字一般用于描述一个程序的结构或者表示数据类型。他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名。 1.1 常见的关键字 备注:不必死记硬背,如果使用关键字作为标识符,编译器能提示错误。 goto 是java的保留关键字,意思是java并没有使用goto,以后是否使用未定。 &nb…... 牛肉丸没牛肉
- 0
- 0
- 61
-
Openldap- 大集群身份验证服务
无论在哪个行业,数据安全永远都是摆在首要地位。尤其是在大数据行业上,谁掌握了数据,谁就有可能成为下个亿万富豪的环境中,数据安全更为重要。大数据的安全可以从哪些地方入手,首先可以在身份验证上面入手。在大数据的集群设备上做好身份验证,可以使用openldap来做。 唯有通过openldap管理的账号才能对大数据系统进行访问,没有通过openldap创建的账号是不能login到Hadoop…... 牛肉丸没牛肉
- 0
- 0
- 77
-
Hadoop- Hadoop详解
首先所有知识以官网为准,所有的内容在官网上都有展示,所有的变动与改进,新增内容都以官网为准。hadoop.apache.org Hadoop是一个开源的可拓展的分布式并行处理计算平台,利用服务器集群根据用户的自定义业务逻辑,对海量数据进行分布式处理。Hadoop提供了一个可靠的共享存储和分析系统,Hadoop的核心三大组件有HDFS(分布式文件系统),MapReduce(分布式运算编程框架),YA…... 牛肉丸没牛肉
- 0
- 0
- 169
-
Spark- Linux下安装Spark
Spark- Linux下安装Spark 前期部署 1.JDK安装,配置PATH 可以参考之前配置hadoop等配置 2.下载spark-1.6.1-bin-hadoop2.6.tgz,并上传到服务器解压 [root@srv01 ~]# tar -xvzf spark-1.6.1-hadoop2.6.tgz /usr/spark-1.6.1-hadoop2.6 3.在 /usr 下…... 牛肉丸没牛肉
- 0
- 0
- 94
-
Linux下查看Python安装了哪些脚本模块
1.什么是rpm ? rpm 即RedHat Package Management,是RedHat的发明之一 。现在包括OpenLinux、fedora、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用 rpm -ql python... 牛肉丸没牛肉
- 0
- 0
- 100
-
Spark- 根据ip地址计算归属地
主要考察的是广播变量的使用: 1、将要广播的数据 IP 规则数据存放在HDFS上,(广播出去的内容一旦广播出去产就不能改变了,如果需要实时改变的规则,可以将规则放到Redis中) 2、在Spark中转成RDD,然后收集到Driver端, 3、把 IP 规则数据广播到Executor中。Driver端广播变量的引用是怎样跑到 Executor中的呢? Task在Driver端生成的,…... 牛肉丸没牛肉
- 0
- 0
- 156
-
Zookeeper- Error contacting service. It is probably not running解决方案和原理
搭建启动Zookeeper集群出现Error contacting service. It is probably not running解决方案和原理 1.关闭防火墙 1 2 3 4 [root@srv01 bin]# zkServer.sh start JMX enabled by default Using config: /usr/zookeeper/bin/../con…... 牛肉丸没牛肉
- 0
- 0
- 145
-
Hadoop- MapReduce分布式计算框架原理
分布式计算:原则:移动计算而尽可能减少移动数据(减少网络开销)分布式计算其实就是将单台机器上的计算拓展到多台机器上并行计算。 MapReduce是一种编程模型。Hadoop MapReduce采用Master/slave 结构。只要按照其编程规范,只需要编写少量的业务逻辑代码即可实现一个强大的海量数据并发处理程序。核心思想是:分而治之。Mapper负责分,把一个复杂的业务,任…... 牛肉丸没牛肉
- 0
- 0
- 109
-
Zeppelin- Linux下安装Zeppelin
前期部署: 下载,解压,配置PATH环境(编辑/etc/profile文件,记得source一下该文件) zepplin配置参考文档:https://zeppelin.apache.org/docs/0.7.2/install/configuration.html 往conf/zeppelin-env.sh文件中添加端口号 往底部添加 export ZEPPLELIN_PORT=8090 修改配置…... 牛肉丸没牛肉
- 0
- 0
- 106
-
Spark- ERROR Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
报错 G:\APP\JDK\bin\java -Didea.launcher.port=7532 "-Didea.launcher.bin.path=G:\APP\IntelliJ IDEA\bin" -Dfile.encoding=UTF-8 -classpath "G:\APP\JDK\jre\lib\charsets.jar;G:\APP\JDK\…... 牛肉丸没牛肉
- 0
- 0
- 172
-
Hadoop- MapReduce在实际应用中常见的调优
1、Reduce Task Number 通常来说一个block就对应一个map任务进行处理,reduce任务如果人工不去设置干预的话就一个reduce。reduce任务的个数可以通过在程序中设置 job.setNumReduceTasks(个数); ,也可在配置文件上设置reduce任务个数,默认为1, 或者在代码config中配置 Configuration configura…... 牛肉丸没牛肉
- 0
- 0
- 84
-
Spark- SparkSQL中 Row.getLong 出现NullPointerException错误的处理方法
在SparkSQL中获取Row的值,而且Row的字段允许null时,在取值的时候取到null赋值给新的变量名会报NullPointerException错误, 可以先用row.isNullAt(index)去判断该字段的值是否为空 首先上错误 修改为先初始化变量,判断row.isNullAt(6) 如果不为空就将值赋值给变量 ... 牛肉丸没牛肉
- 0
- 0
- 117
-
Kafka- Kafka架构功能
Kafka是一个高吞吐量的分布式消息系统,一个分布式的发布-订阅消息系统。Kafka是一种快速,可拓展的,设计内在就是分布式的,分区的可复制的提交日志服务。 Apache Kafka与传统消息系统相比,有以下不同: 它设计为一个分布式系统,易于向外拓展; 它同时为发布和订阅提供高吞吐量; 它支持多订阅者,当失败时能自动平衡消费者; 它将消息持久化到磁盘,因此可用于批量消费,例如ETL…... 牛肉丸没牛肉
- 0
- 0
- 55
-
Spark- Spark从SFTP中读取zip压缩文件数据做计算
我们遇到个特别的需求,一个数据接入的流程跑的太慢,需要升级为用大数据方式去处理,提高效率。 数据: 数据csv文件用Zip 压缩后放置在SFTP中 数据来源: SFTP 数据操作: 文件和它的压缩包一致,后缀不同。文件名中包含渠道、日期、操作标记("S"追加,"N"全量,"D"删除) 升级前的操作方式: she…... 牛肉丸没牛肉
- 0
- 0
- 129
-
Python- 文件读写
1.打开文件 读写文件是最常见的 IO 操作。Python 内置了读写文件的函数,方便了文件的 IO 操作。 文件读写之前需要打开文件,确定文件的读写模式。open 函数用来打开文件,语法如下: open(name [.mode[.buffering]]) open 函数使用一个文件名作为唯一的强制参数,然后返回一个文件对象。模式(mode)和缓冲区(buffering)参数都是可选…... 牛肉丸没牛肉
- 0
- 0
- 82
-
Hadoop HA- hadoop集群部署
前期部署,至少准备3台服务器(可以是虚拟机) 1、linux系统环境准备 ip地址配置 hostname配置 hosts映射配置 关闭防火墙 service iptables stop ,也可以设置防火墙不开机自启动 chkconfig iptables off init启动级别修改 2.java环境的配置 上传jdk,解压,修改/etc/profile 3.zookeeper集群…... 牛肉丸没牛肉
- 0
- 0
- 118
-
Spark- Checkpoint原理剖析
Checkpoint,是Spark 提供的一个比较高级的功能。有的时候,比如说,我们的 Spark 应用程序,特别的复杂,然后从初始的RDD开始,到最后拯个应用程序完成,有非常多的步骤,比如超过20个transformation 操作。而且整个应用运行的时间也特别的长,比如通常要运行1-5小时。 在上述的情况下,就比较适合使用checkpoint 功能。因为,对于特别复杂的 Spar…... 牛肉丸没牛肉
- 0
- 0
- 93
-
Spark- 流量日志分析
日志生成 package zx.Utils import java.io.{File, FileWriter} import java.util.Calendar import org.apache.commons.lang.time.{DateUtils, FastDateFormat} import scala.collection.mutable.ArrayBuffer imp…... 牛肉丸没牛肉
- 0
- 0
- 92
-
Hadoop HA- zookeeper安装配置
安装集群 1.1 虚拟机: 3台安装好JDK的centos Linux虚拟机 1.2 安装包: 把下载好的zookeeper安装包,官网:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.8/ 上传到服务器。 1.3解压 tar –xvzf zookeeper-3.4.8.tar.gz ,解压后放进 /usr/ 即可 …... 牛肉丸没牛肉
- 0
- 0
- 64
-
Hadoop- 流量汇总程序之如何实现hadoop的序列化接口及代码实现
流量汇总程序需求 统计每一个用户(手机号)锁耗费的总上行流量、下行流量、总流量。 流程剖析 阶段:map 读取一行数据,切分字段, 抽取手机号,上行流量,下行流量 context.write(手机号,bean) 阶段:reduce 汇总遍历每个bean,将其中的上行流量,下行流量分别累加,得到一个新的bean context.write(手机号,新bean); 代码实现…... 牛肉丸没牛肉
- 0
- 0
- 90
-
Javascript- Javascript学习
Javasrcipt的引入方式 内部引入方式 直接将javascript代码写入到<script type="text/javascript"></script> 外部引入方式 需要创建一个.js文件,在里面书写javascript 代码,然后在html文件中通过script标签的src 属性引入外部的js 文件 <script t…... 牛肉丸没牛肉
- 0
- 0
- 106
-
Spark- 优化后的 shuffle 操作原理剖析
在spark新版本中,引入了 consolidation 机制,也就是说提出了ShuffleGroup的概念。一个 ShuffleMapTask 将数据写入 ResultTask 数量的本地文本,这个不会变。但是,当下一个 ShuffleMapTask 运行的时候,可以直接将数据写入之前的 ShuffleMapTask 的本地文件。相当于是,对多个 ShuffleMapTask 输出…... 牛肉丸没牛肉
- 0
- 0
- 54
-
Spark- ERROR Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
运行 mport org.apache.log4j.{Level, Logger} import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * Created by Lee_Rz on 2017/8/30. */ object SparkDemo { def main(args: A…... 牛肉丸没牛肉
- 0
- 0
- 143
-
JAVA- 成员变量与局部变量的区别
成员变量与局部变量的区别 成员变量是定义在方法之外,类之内的 局部变量是定义在方法之内的。 作用上的区别: 1.成员变量的作用是用于描述一类事物的公共属性的。 2.局部变量的作用就是提供一个变量给方法内部使用而已。 生命周期的区别: 1.成员变量随着对象的创建而存在,随着对象的消失而消失。 2.局部变量在调用了对应的方法时执行到了创建该变量的语句时存在,局部变量一旦出了自己的作用域那…... 牛肉丸没牛肉
- 0
- 0
- 57
-
Spark- 性能优化
由于Spark 的计算本质是基于内存的,所以Spark的性能城西的性能可能因为集群中的任何因素出现瓶颈:CPU、网络带宽、或者是内存。如果内存能够容得下所有的数据,那么网络传输和通信就会导致性能出现频惊。但是如果内存比较紧张,不足以放下所有的数据(比如在针对10亿以上的数据量进行计算时),还是需要对内存的使用进行性能优化的,比如说使用一些手段来减少内存的消耗。 Spark性能优化,其…... 牛肉丸没牛肉
- 0
- 0
- 86
-
Hadoop- 分布式资源管理YARN架构讲解
YARN是分布式资源管理,每一台机器都要去管理该台计算机的资源,Yarn负责为MapReduce程序分配运算硬件资源。每一台机器的管理者叫 NodeManager,整个集群的管理者管理着整个集群的NodeManager,叫 ResourceManager。资源调度和资源隔离是YARN作为一个资源管理系统最重要和最基础的两个功能。资源调度由 ResourceManager 完成,而资源…... 牛肉丸没牛肉
- 0
- 0
- 99
-
Spark- Spark普通Shuffle操作的原理剖析
在spark中,什么情况下会发生shuffle? reduceByKey,groupByKey,sortByKey,countByKey,join,cogroup等操作。 默认的shuffle操作的原理剖析 假设有一个节点上面运行了4个 ShuffleMapTask,然后这个节点上只有2个 cpu core。假如有另外一台节点,上面也运行了4个ResultTask,现在呢,正等着要去…... 牛肉丸没牛肉
- 0
- 0
- 58
-
JQuery- JQuery学习
jQuery与JavaScript加载页面的区别 1.JavaScript传统的方式页面加载会存在覆盖问题,加载比jQuery慢(整个页面加载完毕<包含里面的其他内容,比如图片>) 2.jQuery的加载比JavaScript加载要快!(当整个dom数结构绘制完毕就会加载) 3.jQuery不存在覆盖问题,加载的时候是顺序执行 <!DOCTYPE html> …... 牛肉丸没牛肉
- 0
- 0
- 84
-
JAVA-三大语句(选择语句、条件语句、循环语句)
1 跳出指定的for循环体,和goto很像 1 2 3 4 5 6 7 8 1 K:for(int i=0;i<3;i++){//给这个for循环体取一个名字为K 2 for(int j=0;j<3;j++){ 3 if(j==1){break K;}//如果你不指跳出的for循环,那么就是跳出本地for循环,这里指定K,则调试for循环名称为K的…... 牛肉丸没牛肉
- 0
- 0
- 56
-
大数据- 自定义Log4j日记
1.新建一个java project,在src下新建一个lib文件夹和 rescources 文件夹,resources文件夹不能命名错误。 点击File——》project Structure...打开根据下图操作 把相关jar包放进lib文件夹里并绑定。 新建一个java文件 Log4jTest.java 和 HadoopLog4j.java 1 2 3 4 5 6…... 牛肉丸没牛肉
- 0
- 0
- 51
-
HIVE- 数据倾斜
数据倾斜就是由于数据分布不均匀,数据大量集中到一点上,造成数据热点。大多数情况下,分为一下三种情况: 1.map端执行比较快,reduce执行很慢,因为partition造成的数据倾斜。 2.某些reduce很快,某些reduce很慢,也是因为partition造成的数据倾斜。 3.某些map执行很快,某些map执行很慢,这是因为数据本身的分布的不合理性造成的。 造成上面reduce…... 牛肉丸没牛肉
- 0
- 0
- 63
-
spark- PySparkSQL之PySpark解析Json集合数据
PySparkSQL之PySpark解析Json集合数据 数据样本 12341234123412342|asefr-3423|[{"name":"spark","score":"65"},{"name":"airlow","score":&quo…... 牛肉丸没牛肉
- 0
- 0
- 81
-
JAVA- JDBC之DBHelper
<span style="font-family: 'Microsoft YaHei'; font-size: 18px;">package com.myit.util; import java.lang.reflect.Field; import java.sql.Connection; import java.sql.Drive…... 牛肉丸没牛肉
- 0
- 0
- 57
-
JAVA- JSP中解决无法在Cookie当中保存中文字符的问题
因为cookie的值是ASCII字符,不能直接把自定义cookie的值直接赋值为中文,但是要实现这个功能,还是有方法的。 1.java中已经给我们提供了方法,此时只需要导入该包就行 <%@ page language="java" import="java.util.*,java.net.*" contentType="text…... 牛肉丸没牛肉
- 0
- 0
- 58
-
Spark- SparkStreaming可更新状态的实例
Producer package zx.zx.sparkkafka import java.util.Properties import kafka.producer.{KeyedMessage, Producer, ProducerConfig} import scala.util.Random /** * Created by 166 on 2017/9/6. */ object…... 牛肉丸没牛肉
- 0
- 0
- 110
-
Anaconda常用命令大全
1.使用conda 首先我们将要确认你已经安装好了conda 配置环境 下一步我们将通过创建几个环境来展示conda的环境管理功能。使你更加轻松的了解关于环境的一切。我们将学习如何确认你在哪个环境中,以及如何做复制一个环境作为备份。 2.测试python 然后我们将检查哪一个版本的python可以被安装,以及安装另一个版本的python,还有在两个版本的python之间的切换。 检查包 1)我们将…... SparkGor
- 0
- 0
- 135
-
Kafka- Spark消费Kafka
在高版本的API中 val brokers = properties.getProperty("kafka.host.list") val topics = Set(properties.getProperty("kafka.application.topic")) val kafkaParams = Map[String, String]( …... 牛肉丸没牛肉
- 0
- 0
- 96
-
CDH- 集群时间同步ntp问题解决
在CDH集群中发现有两台机器获取不到心跳(),导致监控不了机器状态,出现告警 可以使用ntpstat检查与ntp 服务器的时间偏差状态 使用 ntpstat 发现没有同步到ntp时间服务器,运行 ntpdate ip 添加时间同步服务器出现报错 the NTP socket is in use, exiting 网上搜了一下,大部分的建议是…... 牛肉丸没牛肉
- 0
- 0
- 71
-
Spark- 数据清洗
输入输出转化工具类 package com.rz.mobile_tag.log import org.apache.spark.sql.Row import org.apache.spark.sql.types.{LongType, StringType, StructField, StructType} /** * 访问日志转换(输入==>输出)工具类 */ object A…... 牛肉丸没牛肉
- 0
- 0
- 110
-
Hadoop- Wordcount程序原理及代码实现
如果对Hadoop- MapReduce分布式计算框架原理还不熟悉的可以先了解一下它,因为本文的wordcount程序实现就是MapReduce分而治之最经典的一个范例。 单词计数(wordcount)主要步骤: 1.读数据 2.按行处理 3.按空格切分行内单词 4.HashMap(单词,value+1) 等分给自己的数据片全部读取完之后 5.将HashMap按照首字母范围分为3个H…... 牛肉丸没牛肉
- 0
- 0
- 95













































