自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 protobuf3-java使用

Protobuf

2022-01-02 13:51:43 1881

原创 Git仓库使用--新手入门

Git仓库使用一、安装Git二、安装插件工具 TortoiseGit三、Git常用操作3.1 Git的工作流程3.2 创建版本库3.2.1 使用Git GUI3.2.2 使用Git Bash3.2.3 使用TortoiseGit一、安装Git下载地址:https://git-scm.com/download笔者下载的版本是: Git-2.27.0-64-bit.exe下载好之后双击打开一连续点击 next 默认安装即可:安装完成之后右击空白区域,可以看到命令行多了两行命令:Git GUI He

2020-11-15 17:07:58 3113 1

原创 Linux、Spark、Hadoop、Hbase、Hive、kafka...常用操作命令

Linux、Spark、Hadoop、Hbase、Hive、kafka...常用操作命令一、linux*shell命令二、Spark*三、hadoop*四、zookeeper*五、python*六、kafka*七、mysql*函数:八、hbase*命令空间:建表语句:九、hive*一、linux*查看磁盘信息: fdisk -l查看内存: df-h   free -h递归创建文件夹: mkdir -p查看日期函数: date --help例

2020-11-08 20:59:51 1298 1

原创 大数据常见面试题----冲!!!

大数据常见面试题一、Hadoop生态1.1 HDFS1.1.1 hdfs读写流程1.1.2 NameNode、DataNode的作用二、Spark技术栈2.1 scala2.1.1 scala 偏函数2.1.2 scala 柯理化2.1.3 scala 的apply和unapply方法是什么作用2.1.4 scala 定义元组后可变吗2.1.5 java和scala的区别2.1.6 scala中的隐式函数 implicit一、Hadoop生态1.1 HDFS1.1.1 hdfs读写流程写数据流程:

2020-10-29 00:03:47 1295

原创 Spark Streaming 实现 word count

Spark Streaming 实现 word count一、一个输入源端口对应一个receiver1.1 数据源端口1.2 spark streaming 接收处理数据二、两个输入源端口对应一个receiver2.1 测试源端口一、一个输入源端口对应一个receiver1.1 数据源端口使用网络猫作为数据的输入源端口下载网络猫:linux命令行执行:yum install -y nc使用测试端口: 9999nc -lk 99991.2 spark streaming 接收处理数据这

2020-10-23 17:29:17 1492 1

原创 spark日志分析(三)—— 手机行为日志

