-
Spark- 优化后的 shuffle 操作原理剖析
在spark新版本中,引入了 consolidation 机制,也就是说提出了ShuffleGroup的概念。一个 ShuffleMapTask 将数据写入 ResultTask 数量的本地文本,这个不会变。但是,当下一个 ShuffleMapTask 运行的时候,可以直接将数据写入之前的 ShuffleMapTask 的本地文件。相当于是,对多个 ShuffleMapTask 输出…- 0
- 0
- 48
-
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
- 95
-
Hadoop- NameNode和Secondary NameNode元数据管理机制
元数据的存储机制A、内存中有一份完整的元数据(内存meta data)B、磁盘有一个“准完整”的元数据镜像(fsimage)文件(在namenode的工作目录中)C、用于衔接内存metadata和持久化元数据镜像fsimage之间的操作日志(edits文件)NameNode和Secondary NameNode元数据管理机制客户端每次对文件的操作,如果涉及到元数据的更新(读除外),比如…- 0
- 0
- 52
-
Spark- RDD简介
Spark里面提供了一个比较重要的抽象——弹性分布式数据集(resilient distributed dataset),简称RDD。弹性:数据可大可小,可分布在内存或磁盘,当某台机器宕机时,能够按照RDD的liveage重新计算,从而恢复。 RDD有5个特性: 1.一个分区列表,用于并行计算,每个分区对应一个原子数据集,作为这个分区的数据输入 2.计算这个RDD某个分区数据(这个分…- 0
- 0
- 68
-
DataWarehouse- 从面试定位自己的水平
1.讲一下什么是维度表和事实表。用户资料表算是什么类型表。 2. 维度建模属于第几范式,让你对维度建模改进,有什么思路吗。 3. 了解数据血缘分析吗,让你实现的话有什么技术方案,感觉难点在哪。 4. 了解数据分层吗,讲一下分四层或者五层各有什么优劣。自己摸你一个场景,给出不同的方案。 5. 数据口径不一致的问题一般在什么情况下会发生,怎么避免。- 0
- 0
- 58
-
Hadoop- 分布式资源管理YARN架构讲解
YARN是分布式资源管理,每一台机器都要去管理该台计算机的资源,Yarn负责为MapReduce程序分配运算硬件资源。每一台机器的管理者叫 NodeManager,整个集群的管理者管理着整个集群的NodeManager,叫 ResourceManager。资源调度和资源隔离是YARN作为一个资源管理系统最重要和最基础的两个功能。资源调度由 ResourceManager 完成,而资源…- 0
- 0
- 88
-
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
- 54
-
Hadoop- HDFS的API操作
1、引入依赖 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.6.1</version> </dependency> 注:如需手动引入ja…- 0
- 0
- 124
-
Spark- Checkpoint原理剖析
Checkpoint,是Spark 提供的一个比较高级的功能。有的时候,比如说,我们的 Spark 应用程序,特别的复杂,然后从初始的RDD开始,到最后拯个应用程序完成,有非常多的步骤,比如超过20个transformation 操作。而且整个应用运行的时间也特别的长,比如通常要运行1-5小时。 在上述的情况下,就比较适合使用checkpoint 功能。因为,对于特别复杂的 Spar…- 0
- 0
- 75
-
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
- 68
-
Hadoop- MapReduce分布式计算框架原理
分布式计算:原则:移动计算而尽可能减少移动数据(减少网络开销)分布式计算其实就是将单台机器上的计算拓展到多台机器上并行计算。 MapReduce是一种编程模型。Hadoop MapReduce采用Master/slave 结构。只要按照其编程规范,只需要编写少量的业务逻辑代码即可实现一个强大的海量数据并发处理程序。核心思想是:分而治之。Mapper负责分,把一个复杂的业务,任…- 0
- 0
- 78
-
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
- 89
-
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
- 53
-
Hadoop- HDFS的Safemode
Hadoop- HDFS的Safemode hadoop启动时,NameNode启动完后就开始进入安全模式,等待DataNode向NameNode发送block report ,当datanode blocks / total blocks = 99.99%,此时安全模式才会退出 安全模式下的操作: 可以查看文件系统的文件 在安全模式期间我们有些操作是不能进行的,比如不能改变文件系统…- 0
- 0
- 96
-
激活idea2018
首先下载安装完成后,打开hosts文件,新增一条路由: 0.0.0.0 account.jetbrains.com 打开软件输入序列码: EB101IWSWD-eyJsaWNlbnNlSWQiOiJFQjEwMUlXU1dEIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6I…- 0
- 0
- 97
-
Spark- 常见问题
记录spark使用中常见问题 SparkSQL 日期解析时用到SimpleDateFormat, SimpleDateFormat是线程不安全的。可以使用 FastDateFormat 如: import org.apache.commons.lang3.time.FastDateFormat // 输入文件日期时间格式 // [10/Nov/2018:00:01:02 +0800]…- 0
- 0
- 75
-
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
- 70
-
Spark- 性能优化
由于Spark 的计算本质是基于内存的,所以Spark的性能城西的性能可能因为集群中的任何因素出现瓶颈:CPU、网络带宽、或者是内存。如果内存能够容得下所有的数据,那么网络传输和通信就会导致性能出现频惊。但是如果内存比较紧张,不足以放下所有的数据(比如在针对10亿以上的数据量进行计算时),还是需要对内存的使用进行性能优化的,比如说使用一些手段来减少内存的消耗。 Spark性能优化,其…- 0
- 0
- 72
-
Spark- Action实战
Spark- Action实战 package cn.rzlee.spark.core import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} object ActionOperation { def main(args: Array[String]): Unit…- 0
- 0
- 61
-
Hadoop- Wordcount程序原理及代码实现
如果对Hadoop- MapReduce分布式计算框架原理还不熟悉的可以先了解一下它,因为本文的wordcount程序实现就是MapReduce分而治之最经典的一个范例。 单词计数(wordcount)主要步骤: 1.读数据 2.按行处理 3.按空格切分行内单词 4.HashMap(单词,value+1) 等分给自己的数据片全部读取完之后 5.将HashMap按照首字母范围分为3个H…- 0
- 0
- 82
-
Spark- 计算每个学科最受欢迎的老师
日志类型 测试数据 http://bigdata.myit.com/zhangsan http://bigdata.myit.com/zhangsan http://bigdata.myit.com/zhangsan http://bigdata.myit.com/zhangsan http://bigdata.myit.com/zhangsan http://java.myit.c…- 0
- 0
- 79
-
Spark- 使用第三方依赖解析IP地址
使用 github上已有的开源项目 1)git clone https://github.com/wzhe06/ipdatabase.git 2)编译下载的项目: mvn clean package- DskipTests 3)安装jar包到自己的 maven仓库 mvn install: install-file -Dfile=${编译的jar包路径}/target/ipdatab…- 0
- 0
- 101
-
Hadoop- MapReduce在实际应用中常见的调优
1、Reduce Task Number 通常来说一个block就对应一个map任务进行处理,reduce任务如果人工不去设置干预的话就一个reduce。reduce任务的个数可以通过在程序中设置 job.setNumReduceTasks(个数); ,也可在配置文件上设置reduce任务个数,默认为1, 或者在代码config中配置 Configuration configura…- 0
- 0
- 78
-
CDH- 集群时间同步ntp问题解决
在CDH集群中发现有两台机器获取不到心跳(),导致监控不了机器状态,出现告警 可以使用ntpstat检查与ntp 服务器的时间偏差状态 使用 ntpstat 发现没有同步到ntp时间服务器,运行 ntpdate ip 添加时间同步服务器出现报错 the NTP socket is in use, exiting 网上搜了一下,大部分的建议是…- 0
- 0
- 63
-
spark- PySparkSQL之PySpark解析Json集合数据
PySparkSQL之PySpark解析Json集合数据 数据样本 12341234123412342|asefr-3423|[{"name":"spark","score":"65"},{"name":"airlow","score":&quo…- 0
- 0
- 69
-
大数据- 自定义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
- 45
-
Spark- RDD持久化
官方原文: RDD Persistence One of the most important capabilities in Spark is persisting (or caching) a dataset in memory across operations. When you persist an RDD, each node stores any partitions …- 0
- 0
- 81
-
Hadoop- 流量汇总程序之如何实现hadoop的序列化接口及代码实现
流量汇总程序需求 统计每一个用户(手机号)锁耗费的总上行流量、下行流量、总流量。 流程剖析 阶段:map 读取一行数据,切分字段, 抽取手机号,上行流量,下行流量 context.write(手机号,bean) 阶段:reduce 汇总遍历每个bean,将其中的上行流量,下行流量分别累加,得到一个新的bean context.write(手机号,新bean); 代码实现…- 0
- 0
- 75
-
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
- 80
-
Spark- 根据ip地址计算归属地
主要考察的是广播变量的使用: 1、将要广播的数据 IP 规则数据存放在HDFS上,(广播出去的内容一旦广播出去产就不能改变了,如果需要实时改变的规则,可以将规则放到Redis中) 2、在Spark中转成RDD,然后收集到Driver端, 3、把 IP 规则数据广播到Executor中。Driver端广播变量的引用是怎样跑到 Executor中的呢? Task在Driver端生成的,…- 0
- 0
- 142
-
Hadoop- 集群时间同步
集群的时间要同步 * 找一台机器 时间服务器 * 所有的机器与这台机器时间进行定时的同步 比如,每日十分钟,同步一次时间 # rpm -qa|grep ntp # vi /etc/ntp.conf # vi /etc/sysconfig/ntpd # Drop root to id 'ntp:ntp' by default. SYNC_HWCLOCK=yes OP…- 0
- 0
- 58
-
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
- 98
-
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
- 65
-
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
- 130
-
JAVA- 数据库连接池原理
第一次Java程序要在MySQL中执行一条语句,那么就必须建立一个Connection对象,代表了与MySQL数据库的连接通过直接发送你要执行的SQL语句之后,就会调用Connection.close()来关闭和销毁与数据库的连接。为什么要立即关闭呢?因为数据库的连接是一种很重的资源,代表了网络连接、IO等资源。所以如果不是用的话就需要尽早关闭,以避免资源浪费。 JDBC的劣势与不足…- 0
- 0
- 78