自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 spark中groupByKey、reduceByKey与sortByKey

groupByKey把相同的key的数据分组到一个集合序列当中:[("hello",1), ("world",1), ("hello",1), ("fly",1), ("hello",1), ("world",1)] --> [("hello",(1,1,1)),("word",(1,1)),("fly",(1))]reduceByKey把相同的key的数据聚合到一起并进行相应的计算...

2019-09-25 19:07:19 504

原创 关系型数据库与非关系型数据库的区别

nosql和关系型数据库比较?优点:1)成本:nosql数据库简单易部署,基本都是开源软件,不需要像使用oracle那样花费大量成本购买使用,相比关系型数据库价格便宜。2)查询速度:nosql数据库将数据存储于内存之中,关系型数据库将数据存储在硬盘中,自然查询速度远不及nosql数据库。3)存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,所以可以存储基...

2019-09-03 16:28:38 214

原创 SparkSQL-通用加载和保存

Spark SQL的DataFrame接口支持多种数据源的操作。一个DataFrame可以进行RDDs方式的操作,也可以被注册为临时表。把DataFrame 注册为临时表之后,就可以对该DataFrame执行SQL查询Spark SQL的默认数据源为Parquet格式。数据源为Parquet文件时,Spark SQL可以方便的执行所有的操作。修改配置项spark.sql.sources.de...

2019-08-27 21:42:47 211

原创 spark SQL自定义UDAF

json文件:{"name":"cc", "age":18}{"name":"qiqi", "age":19}{"name":"xiaohei", "age":17}继承UserDefinedAggregateFunctionimport org.apache.spark.sql.SparkSessionimport org.apache.spark.sql.Rowimpo...

2019-08-26 22:30:17 134

原创 代码块开发SparkSQL程序

先创建一个spark session导包(根据自己的版本来选择,我用的是spark2.4.3):<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.11</artifactId> <version>2...

2019-08-26 13:16:39 184

原创 spark-DataFrame,DataSet

首先先看一个rdd,DF,DS的转换图DataFrame创建://读取json文件 scala> val df=spark.read.json("G:/ccData/person.json")df: org.apache.spark.sql.DataFrame = [age: bigint, id: bigint ... 1 more field]scala&g...

2019-08-25 22:12:01 119

转载 spark搭建阿里云集群

因为现阶段使用到了spark,所以就想搭建spark集群平台在阿里云上,网上找了很多资料,发现每一个人写的都不太一样,试过几次发现搭建不成功,于是自己慢慢琢磨,总结他们的经验,最后自己成功搭建,写下此篇博客,防止以后再次需要搭建时遇到问题,以下为搭建步骤。hadoop、scala集群安装成功下载安装官网下载地址:http://spark.apache.org/downloads.htm...

2019-08-24 19:10:45 654

转载 spark-job逻辑图

Job逻辑执行图典型的Job逻辑执行图如上所示,经过下面四个步骤可以得到最终执行结果:1.从数据源(可以是本地file,内存数据结构, HDFS,HBase等)读取数据创建最初的RDD。2.对RDD进行一系列的transformation()操作,每一个transformation()会产生一个或多个包含不同类型RDD。3.对最后的finalRDD进行action()操作,每个...

2019-08-24 11:27:35 145

转载 简单的理解zookeeper的leader选举

Leader选举是保证分布式数据一致性的关键所在。Leader选举分为Zookeeper集群初始化启动时选举和Zookeeper集群运行期间Leader重新选举两种情况。在讲解Leader选举前先了解一下Zookeeper节点4种可能状态和事务ID概念。1、Zookeeper节点状态LOOKING:寻找Leader状态,处于该状态需要进入选举流程LEADING:领导者状态,处于该状态的节点...

2019-08-23 22:55:38 108

原创 spark,代码实现flatMap报错:missing parameter type

这里rdd1的类型是None,所以我们需要类型转换一下,默认是JAVARDD[String]类型

2019-08-23 15:03:32 2531

原创 实现kafka的producer和consumer

