- 博客(129)
- 收藏
- 关注
转载 IntelliJ IDEA安装scala插件并创建scala示例
转载:https://www.cnblogs.com/zhaojinyan/p/9524296.html具体步骤如下:1、找到与IntelliJ IDEA对应的scala版本如图,在File下找到Settings在弹出的对话框中点击Plugins,然后点击Install JetBrains plugin在搜索框中输入scala,点击scala,在对话框右边出现该Intelli...
2020-03-08 10:17:29
168
原创 01-JAN-20转化为日期格式
SELECT TO_CHAR(TO_TIMESTAMP('01-JAN-20','dd-mon-yy','NLS_DATE_LANGUAGE = American'),'yyyy-mm-dd HH24:MI:SS')FROM DUAL;...
2020-02-04 12:17:46
2969
原创 JDBCUtils工具类
package com.oracleoaec.utils;import java.sql.Connection;import java.sql.SQLException;import javax.sql.DataSource;import org.apache.commons.dbutils.QueryRunner;import com.mchange.v2.c3p0.Combo...
2019-05-10 22:36:46
227
转载 sparkSQL实战详解
1、sparkSQL层级 当我们想用sparkSQL来解决我们的需求时,其实说简单也简单,就经历了三步:读入数据 -> 对数据进行处理 -> 写入最后结果,那么这三个步骤用的主要类其实就三个:读入数据和写入最后结果用到两个类HiveContext和SQLContext,对数据进行处理用到的是DataFrame类,此类是你把数据从外部读入到内存后,数据在内存中进行存储的基本...
2019-05-10 22:36:26
182
原创 行转列2
原数据目标数据:---方法一select t.name, sum(decode(t.sub, '语文',score, 0)) as "语文", sum(decode(t.sub, '数学',score, 0)) as "数学", sum(decode(t.sub, '英语',score, 0)) as "英文" from pr...
2019-05-10 22:35:00
107
原创 oracle 行转列
原来的数据是:期望的数据是:sql语句:insert into emp (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO)values ('7369', 'SMITH', 'CLERK', '7902', '12/17/1980', '800', null, '20');insert into emp (E...
2019-05-10 22:15:37
2472
原创 Linux下查看某个进程占用的CPU、内存
1、用top命令指定固定的PIDtop -p 10997查询指定进程的PIDps -ef | grep zookeeperjim 10997 1959 0 12月14 pts/2 00:00:01 /usr/lib/jvm/java-8-oracle/bin/java -Dzookeeper.log.dir=. -Dzookeeper.root.logge...
2019-04-04 17:38:19
1420
转载 Linux shell之提取文件名和目录名
用于字符串的读取,提取和替换功能,可以使用用于字符串的读取,提取和替换功能,可以使用{} 提取字符串1、提取文件名[root@localhost log]# var=/dir1/dir2/file.txt[root@localhost log]# echo ${var##*/}file.txt2、提取后缀[root@localhost log]# echo ${var...
2019-04-04 17:26:38
2206
转载 Spark Sql 性能调优
对于某些工作负载,可以通过在内存中缓存数据或打开一些实验选项来提高性能。在内存中缓存数据Spark SQL可以通过调用spark.catalog.cacheTable(“tableName”)或使用内存中的列式格式来缓存表.dataFrame.cache()。然后,Spark SQL将仅扫描所需的列,并自动调整压缩以最小化内存使用和GC压力。可以调用spark.catalog.uncach...
2019-03-24 09:35:43
315
转载 SparkSQL常用性能优化
一、代码优化1.在数据统计的时候选择高性能算子。例如Dataframe使用foreachPartitions将数据写入数据库,不要每个record都去拿一次数据库连接。通常写法是每个partition拿一次数据库连接。 /** * 将统计结果写入MySQL中 * 代码优化: * 在进行数据库操作的时候,不要每个record都去操...
2019-03-24 09:35:00
830
2
转载 Hive中跑MapReduce Job出现OOM问题分析及解决
一、引子今天在跑一段很复杂而且涉及数据量10多年的N个表join的长SQL时,发生了OOM的异常。由于一个map通常配置只有64MB或者128MB,则在Map阶段出现OOM的情况很少见。所以一般发生在reduce阶段。但是今天这个异常详细的看后,会发现既不是map阶段,也不是reduce阶段,发现不是执行过程,而是driver提交job阶段就OOM了。Hive中XMLEncoder...
2019-03-23 22:26:18
2229
转载 hive中UDF、UDAF和UDTF使用
Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以。一、背景:Hive是基于Hadoop中的MapReduce,提供HQL查询的数据仓库。Hive是一个很开放的系统,很多内容都支持用户定制,包括:a)文件格式:Text File,Sequence Fileb)内存中的数据格式: Java Integer/Strin...
2019-03-23 22:25:20
390
转载 spark面试问题收集
spark面试问题1、spark中的RDD是什么,有哪些特性RDD(Resilient Distributed Dataset)叫做分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。 Dataset:就是一个集合,用于存放数据的 Distributed:分布式,可以并行在集群计算 Resilient:表示弹性的 弹性表示...
2019-03-23 22:20:06
177
原创 Hadoop分块与分片介绍及分片和分块大小相同的原因
概念介绍分块在HDFS系统中,为了便于文件的管理和备份,引入分块概念(block)。这里的块是HDFS存储系统当中的最小单位,HDFS默认定义一个块的大小为64MB。当有文件上传到HDFS上时,若文件大小大于设置的块大小,则该文件会被切分存储为多个块,多个块可以存放在不同的DataNode上,整个过程中HDFS系统会保证一个块存储在一个datanode上。但值得注意的是如果某文件...
2019-03-23 22:19:17
442
转载 Hadoop之分块、分片与shuffle机制详解
一 分块(Block)HDFS存储系统中,引入了文件系统的分块概念(block),块是存储的最小单位,HDFS定义其大小为64MB。与单磁盘文件系统相似,存储在 HDFS上的文件均存储为多个块,不同的是,如果某文件大小没有到达64MB,该文件也不会占据整个块空间。在分布式的HDFS集群上,Hadoop系统保证一个块存储在一个datanode上。把File划分成B...
2019-03-23 22:18:15
210
转载 Hive分区、分桶操作及其区别
1,Hive分区。 是指按照数据表的某列或某些列分为多个区,区从形式上可以理解为文件夹,比如我们要收集某个大型网站的日志数据,一个网站每天的日志数据存在同一张表上,由于每天会生成大量的日志,导致数据表的内容巨大,在查询时进行全表扫描耗费的资源非常多。那其实这个情况下,我们可以按照日期对数据表进行分区,不同日期的数据存放在不同的分区,在查询时只要指定分区字段的值就可以直接从该分区查找。...
2019-03-23 22:15:58
648
转载 hadoop中各组件的作用
Hadoop=HDFS+Yarn+MapReduce+Hbase+Hive+Pig+…1.HDFS:分布式文件系统,隐藏集群细节,可以看做一块儿超大硬盘主:namenode,secondarynamenode从:datanode2.Yarn:分布式资源管理系统,用于同一管理集群中的资源(内存等)主:Resourc...
2019-03-23 22:15:02
3009
转载 Hadoop 2.0工作原理学习
1 HDFS简介1.1 Hadoop 2.0介绍Hadoop是Apache的一个分布式系统基础架构,可以为海量数据提供存储和计算。Hadoop 2.0即第二代Hadoop系统,其框架最核心的设计是HDFS、MapReduce和YARN。其中,HDFS为海量数据提供存储,MapReduce用于分布式计算,YARN用于进行资源管理。Hadoop 1.0和Hadoop 2.0的结构对比:...
2019-03-23 22:14:14
198
转载 Hadoop生态圈技术概述
本文对hadoop生态圈技术做一个概要的介绍,文章中的前半部分的信息大多来自于网络,这里只是按照自己的学习思路整理了下。包括如下内容:hadoop诞生记 hadoop生态圈 常见组件简介 组件下载 学习路线一、hadoop诞生记最早Doug Cutting(后面被称为hadoop之父)领导创立了Apache的项目Lucene,然后Lucene又衍生出子项目Nutch,Nutch又...
2019-03-23 22:12:52
3541
1
转载 hive优化
1.介绍 首先,我们来看看Hadoop的计算框架特性,在此特性下会衍生哪些问题?数据量大不是问题,数据倾斜是个问题。 jobs数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个jobs,耗时很长。原因是map reduce作业初始化的时间是比较长的。 sum,count,max,min等UDAF,不怕数据倾斜问题,hadoop在map端的汇总合并...
2019-03-23 22:11:31
272
转载 scala---stripMargin
问题描述:在Scala代码块中如何创建多行字符串,是否存在类似其他语言的“定界符”语法?解决方法: 要在Scala中创建多行字符串,就需要了解Scala的Multiline String。在Scala中,利用三个双引号包围多行字符串就可以实现。代码实例如:val foo = “””This isa scala multilineString”””运行结...
2019-03-19 17:58:54
1265
原创 宽依赖和窄依赖
宽依赖与窄依赖窄依赖是指父RDD的每个分区只被子RDD的一个分区所使用,子RDD分区通常对应常数个父RDD分区(O(1),与数据规模无关) 相应的,宽依赖是指父RDD的每个分区都可能被多个子RDD分区所使用,子RDD分区通常对应所有的父RDD分区(O(n),与数据规模有关)宽依赖和窄依赖如下图所示:相比于宽依赖,窄依赖对优化很有利 ,主要基于以下两点: 宽依赖往往对应着shu...
2019-03-19 15:43:49
1282
原创 Hive学习笔记之-使用Sqoop把Oracle表导入Hive
安装环境:Hive: hive-0.11.0Hadoop: Hadoop 1.2.1Sqoop: sqoop-1.4.4.bin__hadoop-1.0.0Oralce driver: ojdbc6.jar软件下载:Hive:http://apache.dataguru.cn/hive/Hadoop:http://apache.dataguru.cn/hado...
2019-03-14 15:21:03
188
转载 Hive总结篇及Hive的优化
概述Hive学习也有一段时间了,今天来对Hive进行一个总结,谈谈自己的理解,作者还是个小白,有不对的地方请大家指出相互学习,共同进步。今天来谈一谈什么是Hive,产生背景,优势等一系列问题。什么是Hive老规矩:官网地址Hive wiki.先来谈谈自己的理解:有些人可能会说Hive不就是写SQL的吗,那我们其实可以从另一个角度来理解:Hive就是那么强大啊,只要写SQL就...
2019-03-14 13:58:00
157
转载 hive优化总结
原文:https://blog.csdn.net/preterhuman_peak/article/details/40649213长期观察hadoop处理数据的过程,有几个显著的特征:1.不怕数据多,就怕数据倾斜。2.对jobs数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个jobs,没半小时是跑不完的。map reduce作业初始化的时间是...
2019-03-14 09:47:12
76
转载 scala和maven整合
1.scala和maven如何整合 网上有一堆教程讲idea如何new module或new project一步一步来创建scala工程,在这里我不推荐这个。原因是现在主流的开发环境,大多数是采用maven来构建项目的,所以建议大家用maven+plugin的方式来构建scala应用,另外,就象VB.NET/C#/F#可同时在一个项目中使用,最大限度发挥各语种特长一样,java与可以与s...
2019-03-13 18:27:56
10107
1
转载 hadoop解决小文件思路
1.什么是小文件小文件一般是指明显小于Hadoop的block size的文件。Hadoop的block size一般是64MB,128MB或者256MB,现在一般趋向于设置的越来越大。后文要讨论的内容会基于128MB,这也是CDH中的默认值。为了方便后面的讨论,Fayson这里假定如果文件大小小于block size的75%,则定义为小文件。但小文件不仅是指文件比较小,如果Hadoop集群中...
2019-03-13 11:37:27
166
转载 数据仓库-拉链操作
定义:拉链表 - 维护历史状态,以及最新状态数据的一种表,拉链表根据拉链粒度的不同,实际上相当于快照,只不过做了优化,去除了一部分不变的记录而已,通过拉链表可以很方便的还原出拉链时点的客户记录。拉链表通常是对账户信息的历史变动进行处理保留的结果。需求:1. 数据量比较大;2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;3. 需要查看某一...
2019-03-12 20:27:15
717
原创 累加器(Accumulator)
public class AccumulatorDemo { public static void main(String[]args){ System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0"); ...
2019-03-08 12:33:42
1797
原创 json格式数据导入到mysql
JDBCUTIL可能用到的依赖: <dependency> <groupId>c3p0</groupId> <artifactId>c3p0</artifactId> <version>0.9.1.2</version> ...
2019-03-06 17:13:26
9196
6
原创 flume收集数据到kafka
a1.sources = s1a1.channels=c1a1.sinks=k1 a1.sources.s1.type =spooldira1.sources.s1.channels=c1a1.sources.s1.spoolDir=/home/wang/a/flume/logsa1.sources.s1.fileHeader=truea1.channels = c1a1.ch...
2019-03-05 19:37:35
437
原创 SparkStreaming--输出(输出文本 * saveAS&&foreachRDD)
object Output_01 { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") val conf= new Sp...
2019-03-05 19:10:36
352
原创 SparkStreaming--输入源(卡夫卡kafka)
object WCKafka extends App{ System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") val conf= new SparkConf(); conf.setMaster("local[...
2019-03-05 19:09:23
201
原创 SparkStreaming--输入源(本地文件)
//输入源object WordCountHDFSSource { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") val...
2019-03-05 19:08:32
1001
原创 sparkstreaming--window把多个批次中RDD合并成一个RDD
object WordCountWindows { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") val conf= ...
2019-03-05 19:06:41
2005
原创 sparkstreaming--updateStateByKey
//updateStateByKey状态一直持续,即累加之前所有的RDD的结果object WordCountUpdateStateByKey { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh...
2019-03-05 19:05:34
98
原创 sparkstreaming--入门
//单词统计流式处理object WordCountStreaming { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") ...
2019-03-05 19:04:05
86
原创 sparkstreaming-transform
object Transform { def main(args: Array[String]): Unit = { System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0") val conf= new S...
2019-03-05 19:03:05
297
原创 广告黑名单-SparkStreaming
动态过滤,黑名单时刻发生改变,不再是一个固定名单* updatastatabykey* 黑名单中(aa, true) (bb, false) 黑名单动态生成* aa, true 黑名* bb, false 进入黑名单,等待进一步确认***在黑名单 如果外部传递 名字 false 那么就把这个false改成true*cc, false***外部如果传递 dd, true ...
2019-03-05 19:01:18
173
原创 sparksql--hbase
val conf = new SparkConf() conf.setMaster("local") conf.setAppName("patition") val sc = new SparkContext(conf) //hbase val hbaseConf = HBaseConfiguration.create() //设置zooKeeper集群地址,也可以通过...
2019-03-01 19:55:45
90
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人