自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spark lz4包冲突

使用spark读取kafka分析的时候,kafka 的startingOffsets如果设置为earliest,就会报错:java.lang.NoSuchMethodError: net.jpountz.lz4.LZ4BlockInputStream.<init>(Ljava/io/InputStream;Z)V使用mvn -Dverbose dependency:tre...

2019-07-15 16:44:47 600

原创 spark structure streaming作业没有写checkpoint引起的灾难

使用sturcture streaming统计kafka流数据的一些指标,将查询结果输出到mysql,由于中间没有数据落盘,所以就没有写checkpoint,因为心里想着如果程序宕掉其实也不需要保存offset,结果在本地local模式测试没有任何问题,但是提交到集群使用yarn调度就出现了问题,报错如下:Caused by: org.apache.hadoop.ipc.RemoteExcep...

2019-07-09 12:56:43 724 1

转载 oozie死锁问题解决方案

链接如下:http://niyanchun.com/oozie-deadlock-solution.html

2019-06-27 15:14:32 693

原创 maven工程jar包冲突解决方法

springboot工程使用maven-assembly-plugin插件打包程序后,启动报jar包冲突,报错日志如下:SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/home/api_streaming/streaming-api-1.0/lib/logback-cla...

2019-05-28 19:34:36 3788

原创 kerberos协议认证详细过程

本文假设已经对kerberos有一定的了解基础上。kerberos认证涉及到三方: client,KDC(kerberos databse center),server(client需要访问的服务,hdfs等)。一、kerberos中的key一种是Long-term Key/Master Key:Master Key是基于密码经过一定规则派生的,对于Long-term Key有这样的原则:被...

2019-05-19 23:02:08 6753 1

原创 在kerberos化hadoop集群提交spark任务

在kerberos集群上提交 spark任务复杂性远远高于非kerberos集群,提交spark任务分为两种模式:yarn-client和yarn-cluster模式,先简单说明一下这两种模式。1.yarn-client模式使用yarn-client模式提交,提交任务的client节点作为spark driver,executor在yarn container中启动,运行日志和状态信息都可以在...

2019-04-30 20:35:37 4591 4

原创 HDFS文件读写操作

一、读操作读操作分为两部分:打开文件和读操作。1、打开文件客户端在代码中打开文件如下:FileSystem fileSystem = new DistributedFileSystem();fileSystem.open(new Path("/test"),bufferSize);此时调用了DistributedFileSystem的open()方法在DistributedFile...

2019-04-19 22:19:02 306

原创 HDFS客户端

HDFS目前提供了三种客户端接口:DistributeFileSystem、FsShell、DFSAdmin。DistributeFileSystem为用户提供了API,用于开发HDFS应用程序;FSShell工具使用户可以通过HDFS Shell命令执行常见的文件系统操作,例如创建文件、删除文件、创建目录等;DFSAdmin则向系统管理员提供了管理HDFS的工具,例如执行升级、管理安全模式等操...

2019-04-19 21:57:42 534

原创 datanode下线和宕机

一、datanode宕机datanode宕机后,hdfs会将缺失的block根据副本因子数再复制一份,宕机的datanode恢复之后,该datanonde上多余的块不会立即删除,因为hdfs block数量有一个上线,一般会大于副本因子,只要block数量不超过上线,hdfs不会删除多余的block,除非手动出发balancer。二、datanode下线datanode下线过程中,由于需要快...

2019-04-18 19:28:08 2553

原创 HBase region is not online

hbase集群加入一台异构机器后,跑任务报错:org.apache.hadoop.hbase.NotServingRegionException: Region … is not online on ${node}使用命令检查和修复:hbase hbck -details ‘namespace:table’显示hbase 集群inconsistency然后修复之:hbase hbc...

2019-04-18 17:52:03 579

原创 hdfs block