先定义一个Person对象package test;public class Product { private int id; private String name; private double price; public Product() { super(); // TODO Auto-generated constructor stub } public ...

2019-08-22 22:37:39 285

原创 自定义实现kafka分区

首先写一个自定义分区算法package Testimport java.util.Map;import org.apache.kafka.clients.producer.Partitioner;import org.apache.kafka.common.Cluster;//生命周期方法public class HashPartition implements Partitio...

2019-08-22 21:36:30 164

原创 kafka入门

搭建什么的都不说了,先来熟悉一下基本操作创建一个消息 replica为3, partition为3 1)启动zk(保证你自己的zookeeper已经启动了,这里我用的是kafka自带的zookeeper) bin/zookeeper-server-start.sh config/zookeeper.properties 1>/dev/null 2&gt...

2019-08-22 19:01:18 109

原创 Class<SpringJUnit4ClassRunner> cannot be resolved to a type

建spring项目的时候解决办法:在pom.xml加依赖这里根据自己的版本去修改就好了

2019-08-22 18:33:01 150

原创 "javax.servlet.http.HttpServlet" was not found

右键项目,选择properties选择java build path -> add library -> server runtime 选中tomcat 然后 applyandclose

2019-08-22 17:23:18 1317

原创 SparkSQL-基础查询

josn文件内容{"id":1, "name":"cc", "age":18}{"id":2, "name":"qiqi", "age":19}{"id":3, "name":"xiaohei", "age":17}{"id":1, "name":"cc2", "age":15}{"id":2, "name":"qiqi2", "age":20}{"id":3, "name":"...

2019-08-22 15:12:22 191

原创 Spark Streaming基本原理

SparkStreaming  Spark Streaming类似于Apache Storm,用于流式数据的处理。Spark Streaming有高吞吐量和容错能力强等特点。Spark Streaming支持的数据源有很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象操作如:map、reduce、join、window...

2019-08-22 13:11:37 1961

原创 SparkSQL-入门

什么是SparkSQLSpark SQL是Spark用来处理结构化数据的一个模块,它提供了两个编程抽象分别叫做DataFrame和DataSet,它们用于作为分布式SQL查询引擎。从下图可以查看RDD、DataFrames与DataSet的关系。SparkSQL特点1)引入了新的RDD类型SchemaRDD,可以像传统数据库定义表一样来定义SchemaRDD。2...

2019-08-22 12:57:01 249

原创 spark核心RDD-combineByKey方法解析

首先 先来看看官方文档combineByKey[C](createCombiner: (V) ⇒C,mergeValue: (C,V) ⇒C,mergeCombiners: (C,C) ⇒C,numPartitions:Int):RDD[(K,C)]简单的解释下3个重要的函数参数:createCombiner: V => C ,这个函数把当前的值作为参数,...

2019-08-21 18:19:46 207

转载 zookeeper原理分析

zookeeper是什么ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户zookeeper提供了什么简单的说,zookeeper=文件系统+通知机制。1、 文件系统...

2019-08-21 00:40:46 108

原创 hive的调优以及数据倾斜

调优: fectch抓取(select,filter,limit) (这个适合老版本,因为老版本hive默认是minimal,现在新版本都是默认more) hive>set hive.fetch.task.conversion=none;//转为mr hive> select * from emp; Query ID = ya...

2019-08-19 23:16:09 155

原创 Hbase数据的导入导出以及优化

(需要关闭hbase服务) 数据库的备份还原: hadoop distcp \ hdfs://master:9000/hbase \ hdfs://master:9000/hbase_back/backup20180801 还原: hadoop distcp \ hdfs://master:9000/hbase_back/backup201...

2019-08-19 23:03:27 559

原创 Hbase整合hive

首先进行jar包的复制:复制以下hbase/lib/部分 jar到hive/lib/hbase-common-1.4.10.jarhbase-server-1.4.10.jarhbase-client-1.1.4.10.jarhbase-protocol-1.4.10.jarhbase-it-1.1.4.10.jarhtrace-core-3.1.0-incubating.jar...

2019-08-19 23:01:28 96

原创 maven项目 pom.xml的execution报错

在Preferences里选择Maven-->Errors/Warnings-->Plugin execution not covered by lifecycle configuration 选择Ignore

2019-08-19 15:21:58 503

原创 maven项目里jar包变成了灰色

是因为pom里面带上了<scope>XXX</scope>导致的,scope的分类在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署。目前<scope>可以使用5个值:* compile,缺省值,适用于所有阶段,会随着项目一起发布。* provided,类似compile,期望JDK...

2019-08-19 14:55:06 341

原创 Hbase的基本操作

2019-08-19 13:31:43 74

原创 Hbase存储方式

Hbase概念HBase是一个分布式的,面向列的数据库它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作)。主要用来存储非结构化和半结构化的松散数据。与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。  Hbase中的表一般有这样的...

2019-08-19 13:24:57 4064

原创 maven项目src/test/java是灰色的

点击项目右键,build path ,然后configure然后选择source这一栏,再双击src/test/java下的Contains test sources 把yes改为no 就可以了

2019-08-19 10:51:15 2578

原创 sqoop把数据 从mysql导入到hdfs,hive,hbase

1. 列出库 sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username XXX(用户名)--password XXX(密码)2. 列出workflow下的表 sqoop list-tables --connect jdbc:mysql://localhost:3306/workflow --userna...

2019-08-18 13:40:55 367

转载 hdfs的四大机制和文件上传下载

