大数据
有一个码农,他叫封子
这个作者很懒,什么都没留下…
展开
-
我的大数据之旅-Flink 批处理文本文件 word count
目录前言:需求:通过Flink统计一个文本文件里单词个数实现:新建Flink项目创建批处理类结果前言:对比Spark、Flink开发流程,发现Flink的开发流程比较简单明了。主要分几个步骤:env :设置运行环境 source:配置数据源 transform:各种转换操作(flatMap/filter/join/group等) sink:下...原创 2019-11-23 16:44:55 · 495 阅读 · 0 评论 -
我的大数据之旅-配置ZooKeeper集群
目录1.集群规划2.解压安装3.配置zoo.cfg4.集群操作可能遇到的问题1.集群规划hadoop129、hadoop130、hadoop131三台服务器上配置zookeeper集群2.解压安装(1)解压zookeeper到指定目录[fengling@hadoop129 software]$ tar -zxvf apache-zookeeper-3...原创 2019-10-31 12:31:06 · 175 阅读 · 0 评论 -
我的大数据之旅-Spark DStreams输入
DStream输入 基本数据源 文件数据源 创建方式:StreamingContext.fileStream[KeyClass, ValueClass, InputFormatClass]文本文件:streamingContext.textFileStream(dataDirectory)pom.xml<?xml version="1.0" enc...原创 2019-10-29 11:21:17 · 224 阅读 · 0 评论 -
我的大数据之旅-Spark Streaming wordcount
创建maven项目:打包的时候注意修改成自己项目的包名。<?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" ...原创 2019-10-26 16:49:12 · 207 阅读 · 0 评论 -
我的大数据之旅-Spark SQL通用加载、保存方法
目录Spark SQL输入:通用模式:高级模式Spark SQL输出:思维导图Spark SQL输入:通用模式:不指定输入文件类型:sparkSession.read.load("path")scala> val usersDF = spark.read.load("examples/src/main/resources/users.parquet")...原创 2019-10-20 16:03:40 · 163 阅读 · 0 评论 -
我的大数据之旅-Spark Dataset和RDD互操作
目录通过反射获取Schema通过编程设置Schema(StructType) 通过反射获取Schema 在scala接口中,Spark SQL支持自动将包含case类的RDD转换成DataFrame。case类定义了table的结构,case类通过属性反射变成了列名。scala> case class Person(name:String, age:Int)d...原创 2019-10-19 16:24:30 · 224 阅读 · 0 评论 -
我的大数据之旅-Spark 用户自定义函数
用户自定义UDF函数scala> spark.udf.register("addName",(x:String) => "Name: " + x)res1: org.apache.spark.sql.expressions.UserDefinedFunction = UserDefinedFunction(<function1>,StringType,Some(Li...原创 2019-10-19 14:34:27 · 290 阅读 · 0 评论 -
我的大数据之旅-Spark RDD、DataFrame、DataSet之间的转换
目录RDD转DataFrame:(rdd.toDF())RDD转DataSet:(rdd.toDS())DataFrame、DataSet转RDD:(dataFrame.rdd、dataSet.rdd)DataFrame转DataSet:(dataFrame.as[Person]):DataSet转DataFrame:(dataFrame.toDF):RDD转Data...原创 2019-10-19 13:41:26 · 293 阅读 · 0 评论 -
我的大数据之旅-Spark SQL DataFrame常用操作
package com.fengling.sqlimport org.apache.spark.SparkConfimport org.apache.spark.sql.{DataFrame, SparkSession}import org.slf4j.LoggerFactorycase class People(name: String, age: Int)/** * @a...原创 2019-10-19 11:52:29 · 176 阅读 · 0 评论 -
我的大数据之旅-Spark checkpoint的使用,spark shell演示
主要步骤:创建RDD 设置sc.setCheckpointDir路径 调用checkpoint方法 调用一下action操作scala> sc.setCheckpointDir("hdfs://hadoop129:9000/spark_check_point_20191014_data")scala> val data = sc.parallelize(1 to 10...原创 2019-10-14 13:15:42 · 209 阅读 · 0 评论 -
我的大数据之旅-Spark集群环境搭建
一、环境装备两台或者两台以上安装了jdk1.8的虚拟机我准备了三台:hadoop129/hadoop130/hadoop131规划: Master机:hadoop129 Slaves机:hadoop130/hadoop131二、下载Spark安装包:Spark官网下载地址三、解压缩[fengling@hadoop129 ...原创 2019-09-24 14:41:15 · 167 阅读 · 0 评论 -
我的大数据之旅-xsync集群分发脚本
循环复制文件到所有节点的相同目录下集群机子hadoop129/hadoop130/hadoop131之间同步文件基本命令rsync -rvl /opt/module fengling@hadoop129:/opt/参数说明:参数 备注 -r 递归拷贝 -v 显示复制的过程 -l 拷贝符号链接...原创 2019-09-25 10:32:51 · 199 阅读 · 0 评论 -
我的大数据之旅-Hadoop单节点集群
软件清单jdk1.8 hadoop-2.7.2.tar.gz解压到指定目录[fengling@hadoop129 software]$ tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/将Hadoop添加到环境变量获取hadoop路径[fengling@hadoop129 hadoop-2.7.2]$ pwd/opt/modul...原创 2019-09-25 14:22:21 · 169 阅读 · 0 评论 -
我的大数据之旅-Hadoop启动YARN并运行MapReduce-WordCount
目标(1)配置集群在YARN上运行MR(2)启动、测试集群(3)在YARN上运行WordCount案例执行步骤(1)配置集群(a)配置yarn-env.sh$ vim etc/hadoop/yarn-env.sh(b)配置etc/hadoop/mapred-site.xml(对mapred-site.xml.template重新命名为mapred-site.xm...原创 2019-09-25 15:44:27 · 291 阅读 · 0 评论 -
我的大数据之旅-执行第一个Spark应用:蒙特·卡罗算法求PI
提交任务[fengling@hadoop129 spark-2.4.4-bin-hadoop2.7]$ bin/spark-submit --class org.apache.spark.examples.SparkPi \> --master spark://hadoop129:7077 \> --executor-memory 1G \> --total-exec...原创 2019-09-26 11:06:10 · 221 阅读 · 0 评论 -
我的大数据之旅-Spark shell Word Count
目录上传文件到HDFS运行Spark shell统计RELEASE文件里每个单词的数量查看Job结果上传文件到HDFS#hdfs创建spark目录:[fengling@hadoop129 spark-2.4.4-bin-hadoop2.7]$ hdfs dfs -mkdir spark#将Spark RELEASE文件上传到hdfs spark目录下[fenglin...原创 2019-09-26 13:09:59 · 222 阅读 · 0 评论 -
我的大数据之旅-Spark配置Job History Server
目录配置文件提交作业,检查是否可用配置文件进入Spark的conf目录,spark-defaults.conf.template拷贝一份[fengling@hadoop129 conf]$ pwd/opt/module/spark-2.4.4-bin-hadoop2.7/conf[fengling@hadoop129 conf]$ cp spark-defaults.co...原创 2019-09-27 14:58:33 · 159 阅读 · 0 评论 -
我的大数据之旅-Spark创建RDD的两种方式
什么是RDDThe main abstraction Spark provides is aresilient distributed dataset(RDD), which is a collection of elements partitioned across the nodes of the cluster that can be operated on in parallel...原创 2019-09-28 22:00:00 · 316 阅读 · 0 评论 -
我的大数据之旅-Spark RDD操作
Spark RDD操作的两种类型: transformations 在Spark里所有RDD的转换都是延迟加载的,不会马上计算结果,Spark只是记住要应用于基础数据集的一些转换操作。只有当一个动作要求返回给Driver时,计算才会给执行。常用的transformations Transformation 含义 map(func) ...原创 2019-09-29 15:55:30 · 177 阅读 · 0 评论 -
我的大数据之旅-CentOS7安装、JDK8安装
目录一、系统安装二、windows host文件修改一、系统安装1. 新建虚拟机2.高级》下一步3.下一步4.稍后安装系统》下一步5.Linux》CentOS7 64》下一步7.配置名称和安装位置》下一步8.配置处理器》下一步9.配置内存10.配置网络11.12.创建磁盘13.磁盘命名...原创 2019-09-05 13:23:17 · 183 阅读 · 0 评论 -
windows、linux下flink初体验
最近在看尚学堂的大数据,学习了scala,阅读大数据相关的公众号了解了flink,忍不住要体验一把。下载flink下载可以直接到官网下载,选择合适的镜像网站下载即可,速度很快,我两分钟就下载完了如果使用scala进行开发,下载的时候,注意选择对应的版本我本地安装的是Java 1.8.0_201 / Scala 2.11.11安装windows安装window...原创 2019-08-28 11:16:47 · 617 阅读 · 0 评论 -
我的大数据之旅-Kafka消费者Java API
创建测试类package com.fengling;import org.apache.kafka.clients.consumer.ConsumerRecord;import org.apache.kafka.clients.consumer.ConsumerRecords;import org.apache.kafka.clients.consumer.KafkaConsumer...原创 2019-06-02 16:18:25 · 341 阅读 · 0 评论 -
我的大数据之旅-Kafka自定义分区生产者
需求:将所有分区的数据存储到topic的第1分区定义分区生成类:package com.fengling;import org.apache.kafka.clients.producer.Partitioner;import org.apache.kafka.common.Cluster;import java.util.Map;public class Custo...原创 2019-06-02 14:40:12 · 423 阅读 · 0 评论 -
我的大数据之旅-JAVA代码向KAFKA发送消息,带回调
maven pom配置查看上一篇文章我的大数据之旅-JAVA代码向KAFKA发送消息package com.fengling;import org.apache.kafka.clients.producer.*;import org.junit.Before;import org.junit.Test;import java.util.Properties;public...原创 2019-06-02 12:05:39 · 1108 阅读 · 0 评论 -
我的大数据之旅-JAVA代码向KAFKA发送消息
POM文件:<?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.ap...原创 2019-06-02 11:45:31 · 1760 阅读 · 0 评论 -
我的大数据之旅-Kafka环境搭建
环境准备: 3台已安装好JDK、Zookeeper的CentOS虚拟机环境搭建1) 下载压缩包https://www.apache.org/dyn/closer.cgi?path=/kafka/2.2.0/kafka_2.12-2.2.0.tgz2) 解压:[feng@hadoop129 software]$ lskafka_2.11-2....原创 2019-05-24 12:59:55 · 258 阅读 · 0 评论 -
我的大数据之旅-Oozie执行shell脚本任务
目录目标:通过Oozie调度hdfs上的shell脚本步骤:1.解压Oozie官方案例模板2.创建工作目录3.拷贝案例模板4.创建Shell脚本5.修改property文件6.修改workflow.xml7.将整个job目录上传HDFS8.运行job效果图:目标:通过Oozie调度hdfs上的shell脚本步骤:1.解压Oozie...原创 2019-04-29 14:23:52 · 1274 阅读 · 0 评论 -
我的大数据之路 - Flume 案例:监听上传Hive日志文件到HDFS
目录Goal:监听上传Hive日志文件到HDFSHow:1.拷贝Hadoop相关jar到Flume的lib目录下:2.创建flume-hive-hdfs.conf文件:3.开启你的集群然后执行监控配置:Done:作为一个程序员,郁闷的事情是,面对一个代码块,却不敢去修改,更糟糕的是,这个代码块还是自己写的。--摘自前端入门到精通Goal:监听上传Hive...原创 2019-04-23 13:30:22 · 1047 阅读 · 0 评论 -
我的大数据之旅-Oozie的安装与部署
如果你只做自己能力范围之内的事情,就永远没法进步。 -- 功夫熊猫3最近的工作生活,越来越感觉自己要做更多超过自己能力范围之内的事情。毕业之后,就进入一家20来人的公司,自己都没想,这一做就是快五年。人生有多少个五年啊,程序员的职业生涯又有多少个五年。离开了公司,嗖的一下到了深圳做起了外包。一开始的时候,内心是挺抵触外包的,内心总没个根,就像是人在他乡,内心总是空虚的。互联网公司...原创 2019-04-27 14:18:15 · 157 阅读 · 0 评论 -
Scala学习(一)-Scala windows sdk安装
2019年已过半,工作之余,忙里忙外的学习了一些大数据知识。最近学习了尚硅谷的推荐系统,大部分代码用的都是scala,现系统的学习一下,方便日后学习Spark。Scala是一门多范式的编程语言,一种类似java的编程语言[1],设计初衷是实现可伸缩的语言[2]、并集成面向对象编程和函数式编程的各种特性。Windows安装:1)首先打开Scala官网,拉到网页末尾下载Sc...原创 2019-08-08 09:34:14 · 2145 阅读 · 0 评论 -
Scala学习(二)- IDEA开发scala程序
目录IDEA开发scala程序1)创建Maven程序2) 添加scala语言支持3) 创建scala文件夹,并标注为源码文件夹4)Hello worldIDEA开发scala程序1)创建Maven程序一路Next下去2) 添加scala语言支持项目名称上 邮件 --> Add Framework Support...选择scala...原创 2019-08-08 17:36:01 · 335 阅读 · 0 评论 -
Scala学习(九)- 包(package)
相同点:Scala中创建包的方式与Java相同,使用同样的关键字:package/** * @author fengchengliang@126.com * @date 2019/8/26 */package com.fengling.chapter06 { // 创建包hi package hi { object PackageDemo { ...原创 2019-08-26 14:28:28 · 294 阅读 · 0 评论 -
Scala学习(八)- 类(Class)与继承(extends)、类型检查与转换
类的定义Scala中类的定义与Java类似,格式如下:[修饰符] class 类名 { 类体}/** * 定义一个猫类 */class Cat { var name = "" var age: Int = _ // 此处 _ 表示给一个默认值:Int类型就是0 var color: String = _ // 此处 _ 表示给一个默认值:Strin...原创 2019-08-25 18:45:30 · 945 阅读 · 0 评论 -
Scala学习(七)- 异常
Scala的异常处理与Java基本上相同 不同:Scala使用case 匹配不同异常import java.lang.ArithmeticException/** * @author fengchengliang@126.com * @date 2019/8/25 */object ExceptionDemo001 { def main(args: Array[Stri...原创 2019-08-25 14:08:49 · 153 阅读 · 1 评论 -
Scala学习(六)- 函数定义
基本语法:基本语法def 函数名 ([参数名: 参数类型], ...)[[: 返回值类型] =] { 语句... return 返回值}1)函数声明关键字为def (definition)2)[参数名: 参数类型], ...:表示函数的输入(就是参数列表), 可以没有。 如果有,多个参数使用逗号间隔3)函数中的语句:表示为了实现某一功能代码块4)函数可以...原创 2019-08-24 16:45:25 · 314 阅读 · 0 评论 -
韩顺平老师scala讲课笔记-函数学习方法
原创 2019-08-24 16:23:14 · 643 阅读 · 0 评论 -
Scala学习(四)- while循环、do...while循环、break
Scala的while循环与Java的语法结构基本上差不多While循环/** * @author fengchengliang@126.com * @date 2019/8/24 */object WhileDemo01 { def main(args: Array[String]): Unit = { var i = 10 while(i < ...原创 2019-08-24 15:07:46 · 1289 阅读 · 0 评论 -
Scala学习(三)- for循环
for循环语法格式:for( var x <- Range ){ statement(s);}说明:Range可以是一个数字区间:i to j [i , j](包含首尾),或者i until j [i , j)(包头不包尾)object ForDemo { def main(args: Array[String]): Unit = { val sta...原创 2019-08-23 22:20:35 · 275 阅读 · 0 评论 -
我的大数据之旅-Kafaka启停脚本
Kafka起动脚本#!/bin/bashBROKERS="hadoop129 hadoop130 hadoop131"APPHOME="/opt/module/kafka_2.11-2.2.0"APP_NAME="kafka_2.11-2.2.0"for i in $BROKERSdo echo "Starting ${APP_NAME} on ${i} >>...原创 2019-08-10 12:40:03 · 141 阅读 · 0 评论 -
我的大数据之路 - Flume 安装及端口监测案例
目录The reference documentation, tutorials :What is Apache Flume ?Deployment steps:解压安装包:配置Java的环境变量Monitoring case :端口监测并打印数据:telnet问题参考:The reference documentation, tutorials :A...原创 2019-04-22 14:13:24 · 191 阅读 · 0 评论