自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Scala编程入门】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档目录一、scala类1.类的基本属性1.1 属性/成员变量二、泛型1.引入库2.读入数据总结一、scala类1.类的基本属性1.1 属性/成员变量package scalaDemoobject NullType { def main(args: Array[String]): Unit = { val cat = new Cat println( s"出生地:${cat.birthPlace.

2022-04-27 00:05:53 304

原创 Spark的Driver和Executor端代码划分

package sparkStreamimport org.apache.spark.sql.SparkSessionimport org.apache.spark.streaming.{Seconds, StreamingContext}import org.apache.spark.streaming.dstream.{DStream, ReceiverInputDStream}object DriverAndExecutorCode { def main(args: Array[Str

2020-08-10 00:05:40 1151 2

原创 基于cdh5的flume-kafka对接

1.集群环境cdh版本 5.13.2jdk 1.8scala 2.10.6zookeeper 3.4.5hadoop 2.6.0yarn 2.6.0spark 1.6.0 、2.1.0kafka 2.1.0redis 3.0.0

2020-06-03 23:20:37 563

原创 二分查找和排序

快速排序

2022-06-12 20:15:12 136 1

原创 数据结构

HashMap的数据结构

2022-06-04 02:37:07 149

原创 Spark广播变量

package sparkCore.BroadCastV1import org.apache.spark.rdd.RDDimport org.apache.spark.sql.SparkSessionobject BroadCastV1 { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .appName(this.getClass.getName)

2022-05-16 00:09:17 367

原创 Spark自定义累加器

package sparkCore.accumulatorimport org.apache.spark.sql.SparkSessionobject AccumulatorV1 { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .appName(this.getClass.getName) .master("local[*]") .g

2022-05-15 21:35:45 444

原创 Spark常用算子

1.mappackage sparkCore.rddTransformimport org.apache.spark.sql.SparkSessionobject RDDTransformV1 { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .appName(this.getClass.getName) .master("local[*]")

2022-05-12 01:27:41 370

原创 java分组topN

import java.util.*;public class TopN2 { public static void main(String[] args) { List<String> list = new ArrayList<String>(); Random random = new Random(); for (int i = 0; i < 10; i++) { int score =

2020-11-18 23:58:54 307

原创 spark任务调度概述

2020-10-07 17:09:09 99

原创 spark内存管理及性能优化

1.spark2.x内存模型2.Shuffle的内存占用Shuffle Read和Shuffle Write

2020-09-27 00:42:03 302

原创 spark任务提交参数说明

#!/bin/shBIN_DIR=$(cd `dirname $0`; pwd)#BIN_DIR="$(cd $(dirname $BASH_SOURCE) && pwd)"LOG_DIR=${BIN_DIR}/../logsLOG_TIME=`date +%Y-%m-%d`#main函数传入参数inputFile='hdfs://192.168.226.88:8020/xxx/input/wordcountInput.txt'outputFile='hdfs://192.16

2020-09-26 21:34:32 539

原创 标签相似度加权得分

标签相似度加权得分package sparkSQLimport org.apache.spark.sql.expressions.Windowimport org.apache.spark.sql.{DataFrame, Row, SparkSession}object TagSim { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .appName(t

2020-09-26 13:28:47 35

原创 字符缓冲流和字节流

java代码import java.io.*;import java.net.URLDecoder;public class FileReadAndWrite { public static void main(String[] args) { String inputPath = "F:\\ideaProjects\\JavaTest\\src\\main\\resources\\ratings.dat"; String outputPath = "F:\\

2020-09-20 12:43:17 189

原创 贝叶斯平滑

贝叶斯平滑在ctr、cvr、ctcvr、arpm中的应用ctr --点击用户数 / 曝光用户数cvr --购买用户数 / 点击用户数ctcvr – 购买用户数 / 曝光用户数arpm – 成功支付的金额 / 曝光用户数package sparkSQLimport org.apache.spark.sql.{DataFrame, Row, SparkSession}object BayesParam { def main(args: Array[String]): Unit = {

2020-09-13 13:46:43 252

原创 正则表达式在sql和scala中的应用

练习网址:https://regexr-cn.com/在线测试:https://codejiaonang.com一.正则表达式1.字符集[] 字符集:匹配集合中的任何字符[0-9] 匹配数字[a-z] 匹配小写字母[A-Z] 匹配大写字母[0-9a-zA-Z] 匹配数字、小写字母、大写字母备注:[0-9]、[a-z]、[^0-9a-zA-Z] 表示不匹配集合中的字符2.快捷方式\d 匹配任意数字(0-9)\w 匹配字母、数字、下划线\s 匹配任何空白字符(空格、制表符

2020-08-18 00:46:33 617

原创 常用配置文件记录

1.spark本地测试控制台打印日志级别配置文件 log4j.propertieslog4j.rootLogger=${root.logger}root.logger=ERROR,consolelog4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j.appender.console.target=System.errlog4j.appender.console.layout=org.apache.log4j.PatternLayo

2020-08-09 13:46:10 137

原创 idea之常用快捷键记录

1.替换文件内容ctrl + r: 当前文件内容替换,指的是在当前打开的文件中替换匹配的字符,只操作一个文件ctrl + shift + r: 在路径中替换,指的是在选定的目录下或者类包下,查找要被替换的字符,再在第二个输入框中输入要替换的字符,点击弹出框的右下角的replace或者replaceall即可。2.查找内容ctrl + f: 当前文件查找ctrl + shift + f : 当前项目查找当快捷键冲突时,可以edit --> find --> find in path双

2020-08-09 13:20:20 104

原创 git和svn工具的基本使用

1.git工具参考:https://www.cnblogs.com/miracle77hp/articles/11163532.html工作区:本地磁盘目录暂存区:虚拟仓库远程仓库:如github、gitlab1.1 git配置1.1.1 设置用户名和邮箱git config --global user.name “注册github用户名”git config --global user.email “注册github的邮箱”git config --list //显示当前配置信息1.

2020-08-04 01:14:50 767

原创 sql语法练习

原始数据层odsdrop table if exists ods_start_log;create external table if not exists ods_start_log(line string)partitioned by(`dt` string)stored as inputformat 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' outputformat 'org.apache.hadoop.h

2020-08-02 18:45:28 347

原创 SparkSQL常用操作

1.spark1.6import org.apache.spark.{SparkConf, SparkContext}import org.apache.spark.rdd.RDDimport org.apache.spark.sql.types._import org.apache.spark.sql.{DataFrame, Row, SQLContext}object Demo01 { def main(args: Array[String]): Unit = { val con

2020-07-29 01:23:28 601

原创 编程语言之scala基础

1.数组Array1.1定长数组1.1.1 定义方式//通过new的方式val arr1 = new ArrayInt //指定长度为3。Int类型初始化为0val arr2 = new ArrayString //String类型初始化为null//通过apply方法val arr3 = Array(1,“scala”,3,14)val arr4 = Array.apply(1,“scala”,3,14)说明:apply方法内部通过new ArrayT1.1.2 通过下标赋值、修改值

2020-07-21 10:43:34 445

原创 面试阶段记录

1.java2.flume2.1 flume与kafka的区别3.sqoop4.kafka5.hive5.1 hive可靠性的保证HDFS副本放置策略:第一个副本:放置在上传文件的DataNode(节点)中,如果是集群外提交,则随机挑选一台磁盘不太慢,CPU不太忙的节点。第二个副本:放置在于第一个副本不同的机架的节点上(随机选择)在之前的低版本中是会放置在和第一个副本相同的机架中的不同节点中,这样如果副本数为2的话,两个副本会放在同一个机架上,如果整个机架坏了则会造成数据丢失,后期优化为现

2020-07-04 01:15:06 69

原创 hive阶段之常用优化

1.Map执行前合并小文件set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat说明:在Map执行前合并小文件,减少Map数:CombineHiveInputFormat具有对小文件进行合并的功能(系统默认的格式)。HiveInputFormat没有对小文件合并功能。2.map-reduce阶段合并小文件hive.merge.mapfiles = true; – 默认true,在map-only任务结束时合

2020-07-01 00:14:55 266

原创 SparkStreaming常用操作

1.pom.xml<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <scala.compat.version>2.10</scala.compat.version> <!--编译时的编码-->

2020-06-25 16:05:39 273

原创 Spark阶段RDD的分区数计算

1.调用textFile()def textFile( path: String, minPartitions: Int = defaultMinPartitions): RDD[String] = withScope { assertNotStopped() hadoopFile(path, classOf[TextInputFormat], classOf[LongWritable], classOf[Text], minPartitions).map(pair =&g

2020-06-24 02:35:00 763

原创 flink对接kafka

1.flink集群部署1.1下载地址https://archive.apache.org/dist/flink/1.2解压tar -zxvf flink-1.6.0-bin-hadoop26-scala_2.11.gz -C /home1.3配置环境变量(hadoop01 hadoop02 hadoop03)vim /etc/profileexport FLINK_HOME=/home/flink-1.6.0export PATH=:PATH:PATH:PATH:FLINK_HOME/bin

2020-06-21 02:13:40 1315

原创 hive阶段之自定义udf、udtf函数

1.创建Maven项目1.1 pom.xml文件<properties> <project.build.sourceEncoding>UTF8</project.build.sourceEncoding> <hive.version>2.3.0</hive.version></properties><dependencies> <!--添加hive依赖--> <de

2020-06-15 02:19:38 247

原创 数据传输、采集工具之sqoop

1.hive表export到mysqlsqoop export \--connect "jdbc:mysql://hadoop01:3306/${db_name}?useUnicode=true&characterEncoding=utf-8" \--username root \--password root \--table $1 \--num-mappers 1 \--export-dir /warehouse/$db_name/ads/$1 \--input-fields-

2020-06-12 18:16:40 195

原创 linux应用之基础命令

1.su root 、su - root、sudo commandsudo -i 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。注意:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错

2020-06-10 02:56:16 275

原创 HiveSQL常用操作

1.concat_ws()、concat()、collect_set()concat:连接多个字段collect_set:collect_set(col)函数只接受基本数据类型,它的主要作用是将某字段的值进行去重汇总,产生array类型字段。concat_ws:表示concat with separator,即有分隔符的字符串连接,concat_ws(”,collect_set())表示用空的字符”来连接collect_set返回的array中的每个元素。参考:https://blog.csdn.n

2020-06-08 02:10:34 1009 1

原创 idea重命名项目名称

2.3.4.

2020-06-02 00:03:35 321

原创 基于cdh5的sparkStreaming-kafka测试

1.集群环境

2020-05-29 02:52:05 381

原创 基于cdh5的spark测试

1.cdh集群环境cdh版本 5.13.2jdk 1.8scala 2.10.6zookeeper 3.4.5hadoop 2.6.0yarn 2.6.0spark 1.6.0 、2.1.0kafka 2.1.0备注: 基于CDH进行Spark开发时,使用高版本的apache原生包即可;不需要使用CDH中的spark开发包,另外,其它生态项目也如此。在IDEA开发的时候用原生包,实际往生产环境部署时默认就使用CDH的包了。2.pom.xml配置<?xml version="1.0

2020-05-26 23:40:37 495

原创 关于cdh5集群搭建

1.环境准备1.1 虚拟机准备克隆三台虚拟机(hadoop01、hadoop02、hadoop03),配置好对应主机的网络IP、主机名称、关闭防火墙。设置hadoop01、hadoop02、hadoop03的主机对应内存分别是:12G、4G、4G1.2 SSH免密登录1.2.1 生成公钥和私钥cd ~/.ssh/[root@hadoop01 .ssh]$ ssh-keygen -t rsa三次回车键后,当前路径下会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)1.2.2 将

2020-05-25 03:13:46 269

原创 idea设置java和scala模板注释

1.自定义组名和模板名称注释模板:** * @Author: name * @Description: * @Date: $date$ $param$ $return$ **/2.设置入参和返回值点击上图中的Edit variables,进入设置页面,如下:param变量值:groovyScript(“if(”KaTeX parse error: Can't use function '\"' in math mode at position 5: {_1}\̲"̲.len

2020-05-22 05:21:10 1248

原创 idea之maven仓库配置

1.settings中设置2.修改本地maven安装路径下的settings.xml文件。优先级: 本地 > 远程私服(settings.xml的profile标签设置) > (pom.xml文件仓库) > 镜像仓库2.1 本地仓库配置2.2 远程仓库配置2.2.1 私服配置(可以设置成自己公司的地址)2.2.2 远程仓库镜像配置备注:mirrorOf标签表示被镜像的仓库id,这里central为maven自带的中央仓库,所在路径为/根目录/lib/maven-m

2020-05-21 14:58:21 353

原创 idea开发之设置jdk编译版本

idea开发之设置jdk编译版本1.idea的settings、project structure中设置2.在pom.xml文件中引入

2020-05-21 13:02:04 1504

hive-exec-udf

hive-exec-udf

2022-09-19

flume-kafka之日志数据模拟

通过java模拟生产环境的日志,flume监控指定目录,采集日志推送到kafka。具体内容可参考 “基于CDH5的flume-kafka对接”这篇

2020-06-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除