我认为原因有如下:1.减少寻道时间,对于hdfs来讲,寻道是一个逻辑的概念,因为真正的寻道发生在磁盘,这里的寻道时间指的就是定位到块的时间。hdfs是存储大数据的,如果块设计的很小,一个文件就会由很多块组成,而HDFS上文件读写的最小单位是块,这样,寻找块的时间就会大大增加,降低得写效率。2.减少任务数,一个map或者一个reduce都是以一个块为单位处理,如果块很小的话,mapreduce任...

2019-04-16 15:57:20 868

原创 redis 三种集群模式

一、主从模式,1、工作原理:slave节点启动并连接到master后,将主动发送一个SYNC命令。Master服务主节点收到同步命令后将启动后台存盘进程,同时接收客户端的命令,在后台进程执行完毕后,Master将传送整个数据文件同步到Slave,以完成一次完全同步。另外slave同步到master的过程是一个异步的过程,即使同步没有完成,master也可以接收客户端请求 2、搭建过...

2018-08-14 17:29:40 2411

转载 聚簇索引和非聚簇索引

 本文转载自:https://www.cnblogs.com/auxg/p/Cluster-and-NonCluster-index.html 今天我们来聊一聊关于 聚簇索引和非聚簇索引的问题;  刚开始学数据库SQL的时候,就知道有主键啊(Primary-key),外键啊(Foreign-key)啥的,连个表查询就已经不清楚是要on 那几个字段了,在数据量不太大的情况下,根本不会考虑索...

2018-08-01 18:48:34 213

转载 Java Map集合面试题汇总

转载自:https://www.jianshu.com/p/3dfabb977bf6 1、 你都知道哪些常用的Map集合?HashMap、HashTable、LinkedHashMap、ConcurrentHashMap。2、Collection集合接口和Map接口有什么关系?没关系,Collection是List、Set父接口不是Map父接口。3、HashMap是线程安全的吗...

2018-08-01 14:23:28 6156

转载 ConcurrentHashMap vs Collections.synchronizedMap()不同

ConcurrentHashMap 和 Collections.synchronizedMap()的区别,看到一篇文章介绍的的很详细就转载了,原文地址:https://www.cnblogs.com/draem0507/p/4670343.html 之前项目中,有用到过Collections.synchronizedMap(),后面发现当并发数很多的时候,出现其他请求等待情况,因为sy...

2018-07-25 11:43:21 822

原创 (spark问题一)scala开发spark遇到的奇怪bug

今天使用spark-mllib调用逻辑回归,运行代码报错如下:Error:scalac: Error: object VolatileFloatRef does not have a member createscala.reflect.internal.FatalError: object VolatileFloatRef does not have a member create ...

2018-07-22 21:56:35 3786 1

原创 (hadoop运维四)cloudera manager安装hue

使用cloudera maneger安装hue服务时,建立数据库链接时报错,如下图所示解决办法为:1、查看cm server日志,显示报错:django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: libmysqlclient_r.so.16: cannot open shared object...

2018-07-22 11:01:09 652

转载 MySQL的InnoDB事务隔离级别

本文转自:http://blog.sina.com.cn/s/blog_499740cb0100ugs7.htmlMySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。未提交读(READ UNCOMMITTED)。另一个事务修改了数据,但尚未提交,而本事务中的SELECT会读到这些未被提交的数据(脏读)。提交读(READ COMMITTED)。本事务读...

2018-06-05 10:35:24 284

原创 java.sql.SQLException: ResultSet is closed

