-
DataWarehouse- 从面试定位自己的水平
1.讲一下什么是维度表和事实表。用户资料表算是什么类型表。 2. 维度建模属于第几范式,让你对维度建模改进,有什么思路吗。 3. 了解数据血缘分析吗,让你实现的话有什么技术方案,感觉难点在哪。 4. 了解数据分层吗,讲一下分四层或者五层各有什么优劣。自己摸你一个场景,给出不同的方案。 5. 数据口径不一致的问题一般在什么情况下会发生,怎么避免。- 0
- 0
- 43
-
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
- 80
-
Openldap- 大集群身份验证服务
无论在哪个行业,数据安全永远都是摆在首要地位。尤其是在大数据行业上,谁掌握了数据,谁就有可能成为下个亿万富豪的环境中,数据安全更为重要。大数据的安全可以从哪些地方入手,首先可以在身份验证上面入手。在大数据的集群设备上做好身份验证,可以使用openldap来做。 唯有通过openldap管理的账号才能对大数据系统进行访问,没有通过openldap创建的账号是不能login到Hadoop…- 0
- 0
- 61
-
Sqooop- 使用Sqoop进行数据的导入导出
Sqoop是Apache旗下的一个开源框架,专门用来做数据的导入和导出。 官网:https://sqoop.apache.org/ Sqoop的安装非常简单,只需要把下载下来的tar包解压设置两个环境变量就可以了 1.安装部署 下载版本:sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 官网:http://mirror.bit.edu.cn/apa…- 0
- 0
- 120
-
spark- PySparkSQL之PySpark解析Json集合数据
PySparkSQL之PySpark解析Json集合数据 数据样本 12341234123412342|asefr-3423|[{"name":"spark","score":"65"},{"name":"airlow","score":&quo…- 0
- 0
- 56
-
Spark- SparkSQL中 Row.getLong 出现NullPointerException错误的处理方法
在SparkSQL中获取Row的值,而且Row的字段允许null时,在取值的时候取到null赋值给新的变量名会报NullPointerException错误, 可以先用row.isNullAt(index)去判断该字段的值是否为空 首先上错误 修改为先初始化变量,判断row.isNullAt(6) 如果不为空就将值赋值给变量- 0
- 0
- 87
-
Hbase- Hbase客户端读写数据时的路由流程
1、客户端先到zookeeper查找hbase:meta所在的RegionServer服务器 2、去hbase:meta表查找自己所要的数据所在的region server 3、去目标region server上的region要自己的数据 可以看出客户端查找数据可以不经过master- 0
- 0
- 41
-
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
- 66
-
Spark- Spark Yarn模式下跑yarn-client无法初始化SparkConext,Over usage of virtual memory
在spark yarn模式下跑yarn-client时出现无法初始化SparkContext错误. 17/09/27 16:17:54 INFO mapreduce.Job: Task Id : attempt_1428293579539_0001_m_000003_0, Status : FAILED Container [pid=7847,containerID=containe…- 0
- 0
- 61
-
Spark- Spark基本工作原理
Spark特点: 1.分布式 spark读取数据时是把数据分布式存储到各个节点内存中 2.主要基于内存(少数情况基于磁盘,如shuffle阶段) 所有计算操作,都是针对多个节点上内存的数据,进行并行操作的 3.迭代式计算 对分布式节点内存中的数据进行处理,处理后的数据可能会移动到其他节点的内存中,当需要用到某些数据时,从这些节点的内存中就能找到,迭代出来使用 Spark与MapRed…- 0
- 0
- 71
-
Spark- Spark普通Shuffle操作的原理剖析
在spark中,什么情况下会发生shuffle? reduceByKey,groupByKey,sortByKey,countByKey,join,cogroup等操作。 默认的shuffle操作的原理剖析 假设有一个节点上面运行了4个 ShuffleMapTask,然后这个节点上只有2个 cpu core。假如有另外一台节点,上面也运行了4个ResultTask,现在呢,正等着要去…- 0
- 0
- 42
-
Spark- 共享变量
Shared Variables Normally, when a function passed to a Spark operation (such as map or reduce) is executed on a remote cluster node, it works on separate copies of all the variables used in the…- 0
- 0
- 67
-
Hadoop- 分布式资源管理YARN架构讲解
YARN是分布式资源管理,每一台机器都要去管理该台计算机的资源,Yarn负责为MapReduce程序分配运算硬件资源。每一台机器的管理者叫 NodeManager,整个集群的管理者管理着整个集群的NodeManager,叫 ResourceManager。资源调度和资源隔离是YARN作为一个资源管理系统最重要和最基础的两个功能。资源调度由 ResourceManager 完成,而资源…- 0
- 0
- 79
-
Spark- Spark从SFTP中读取zip压缩文件数据做计算
我们遇到个特别的需求,一个数据接入的流程跑的太慢,需要升级为用大数据方式去处理,提高效率。 数据: 数据csv文件用Zip 压缩后放置在SFTP中 数据来源: SFTP 数据操作: 文件和它的压缩包一致,后缀不同。文件名中包含渠道、日期、操作标记("S"追加,"N"全量,"D"删除) 升级前的操作方式: she…- 0
- 0
- 100
-
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
- 125
-
Linux- AWS之EC2大数据集群定时开关机
众所周知,云计算就是在计算你的钱,每当ec2开起来就要开始计费。当用户购买了一个庞大的与服务器做一个集群,尤其是用来做大数据集群,这些服务器的配置相当高,每台服务器所需要的费用不菲。其实在很多时候没能够完全利用起其全部的资源,尤其在空闲时间,在夜间没有作业的情况下,这些服务器完全处于空闲的状态,却时刻在计费,这是相当不划算的。于是有这样一个方案,我们是不是可以在机器处于空闲的状态时将…- 0
- 0
- 102
-
Python- 贪婪与非贪婪
python运行匹配时,如果没有人为限定,默认是贪婪模式。 import re a = 'python 22222java34bigdata' r = re.findall('[a-z]{3}',a) # 打印三个字符 rr = re.findall('[a-z]{3,6}',a) # 匹配到的长度最小为3,最长不能超过 r…- 0
- 0
- 79
-
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
- 100
-
Storm- 使用Storm实现词频汇总
需求:读取指定目录的数据,并实现单词计数的功能 实现方案: Spout来读取指定目录的数据,作为后续Bolt处理的input 使用一个Bolt把input 的数据,切割分开,我们按照逗号进分割 使用一个Bolt来进行最终的单词次数统计操作并输出 拓扑设计:DataSourceSpout ==>SpiltBolt ==>CountBolt Storm编程注意,…- 0
- 0
- 62
-
Hive- Hive 按时间定期插入分区表
写个shell脚本Hive 按时间定期插入分区表,由于今天统计的是昨天的数据所以日期减一。 #!/bin/bash DT=`date -d '-1 day' "+%Y-%m-%d"` #如果某天的数据有误需要重跑 if [ $1 ];then DT=$1 fi SQL=" insert overwrite table t…- 0
- 0
- 31
-
Spark- Checkpoint原理剖析
Checkpoint,是Spark 提供的一个比较高级的功能。有的时候,比如说,我们的 Spark 应用程序,特别的复杂,然后从初始的RDD开始,到最后拯个应用程序完成,有非常多的步骤,比如超过20个transformation 操作。而且整个应用运行的时间也特别的长,比如通常要运行1-5小时。 在上述的情况下,就比较适合使用checkpoint 功能。因为,对于特别复杂的 Spar…- 0
- 0
- 62
-
ERROR- 开发常见error
一,数据插入MySql中出现中文乱码 解决办法有: 1。新建数据库选择 create database 'GG' CHARACTER SET 'utf8 ' COLLATE 'utf8_general_ci '; 2。建表的时候: CREATE TABLE `TableA` (`ID` varchar(40) NOT NUL…- 0
- 0
- 50
-
-
Spark-Spark setMaster & WordCount Demo
Spark setMaster源码 /** * The master URL to connect to, such as "local" to run locally with one thread, "local[4]" to * run locally with 4 cores, or "spark://master:7077&…- 0
- 0
- 80
-
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
- 72
-
Hadoop- Hadoop环境搭建
Windows下Hadoop的安装 准备工具:64位的JDK,Hadoop安装包(我使用的是2.6.1) JDK下载地址 官网: http://www.oracle.com/technetwork/java/javase/downloads/index.html Hadoop下载地址 官网:http://hadoop.apache.org/ 1.安装JDK环境,配置系统环境变量. 选…- 0
- 0
- 54
-
Spark- 自定义排序
考察spark自定义排序 方式一:自定义一个类继承Ordered和序列化,Driver端将数据变成RDD,整理数据转成自定义类类型的RDD,使用本身排序即可。 package com.rz.spark.base import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} // 自定…- 0
- 0
- 57
-
Spark- 使用hiveContext时提交作业报错
在spark上操作hive时不需要搭建hive环境,只需要从现有的hive集群中hive的conf目录下拷贝 hive-site.xml 到spark的conf目录下即可提交程序运行 出现报错 Caused by: org.datanucleus.exceptions.NucleusException: Attempt to invoke the "BONEC…- 0
- 0
- 39
-
Redis- 内存数据库Redis之安装部署
内存数据库Redis之安装部署 Redis是一款非关系型,key-value存储的内存数据库,Redis数据库完全在内存中,使用磁盘仅用于持久性。Redis的速度非常快,每秒能执行约11万集合,每秒约81000+条记录。 支持丰富的数据类型:Redis支持字符串、列表、集合、有序集合散列数据类型,这使得它非常容易解决各种各样的问题。把redis看成java的一个hashmap你就入门…- 0
- 0
- 82
-
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
- 73
-
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
- 58
-
JAVA- 数据库连接池原理
第一次Java程序要在MySQL中执行一条语句,那么就必须建立一个Connection对象,代表了与MySQL数据库的连接通过直接发送你要执行的SQL语句之后,就会调用Connection.close()来关闭和销毁与数据库的连接。为什么要立即关闭呢?因为数据库的连接是一种很重的资源,代表了网络连接、IO等资源。所以如果不是用的话就需要尽早关闭,以避免资源浪费。 JDBC的劣势与不足…- 0
- 0
- 58
-
Hive- Hive Web Interface
当我们安装好hive时候,我们启动hive的UI界面的时候,命令: hive –-service hwi ,报错,没有war包 我们查看hive/conf/hive-default.xml.template,查找hwi 把这3台属性复制,添加到hive-site.xml里面, vim hive-site.xml <property> <name>hive.hw…- 0
- 0
- 90
-
Hadoop- HDFS的Safemode
Hadoop- HDFS的Safemode hadoop启动时,NameNode启动完后就开始进入安全模式,等待DataNode向NameNode发送block report ,当datanode blocks / total blocks = 99.99%,此时安全模式才会退出 安全模式下的操作: 可以查看文件系统的文件 在安全模式期间我们有些操作是不能进行的,比如不能改变文件系统…- 0
- 0
- 79
-
Storm- 使用Storm实现累积求和的操作
需求:1+2+3+... = ??? 实现方案: Spout发出数字作为input 使用Bolt来处理业务逻辑:求和 将结果输出到控制台 拓扑设计:DataSourceSpout -->SumBolt→输出 package com.imooc.bigdata; import org.apache.storm.Config; import org.apache.st…- 0
- 0
- 64