spark解析复杂json格式日志文件一、日志文件初步分析一、日志文件初步分析样例分析使用的是两条手机用户产生的日志信息:op.log内容如下:1593136280858|{"cm":{"ln":"-55.0","sv":"V2.9.6","os":"8.0.4","g":"C6816QZ0@gmail.com","mid":"489","nw":"3G","l":"es","vc":"4","hw":"640*960","ar":"MX","uid":"489","t":"15931232535

2020-10-20 22:22:45 554

原创 spark日志分析(二)—— 某答题系统日志

spark分析某答题系统日志一、数据描述二、数据下载三、需求1. 数据准备2. 在Spark-Shell 中,加载HDFS 文件系统answer_question.log 文件,并使用RDD 完成以下分析,也可使用Spark 的其他方法完成数据分析3. 创建HBase 数据表4. 创建Hive数据表5. 使用ex_exam_record表中的数据统计每个学员总分、答题的试题数和正确率,并保存到ex_exam_anlysis 表中,其中正确率的计算方法如下:正确率=总分/答题的试题数6. 使用ex_exam_

2020-10-20 15:25:48 852 1

原创 shell脚本安装jdk、mysql、hadoop、zookeeper、hbase、hive、spark...大一统

shell脚本安装jdk、mysql、hadoop、zookeeper、hbase、hive、spark...大一统一、准备工作二、安装脚本及相关配置文件2.1 安装 jdk2.2 安装 mysql2.3 安装 hadoop2.4 安装 zookeeper2.5 安装 hbase2.6 安装hive2.7 安装 spark三、大一统安装jdk、mysql、hadoop、zookeeper、hbase、hive、spark...一、准备工作笔者安装上述软件的版本分别为:jdk: jdk-8u221

2020-10-18 11:06:07 6381 10

原创 MongoDB常用操作命令

MongoDB常用操作命令Java API操作增删改查Java API操作增删改查pom.xml 依赖:<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.2.2</version></dependency>java代码:import

2020-10-09 22:25:19 203 1

原创 spark日志分析(一)—— 美团日志

Spark常见习题解析一、美团日志分析1.1 数据描述1.2 数据下载一、美团日志分析1.1 数据描述meituan_waimai_meishi.csv 是美团外卖平台的部分外卖 SPU(Standard Product Unit)标准产品单元数据, 包含了外卖平台某地区一时间的外卖信息 。具体字段说明如下:字段名称中文名称数据类型spu_id商品spuIDStringshop_id店铺IDStringshop_name店铺名称Stringcat

2020-10-08 20:19:17 2392 1

原创 常见算法--实例解析

常见算法--实例解析一、KNN临近算法二、KNN回归算法三、线性回归-梯度下降四、逻辑回归五、k-means算法一、KNN临近算法import numpy as npimport pandas as pddata=pd.read_csv("iris.csv")data#读取 csv文件,去除头部,默认0,第一行,如果不去除头部,可以使用Nonedata=pd.read_csv("iris.csv",header=0)data#head 默认前5行data.head(10)#tai

2020-09-29 16:02:01 2285 2

原创 使用Hive查询mysql经典50道题

使用Hive查询mysql经典50题一、mysql经典50道题二、使用hive查询50题一、mysql经典50道题学生表 Studentstudent_idstudent_namebirthsex1赵雷1990-01-01男2钱电1990-12-21男3孙风1990-05-20男4李云1990-08-06男5周梅1991-12-01女6吴兰1992-03-01女7郑竹1989-07-01女8王

2020-09-25 16:48:08 3536 6

原创 hive常用函数实例解析--是真的细

hive常用的内置函数实例解析一、 日期函数1.1 日期>>>>时间戳: unix_timestamp()1.2 时间戳>>>>日期: from_unixtime(bigint unixtime,string format)1.3 获取当前日期:current_date()1.4 获取当前日期 + 分钟:current_timestamp()1.5 日期格式字符串转化为日期:date(string date)1.6 获取日期格式字符串中具体的 年、月、日、

2020-09-22 19:52:31 3545 1

原创 Spark应用之日志数据清洗--实例解析

Spark应用之日志数据清洗一、日志数据二、准备工作三、数据清洗3.1 清洗数据 user.csv3.2 清洗数据 event.csv3.3 清洗数据 user_friends.csv一、日志数据日志数据:下载链接:events提取码: ngs3二、准备工作下载日志数据将下载的日志数据上传至 hdfs:/eventData 文件夹linux 启动spark,spark安装根目录输入:sbin/start-all.sh为了方便展示,使用Zeppelin插件,导入spark sql 相

2020-09-20 23:29:02 4815 3

原创 邻近算法(KNN)原理简单解析

邻近算法(KNN)原理简单解析 一、什么是邻近算法1.1简介1.2核心思想1.3 算法流程1.4 优缺点二、实例演示KNN算法一、什么是邻近算法1.1简介邻近算法,或者说K最近邻(KNN,K-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是K个最近的邻居的意思,说的是每个样本都可以用它最接近的K个邻近值来代表。近邻算法就是将数据集合中每一个记录进行分类的方法 。1.2核心思想KNN算法的核心思想是,如果一个样本在特征空间中的K个最相邻的样本中的大多

2020-09-15 19:42:43 5450 1

原创 使用sqoop脚本每日定时向数据仓库全量、增量导入数据

使用sqoop脚本每日定时向数据仓库全量、增量导入数据一、导入方式简述二、实例分析2.1 源数据mysql 建库建表并插入数据2.2 在hive中数据仓库ods层建库建表:2.3 业务需求:2.4 全量导入一、导入方式简述数据仓库中从数据源采集原始数据导入 ODS(原始数据层)通常有两种方式:全量导入和增量导入。全量导入的表一般为数据量小,变化不大的表,而增量导入一般是用于表数据较大,每天又有很多新增修改数据的表。二、实例分析2.1 源数据mysql 建库建表并插入数据下载sql脚本:snbap_

2020-09-14 20:15:54 4121 1

原创 关于数据仓库中变化历史数据处理方式:全量表、快照表、拉链表

关于数据仓库中变化历史数据处理方式:全量表、快照表、拉链表一、全量表二、快照表三、拉链表对于数据仓库中变化的历史数据存储,一般有三种方式:全量表、快照表、拉链表一、全量表直接全量导入,覆盖旧数据,保存每天所有的最新状态的数据优点: 效率比较高,可以查看最新数据缺点: 查看不到历史数据二、快照表按日分区,记录截止数据日期的全量数据,一天一个分区优点: 效率比较高,可以查看最新数据也可以查看历史数据缺点: 占用的磁盘空间比较大例: 有一个user表,每天更新上传昨天的最新数据,比如是今

2020-09-14 17:03:46 6549 1

原创 sehll脚本生成数据加载到Hive表中

shell脚本生成数据加载到Hive表中一、hive中建表二、编写shell 脚本三、上传文件至hdfs一、hive中建表创建数据库:create database sales_dw;use sales_dw;建表:create table dim_date(date_sk int,date date, month tinyint, month_name varchar(16), quarte

2020-09-03 19:59:10 899 1

原创 简述python常用数据分析库之numpy

简述python常用数据分析库之numpy一、NumPy简介二、NumPy常用属性和方法三、实例演示一、NumPy简介NumPy(Numeric Python) 是Python 中科学计算的基础包。它是一个Python库,提供了多维数组对象和各种派生对象,以及快速操作的各种函数,包括数学、逻辑、形状操作、排序、选择、傅立叶变换、基本线性代数、基础统计运算、随机模拟等。NumPy 的底层使用C 语言编写,并且在内部实现了对Python解释器锁(PIL)的解锁,使其并行运算的效率远高于Python 的基础

2020-08-31 18:16:55 942 1

原创 使用spark sql算子练习mysql经典50道题

使用spark算子练习mysql经典50道题一、mysql经典50道题一、mysql经典50道题学生表 Studentstudent_idstudent_namebirthsex1赵雷1990-01-01男2钱电1990-12-21男3孙风1990-05-20男4李云1990-08-06男5周梅1991-12-01女6吴兰1992-03-01女7郑竹1989-07-01女8王菊1990-01

2020-08-29 17:05:08 1972 1

原创 kafka实际应用—>读取数据,并用java实现业务逻辑“行转列”

kafka实际应用一、业务需求一、业务需求现有一个表数据 event_attendees.csv ,表中截取前5行数据,内容如下:表头数据:eventyesmaybeinvitedno代表含义为:event: 一个事件的名称代号,可以理解一个人的身份ID,去参加聚会,其余四个字段代表他去不去参加聚会的状态yes: 同意去maybe: 可能会去invited: 受邀请的no: 不去参加业务需求:...

2020-08-27 19:08:42 544 1

原创 Scrapy爬虫基础框架及实例演示

Scrapy爬虫基础框架及实例演示安装scrapy使用 scrapy 框架创建爬虫项目安装scrapy安装 scrapy 之前需安装了window版的 Anaconda python,我的安装版本是Anaconda3-5.1.0-Windows-x86_64.exe①: DOS命令行输入:conda install scrapy②:下载完成输入 scrapy ,出现以下页面说明scrapy安装成功注: 若需要卸载scrapy,命令为:pip uninstall scrapy使用

2020-08-26 23:06:57 344 1

原创 常用设计模式实例解析----简单易懂

常用设计模式实例解析一、设计模式简介二、单例模式2.1 概念2.2 单例模式实现方式2.2.1 饿汉式2.2.2 懒汉式一、设计模式简介设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。1995 年,GoF(Gang of Four,四人组/四人帮)合作出版了《设计模式:可复用面向对象软件的基础》一书,共收录了 23 种设计模式,从此树立了软件设计模式领域的里程碑

2020-08-26 06:21:33 838

原创 Java面对对象特性之----多态

Java面对对象特性之----多态一、什么是多态二、多态的作用三、多态存在的三个条件四、实例解析一、什么是多态面对对象编程三大特性:封装、继承、多态多态 是指不同类的对象对同一消息作出不同的响应二、多态的作用消除类型之间的耦合关系可替换性可扩充性接口性灵活性简化性三、多态存在的三个条件有继承关系子类重写父类方法父类引用指向子类对象注: 第二点中父类的三种类型方法不能表现为多态:1、static修饰的方法,因为被static修饰的方法是属于类的,而不是属于实例的2、

2020-08-25 18:57:39 190

原创 简述Kafka核心原理

简述Kafka核心原理一、kafka简介一、kafka简介Kafka是一种 高吞吐量的分布式发布-订阅 消息系统,专为超高吞吐量的实时日志采集、实时数据同步、实时数据计算等场景来设计。优点:高吞吐量(百万 /秒)高容错(多分区 &多副本)高并发(多分区)易扩展(多 broker节点)缺点: 对任意消息队列只能分区内有序而不能全局有序...

2020-08-20 19:53:41 360 1

原创 简述----消息中间件

消息中间件简述一、简介二、为什么要使用消息中间件三、消息中间件的两种模式3.1 点对点模式(P2P)3.2 发布/订阅模式(Pub/Sub)一、简介中间件位于客户机/服务器的操作系统之上,管理计算机资源和网络通讯非底层操作系统软件,非业务应用软件,不是直接给最终用户使用的,不能直接给客户带来价值的软件统称中间件。**消息中间件(MQ)**也成消息队列, 专注于数据的发送和接受,利用高效可靠的异步消息传递机制进行数据交流,并基于数据通信集成分布式系统典型的消息中间件包含 3 部分 :broker(

2020-08-20 17:05:05 240

原创 Flume日志收集系统详解----硬核解析

Flume日志收集系统详解一、Flume简介1.1 Flume特点1.1.1 可靠性1.1.2 可恢复性1.2 Flume架构二、Flume原理2.1 主要组件2.2 工作流程三、flume创建实例3.1 Exec Source 类型3.2 Exec Source 类型一、Flume简介Apache Flume是一个 分布式的、可靠的、可用的 数据收集系统 ,它可以有效地收集、聚合和移动大量的 日志数据 ,这些数据可以从许多不同的来源转移到一个集中的数据存储中。Apache Flume不仅仅限于日志数

2020-08-17 20:17:57 1866 1

原创 IDEA创建Maven工程----详述各项配置

IDEA创建Maven工程Spark SQL pom.xml配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://mave

2020-08-13 17:50:39 156

原创 Spark SQL综述----硬核解析

Spark SQL简述

2020-08-12 20:16:23 1059

原创 Scala模式匹配----实例解析

Scala模式匹配一、什么是模式匹配二、匹配模式种类2.1 通配模式2.2 常量模式2.3 变量模式2.4 构造器模式2.4.1样例类的模式匹配2.4.2非样例类的模式匹配一、什么是模式匹配模式匹配指检查某个值(value)是否匹配某一个模式的机制,是 Scala非常重要、非常强大的功能,它不仅可以匹配值,还能够匹配类型等语法: 选择器 match { case 备选项 }Scala中的 match表达式类似 Java中的 switch语句, switch的 case语句可以处理 int、 sho

2020-08-11 20:16:27 571 1

原创 Spark RDD 常用算子实例解析

Spark RDD 常用算子解析一、转换算子 Transformation(lazy)二、动作算子 Actions(non-lazy)一、转换算子 Transformation(lazy)二、动作算子 Actions(non-lazy)对于转换操作,RDD的所有转换都不会直接计算结果。 Spark仅记录作用于RDD上的转换操作逻辑,当遇到动作算子( Action)时才会进行真正计算。RDD常见转换算子如下表:...

2020-08-05 19:09:34 2033 1

原创 简述Spark基础及架构

简述Spark基础及架构一、spark简介二、spark技术栈三、spark架构一、spark简介spark是基于内存的分布式计算框架,特点是快速、易用、通用及多种运行模式。快速:基于内存数据处理,比MR快100个数量级以上(逻辑回归算法测试)基于硬盘数据处理,比MR快10个数量级以上易用:支持Java、Scala、Python、R语言交互式shell方便开发测试通用性:一栈式解决方案:批处理、交互式查询、实时流处理、图计算及机器学习多种运行模式:YARN、Mesos

2020-08-04 20:18:46 2628 1

原创 scala数组、集合函数大全--最全的实例解析

scala数组、集合函数大全

2020-08-03 08:21:17 4181 1

原创 scala面向对象综述

scala面向对象综述一、Scala面向对象编程综述1.1 Scala是纯粹的面向对象的语言1.2 Scala大量重用了 Java中的类型1.3 Scala OOP比较 Java OOP的主要差异二、类和对象2.1类的定义一、Scala面向对象编程综述1.1 Scala是纯粹的面向对象的语言以Java为例, Java并不是一门纯面向对象的语言,其允许非对象值的存在,也允许不属于任何对象的静态字段和方法存在。Scala是纯粹的面向对象的语言,每个值都是对象,每个操作都是方法调用。1.2 Scala大

2020-07-31 06:51:30 504 1

原创 scala隐式参数、隐式函数、隐式类详解--关于implicit的大白话

scala隐式类详解一、概念一、概念隐式类是在类名前加上implicit关键字作用是使用隐式类的主构造函数用于隐式转换隐式类指的是用implicit关键字修饰的类。在对应的作用域内,带有这个关键字的类的主构造函数可用于隐式转换。...

2020-07-28 20:02:58 3516 1

原创 hive常见习题解析

hive常见习题解析已有shop_id,item_id,num三列, 使用HiveSQL计算得到a,b列(温馨提示: 按照shop_id分组, a为num值/每组num的和, b为a的组内排序)解析:建表create table shops(shop_id char(1),item_id char(1), num int);插入数据Insert into shops values("A","a",10),("A","b",12),("B","a",8),("A","c",

2020-07-28 18:59:37 496 1

原创 sql查询各科成绩前三名----详述过程,思路清晰不烧脑

使用mysql、hive查询各科成绩前三名一、建表造数据二、使用myql查询2.1 不考虑并列情况方法一:使用加行号的方式查询方法二:使用子查询嵌套查询(使用最多)2.2 考虑并列情况三、使用hive查询前三名3.1 不考虑并列情况:rank()3.2 考虑并列情况:dense_rank()一、建表造数据建表:create table scores(name varchar(100),subject varchar(100),score int);插入数据:insert into sco

2020-07-26 22:03:03 60769 21

原创 Scala常见函数类型,如匿名函数、高阶函数--实例解析

Scala匿名函数、高阶函数简单实例一、匿名函数1.1 定义1.2 语法二、高阶函数2.1 定义2.2 示例一、匿名函数在java中我们定义一个函数时是这么写的:public int funJia(int a,int b){ int sum = a+b; return sum; }funJia 为函数名在scala中定义一个普通函数的写法: def funJia(a:Int,b:Int):Int = { var sum = a+b

2020-07-25 17:41:00 1186 1

原创 Sqoop数据迁移,导入数据至hdfs,hive,hbase,mysql

Sqoop数据迁移一、Sqoop概述二、Sqoop数据迁移1.从RDB(Relational Database)导入数据到HDFS1.1标准方式全部导入表(customers)1.2通过Where语句过滤导入表(orders)1.3通过COLUMNS过滤导入表1.4使用query方式导入数据1.5使用Sqoop增量导入数据2.导入数据到hive3.导入数据到HBase4.hdfs导出到MySQL三、执行Sqoop脚本四、执行Sqoop job任务一、Sqoop概述Sqoop是什么?Sqoop是一个用

2020-07-23 06:32:30 2055 1

原创 hbase shell基本命令、本地数据批量导入Hbase、Hbase与Hive交互实例

Hbase常用操作一、hbase shell基本命令二、将本地表数据批量导入到hbase中三、hbase与hive映射一、hbase shell基本命令判断表存在与否exists 'tablename'使用通配符的方式列出所有表list 'abc.*'查看HBase 的版本version查看HBase 的状态status查看HBase 帮助文档help创建一个表user,列族为baseinfo,privateinfocreate 'user',{N

2020-07-22 06:43:42 4167 1

空空如也

空空如也

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

TA关注的人

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