四大机制:(1)心跳机制:  介绍: hdfs是主从架构,所有为了实时的得知dataNode是否存活,必须建立心跳机制,在整个hdfs运行过程中,dataNode会定时的向nameNode发送心跳报告已告知nameNode自己的状态。  心跳内容:     - 报告自己的存活状态,每次汇报之后都会更新维护的计数信息     - 向nameNode汇报自己的存储的block列表信息...

2019-08-18 10:49:52 209

原创 nameNode管理元数据(metadata)的流程

一、NameNode启动时如何维护元数据:1、概念介绍:Edits文件:NameNode在本地操作hdfs系统的文件都会保存在Edits日志文件中。也就是说当文件系统中的任何元数据产生操作时,都会记录在Edits日志文件中。eg:在HDFS上创建一个文件,NameNode就会在Edits中插入一条记录。同样如果修改或者删除等操作,也会在Edits日志文件中新增一条数据。FsImage映像文...

2019-08-18 10:13:13 1914

转载 Secondary NameNode

浅析 Secondary NameNode(辅助namenode)在初学Hadoop时,有个让人疑惑的概念:Secondary NameNode,也叫辅助namenode。从命名看,好像是第二个namenode,用于备份主namenode,在主namenode失败后启动。那么,Secondary NameNode的作用是什么?是如何工作的?一,NameNodeHDFS集群有两类节点以管理...

2019-08-18 09:56:05 122

原创 单例模式

这里主要讲一下懒汉模式和恶汉模式1) 懒汉模式://懒汉模式 public class LazySingle { private static LazySingle sInstance = null; private LazySingle() {} public static LazySingle getInstance() { if (s...

2019-08-17 15:57:32 86

原创 zookeeper选举leader

(1) 集群启动中的 Leader 选举这里以三台主机组成的集群为例。在集群初始化阶段,当第一台服务器 Server1 启动时,其会给自己投票,然后发布自己 的投票结果。投票包含所推举的服务器的 myid 和 ZXID,(zxid:事务请求的唯一标记,由leader服务器负责进行分配。),此时 Server1 的投票为(1, 0)。由于其它机器还没有启动所以它收不到反馈信息,Server1...

2019-08-16 20:23:37 181

原创 zookeeper入门

关于zookeeper的概述Zookeeper 是为分布式应用程序提供高性能协调服务的工具集合,也是Google的Chubby一个开源的实现,是Hadoop 的分布式协调服务。它包含一个简单的原语集,分布式应用程序可以基于它实现配置维护、命名服务、分布式同步、组服务等。Zookeeper可以用来保证数据在ZK集群之间的数据的事务性一致。其中ZooKeeper提供通用的分布式锁服务,用以协调分布...

2019-08-16 20:00:27 166

转载 linux下python指向python3

root用户下输入,建立python可选项update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2update-alternatives --install /usr/bin/python python /usr/bin/python3.6 1切换python版本sudo update-...

2019-07-31 08:19:13 738

原创 unsupported format character 'Y' (0x59) at index 167

根据时间字段来查询sql=date_format(now(),'%Y-%m-%d')<overDate,在数据库使用的时候能查得到数据,但是用python运行就报错了后来查了下,因为python执行的sql中存在类似DATE_FORMAT(CREATE_TIME, ‘%Y-%m-%d’) 的写法,其中%Y与python的参数%s冲突解决的办法就是把%Y-%m-%d 改成 %%...

2019-07-27 10:26:55 1322

原创 Hbase安装

首先来介绍一个怎么安装本地的本地安装: 1.下载 2.0.0版本 2.解压 3.拷贝到/home/cc/hbase-2.0.0 (这里就是自己hive的目录) 4.环境配置: sudo gedit /etc/profile 添加: export HBASE_HOME=/home/cc/hbase-2...

2019-07-25 16:01:18 104

原创 process information unavailable

今天在虚拟机kill进程的时候 出现了process information unavailable出现这个问题的原因呢?其实很简单,就是你用A用户创建了一个进程,然后你用B用户把他干掉了,虽然是干掉了,但是查看的时候会出现这个该怎么解决呢?首先我们进入到 tmp目录下,用ls查看,你会发现有几个以hsperfdata_开头的文件然后你点进去看的时候就知道那个进程是哪个用...

2019-07-25 15:00:35 6400 3

原创 linux很多命令用不了 例如: ls: command not found

出现这个问题的原因是系统环境变量没有正确配置我的问题是添加PATH的时候 写成了$path (写成小写的了)下面是解决的方法:1.先用:echo $PATH发现PATH丢失的东西 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin2.然后用临时环境变量:export PATH=$...

2019-07-25 12:34:30 1085

hive-hbase-handler-1.2.2.jar

hive和hbase整合的时候,如果出现不兼容的情况需要手动编译:hive-hbase-hander-1.2.2.jar把这个jar替换掉hive/lib里的那个jar包

2019-08-21

空空如也

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

TA关注的人

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