自定义连接池将mysql和spark-streaming进行集成,连接池JDBCWrapper类中的doQuery()方法如下:public ResultSet doQuery(String sqlText) { Connection conn = getConnection(); PreparedStatement preparedStatement = null; /...

2018-05-16 16:33:49 4339

转载 transient关键字

本文转自 https://www.cnblogs.com/lanxuezaipiao/p/3369962.html1. transient的作用及使用方法      我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自...

2018-05-14 10:09:58 503

原创 类锁和对象锁

1、对象锁(synchronized修饰方法或代码块),分两种情况,一种是synchronized method和synchronized(this)代码块,锁定的都是当前对象,两者是同一把锁,一种是synchronized(任意Object对象),代码如下:public class ObjectLock { public void method1(){ synchronized (this) ...

2018-05-13 22:23:04 398

原创 kafka和flume集成

使用flume+kafka+sparkstreaming进行日志实时处理,flume作为kafka的producer,sparkstreaming作为kafka的消费者。flume只有1.6.0和以上的版才可以和kafka集成,1.6.0之前的版本没有提供kafka sink这个功能,在kafka中创建一个flumeTopic topic,然后使用flume 监控五个日志文件,五个文件实时更新,f...

2018-05-11 09:31:17 437

原创 spark-streaming 和kafka集成采坑总结,jar包问题

使用spark-streaming 和kafka集成进行wordcount,spark和kafka版本分别为:spark-1.6.0和kafka_2.10-0.8.2.2,开发时只需要spark-assembly-1.6.0-hadoop2.6.0.jar包和spark-streaming-kafka_2.10-1.6.0.jar包就够了,但是当将最终代码打成jar包提交spark集群运行时,会报...

2018-05-09 14:42:34 5863 1

原创 spark aggregateByKey算子

aggregateByKey算子的作用是根据key进行聚合操作,代码均是基于java api,先贴代码:public class AggregateByKeyOperator { public static void main(String[] args) { SparkConf sparkConf = new SparkConf().setAppName("Aggregate...

2018-04-24 16:47:21 417

转载 spark数据本地化

转载自:https://www.cnblogs.com/jxhd1/p/6702224.html?utm_source=itdadao&amp;utm_medium=referralSpark数据本地化--&gt;如何达到性能调优的目的1.Spark数据的本地化:移动计算,而不是移动数据2.Spark中的数据本地化级别:TaskSetManager 的 Locality Levels 分为以下五个...

2018-04-22 12:57:10 411

原创 IDEA禁止编译整个项目

使用IDEA开发的时候,当对某一个类进行编译运行的时候,默认会对整个project进行编译,此时当项目中的其他类有错误,编译就会不通过,非常麻烦,进行如下设置可以解决这个问题1、在IDEA右上角:File-&gt;Setting-&gt;Compiler中勾选所有项,并对Java Compiler进行设置,如下:2、Run-&gt;Edit Configuration,选中需要编译的模块,去掉ma...

2018-04-20 09:06:55 8599 1

原创 RPM方式安装MySQL并修改存储位置

之前安装mysql一直使用yum方式,这次准备用rpm离线安装遇到了不少问题。部分转自:https://www.cnblogs.com/wangshuyi/p/6089344.html需要注意的是,在官网下载社区版mysql,有的版本只有glibc2.5-x86_64.tar.gz这种安装包,可以换一个版本找到rpm包。下载链接:https://downloads.mysql.com/archiv...

2018-03-08 16:36:44 7690 1

转载 一文看懂区块链架构设计(附知识图谱)

本文转自:http://www.8btc.com/ebook-blockchain前言 区块链作为一种架构设计的实现,与基础语言或平台等差别较大。区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一,本身不是新技术,类似Ajax,可以说它是一种技术架构,所以我们从架构设计的角度谈谈区块链的技术实现。无论你擅长什么编程语言,都能够参考这种设计去实现一款区块链产品。与此同时,梳理与之相...

2018-03-07 23:50:58 9936 1

转载 Tomcat 7.0-如何通过Web访问控制平台和管理平台

原文链接:http://blog.csdn.net/jinguangliu/article/details/45950279简介为了简化用户配置,Tomcat 7.0提供了基于Web方式的管理平台和控制平台,用户通过浏览器,就可以方便的配置Tomcat服务器,并管理运行的Web应用,如发布、启动、停止或删除操作,还可以查看Web应用状态。本文介绍如何配置和访问相应的Tomcat管理和控制平台的应用...

2018-03-05 19:54:57 585

原创 两个超大的数相加

两个超大的数相加,当数的取值范围已经远远超过long型,可以将他们转化为字符串再相加,代码如下,用到了org.apache.commons.lang3.StringUtils类import org.apache.commons.lang3.StringUtils;public class BigNumberPlus { public static String bigNumberPlus(Str...

2018-02-28 19:21:25 717

原创 service crond restart--User has insufficient privilege

之前使用hdfs用户创建了sqoop job,并将sqoop job执行脚本加入到crontab定时任务中,今天需要在执行脚本中加入新的sqoop job,然后重启crontab:service crond restart后,发现报错User has insufficient privilege,原来是hdfs用户没有重启crond 服务的权限,解决方法是对hdfs用户赋予sudo权限,进行如下操

2018-01-31 16:36:12 5994

原创 linux ubuntu下安装mysql并修改数据库存储路径

一、安装mysql1、centos系统安装mysql社区版,配置yum源,首先在https://dev.mysql.com/downloads/repo/yum/    下载mysql57-community-release-el6-11.noarch.rpm包,然后根据如下链接配置安装:https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en...

2018-01-30 10:08:53 3817 1

原创 hive事务管理

事务包含四要素:原子性(Atomicity):一个事务是一个不可再分割的工作单位,事务中的所有操作要么都发生,要么都不发生。一致性(Consistency):事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。这是说数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性。隔离性(Isolation):多个事务并发访问,事务之间是隔离的,一个事务不影响

2018-01-29 18:28:41 2410

原创 sqoop迁移mysql数据到hive中

一、先创建sqoop job,使用增量导入,python脚本如下:#!/usr/bin/pythonimport osimport sysimport globimport timeimport datetime##import all row fields --check-column create_timedef job_group0(n

2018-01-29 17:31:15 398

原创 如何将hive的执行结果返回给一个变量

首先可以将hive sql写入python脚本假如有如下hive sql:hive_cmd = 'hive -e "select count(*) from hbase.routermac_sort_10;"'一般在python中按照如下方式执行该hive sql:os.system(hive_cmd)但是当我需要在程序中拿到count()的执行结果时,使用os.s

2018-01-25 14:42:12 13273

原创 hbase rowkey的设计和预分区

在项目中结合使用了hive和hbase,需要把hive中的表插入到hbase,hive表都经过了打标签处理,共包含9个字段,根据业务需求,此时需将hive表中的routermac字段(string类型)设计成hbase表中的rowkey,hive中是每天一张表,hbase中是每月一张表。首先是进行预分区,由于集群共有20个regionserver,则设置40个分区(一)统计hive表中

2018-01-24 15:09:55 1078

原创 mysql索引

何为索引,数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。如图:在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引,由于索引直接指向数据,那么查找数据的时间复杂度就等于索引表的时间复杂度为表设置索引要付出代价的...

2018-01-23 18:50:53 249

原创 mysql使用explain进行查询性能分析

一、首先新建员工表和部门表,并加载数据,新建mysql.sql,如下:create table emp(empno int,ename varchar(20),job varchar(20),mgr int,hiredate varchar(20),sal double,comm double,deptno int);create table dept(deptno int,dname varch...

2018-01-23 17:30:57 1055

转载 LRU算法

原文链接:http://flychao88.iteye.com/blog/19776531. LRU1.1. 原理LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。1.2. 实现最常见的实现是使用一个链表保存缓存数据,详细算法实

2018-01-23 14:47:55 927

原创 hbase缓存机制

regionserver的缓存包含了memestore和blockcache两种,其中memstore用于写缓存(读缓存也包括),blockcache用于读缓存。regionserver给每一个region都分配一个memstore,数据写入的过程中先写入到memstore,当memstore达到设定的阈值后(由hbase.hregion.memstore.flush.size参数控制),会触发f

2018-01-23 14:14:04 2815

IDL语言学习,阎殿武著

这是一本很好的讲述IDL语言的书籍,希望可以帮到你

2014-11-18

空空如也

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

TA关注的人

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