自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Java(JCo3)调用sap接口

安装JCo3windows安装 将sapjco3.dll拷贝到c:/windows/system32与C:\Program Files (x86)\Java\jdk1.7.0_51\bin下,将sapjco3.jar加入项目的classpath中 linux安装 sapjco3.jar放入Java的lib目录下,将libsapjco3.so放入Java/jre/lib/amd64/ser...

2019-06-20 15:20:14 3042 1

转载 idea配置log4j

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。maven依赖...

2019-06-20 10:22:59 7504 3

转载 Spark内存管理及优化

Spark作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解Spark内存管理的基本原理,有助于更好地开发Spark应用程序和进行性能调优。如果提交的时候内存分配过大则占用资源,内存分配过小就容易出现内存溢出和fullGC的问题,报如下异常:java heap out of memory FetchFailedExceptionFileNotFoun...

2019-02-22 09:44:37 284

转载 Hbase架构和读写流程

在HBase读写时,相同Cell(RowKey/ColumnFamily/Column相同)并不保证在一起,甚至删除一个Cell也只是写入一个新的Cell,它含有Delete标记,而不一定将一个Cell真正删除了,因而这就引起了一个问题,如何实现读的问题?要解决这个问题,我们先来分析一下相同的Cell可能存在的位置:首先对新写入的Cell,它会存在于MemStore中;然后对之前已经Flush到H...

2019-02-20 13:58:38 234

转载 Hive支持行级insert、update、delete

Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置。要想支持行级insert、update、delete,需要配置Hive支持事务。一、Hive具有ACID语义事务的使用场景1. 流式接收数据。许多用户使用诸如Apache Flume、Apache Storm或Apache Kafka这样的工具将流数据灌入Hadoop集群。当这些工具以每秒数百行的频率写入时...

2019-02-18 17:10:59 487

转载 shell实现队列控制并发执行脚本

在工作中,个人需要用到统计数据的脚本,比如对批量文件过滤关键字进行统计等等,这种需求很常见。默认的shell脚本是串行的,当有大量文件的时候,要进行循环一个个的过滤出来,这个过程需要比较久,效率也比较低。通过查找资料,对脚本进行调整,实现并发执行,具体如下:#!/bin/bashdateDIR=/test/log/FILE_NAME=65535_`date +"%Y%m%d"`;...

2019-02-18 09:44:20 359

原创 spark读取错误文件

重要的参数:spark.files.ignoreCorruptFiles = true 

2019-02-13 09:24:18 986

转载 java获取指定日期为节假日还是工作日

package com.ideal.test.utils;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Calendar;import java.util.Date;import java.util.List;i...

2019-02-13 09:20:00 2982

转载 spark调优

sparks调优参数调优参数虽名目多样,但最终目的是提高CPU利用率,降低带宽IO,提高缓存命中率,减少数据落盘。 不同数据量的最优参数都不相同,调优目的是让参数适应数据的量级以最大程度利用资源,经调优发现并不是所有参数有效,有的参数的效果也不明显,最后折中推荐如下调优参数以适应绝大多数SQL情况,个别SQL需要用户单独调参优化。(以下参数主要用于Spark Thriftserver,仅供参...

2019-02-13 09:19:52 319

转载 Spark Streaming性能调优

数据接收并行度调优(一)通过网络接收数据时(比如Kafka、Flume),会将数据反序列化,并存储在Spark的内存中。如果数据接收称为系统的瓶颈,那么可以考虑并行化数据接收。每一个输入DStream都会在某个Worker的Executor上启动一个Receiver,该Receiver接收一个数据流。因此可以通过创建多个输入DStream,并且配置它们接收数据源不同的分区数据,达到接收多个数据...

2019-02-12 16:27:57 166

转载 Spark Streaming:Window窗体相关操作

SparkStreaming之window滑动窗口应用,Spark Streaming提供了滑动窗口操作的支持,从而让我们可以对一个滑动窗口内的数据执行计算操作。每次掉落在窗口内的RDD的数据,会被聚合起来执行计算操作,然后生成的RDD,会作为window DStream的一个RDD。网官图中所示,就是对每三秒钟的数据执行一次滑动窗口计算,这3秒内的3个RDD会被聚合起来进行处理,然后过了两秒...

2019-02-12 16:20:57 180

转载 使用SparkStreaming实现将数据写到MySQL中

 引入依赖<dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId>    <version>5.1.38</version></dependency>

2019-02-12 16:05:37 1248 1

转载 将sparkStreaming的结果保存到S3

将spark解析的结果保存到S3这个和保存到本地的区别在于,你需要配置aws的key和密码,以及它的region,代码如下package com.alo7.sparkimport java.util.Propertiesimport test07.DWReadS3LogToKafka_Tpuser.getPropertiesimport org.apache.log4j.{Lev...

2019-02-12 15:55:53 618 1

转载 HbaseRowkey设计以及列族和列的关系

 Hbase上Regionserver的内存分为两个部分,一部分作为Memstore,主要用来写;另外一部分作为BlockCache,主要用于读数据;这里主要介绍写数据的部分,即Memstore。当RegionServer(RS)收到写请求的时候(writerequest),RS会将请求转至相应的Region。每一个Region都存储着一些列(a set of rows)。根据其列族的不同,将...

2019-02-12 15:43:36 7117

转载 Spark-Hbase操作以及过滤器

spark读写hbasepackage com.huawei.bigdata.spark.examplesimport java.io.{File, IOException}import java.utilimport com.esotericsoftware.kryo.Kryoimport org.apache.hadoop.conf.Configurationimport ...

2019-02-12 11:59:35 1489

转载 Scala里面如何使用枚举

枚举通常用来定义已知数量的常量,比如月份,星期,季节等等,用过java的人都知道定义枚举的关键字是enum,在scala里面和java有所不同,来看一个完整的例子定义:object EnumTest { /*** * 定义一个星期的枚举 */ object WeekDay extends Enumeration{ type WeekDay = Value ...

2019-02-12 10:22:21 205

转载 SparkSql中的ISNULL和CASE WHEN方法

sqlContext.sql("select (CASE WHEN ISNULL(B.age)=false THEN B.age ELSE  A.age END  ) AS age , A.name AS name  from (select * from people01 ) A  left join  (select * from people02)  B  on A.name= B.name...

2019-02-12 10:22:13 3511

转载 Hadoop解决小文件存储思路

为什么Hadoop会有小文件问题 Hadoop的小文件问题主要是会对NameNode内存管理和MapReduce性能造成影响。Hadoop中的每个目录、文件和block都会以对象的形式保存在NameNode的内存中。根据经验每个对象在内存中大概占用150个字节。如果HDFS中保存2000万个文件,每个文件都在同一个文件夹中,而且每个文件都只有一个block,则NameNode需要6GB...

2019-02-12 10:08:30 347

转载 Spark数据读取格式解析

     文件存储编码格式 建表时如何指定 优点弊端 textfile    文件存储就是正常的文本格式,将表中的数据在hdfs上 以文本的格式存储 ,下载后可以直接查看,也可以使用cat命令查看 1.无需指定,默认就是 2.显示指定stored as textfile 3.显示指定  ST...

2019-02-12 09:34:59 1659

转载 Spark DataFrame一行分割为多行

scala> movies.show(truncate = false)+-------+---------+-----------------------+|movieId|movieName|genre |+-------+---------+-----------------------+|1 |example1 |action|t...

2019-02-11 18:12:06 1899

转载 Hive中的explode()函数和collect_set()函数

1.substr()函数substr()是字符串截取函数,其语法为: substr(string A, int start, int len),返回值为 string类型。说明:返回字符串A从start位置开始,长度为len的字符串。这里需要注意的是初始位置是从1开始。2.explode()函数explode()的功能是行转列。多说无益,直接上例子。hive> SELECT...

2019-02-11 18:11:18 724

转载 关于在使用sparksql写程序是报错以及解决方案:org.apache.spark.sql.AnalysisException: Duplicate column(s): "name" found,

val conf = new SparkConf().setMaster("local[2]").setAppName("Load_Data") val sc = new SparkContext(conf) val ssc = new sql.SparkSession.Builder() .appName("Load_Data_01") .master("local[2]"...

2019-02-11 18:02:19 6850 1

转载 实战SparkStream+Kafka+Redis实时计算商品销售额

2016年天猫双十一当天,零点的倒计时话音未落,52秒交易额冲破10亿。随后,又迅速在0时6分28秒,达到100亿!每一秒开猫大屏上的交易额都在刷新,这种时实刷新的大屏看着感觉超爽。天猫这个大屏后面的技术应该是使用流计算,阿里使用Java将Storm重写了,叫JStrom(https://github.com/alibaba/jstorm),最近学习SparkStream和Kafka,可以简单模仿...

2019-02-11 17:43:21 714

转载 spark-stream 访问 Redis数据库示例

spark-stream 访问 Redis数据库示例最近在spark-stream上写了一些流计算处理程序,程序架构如下 程序运行在Spark-stream上,我的目标是kafka、Redis的参数都支持在启动时指定。 用scala实现的Redis服务器的地址是写死的,我的程序要挪个位置,要重新改代码编译。当时倒腾了一些时间,现在写出来和大家分享,提高后来者的效率...

2019-02-11 17:36:47 492 1

转载 Spark学习之Redis

1. 关于Nosql的介绍不支持sql查询语言 相互之间没有复杂的关系结构,只是简单的K—V形式 没有统一的查询语句,每一个NOsql数据库都有自己独立的api和查询语言 种类十分繁多Nosql的种类 MongoDB 文档型数据库,适合做文档管理系统(CMS) Redis 内存数据库,数据结构服务器 Hbase 基于hadoop的分布式数据库,适合海量数据 Cassandra...

2019-02-11 17:32:16 785

转载 Linux下文件的压缩与解压缩

一、zip格式        zip可能是目前使用的最多的文档压缩格式。它最大的优点就是在不同的操作系统平台上使用。缺点就是支持的压缩率不是很高,而tar.gz和tar.bz2在压缩率方面做得非常好。        我们可以使用下列的命令压缩一个文件:        zip -r archive_name.zip filename    (-r是压缩文件)       下面是如...

2019-02-11 16:51:38 107

转载 让Spark如虎添翼的Zeppelin – 基础篇

Spark 是一个非常好的计算平台,支持多种语言,同时基于内存的计算速度也非常快。整个开源社区也很活跃。但是Spark在易用性上面还是有一些美中不足。 对于刚接触的人来说,上手以及环境搭建还是有一些困难。 另外,如果希望将结果绘制成图表分享给别人,还需要很长一段路程。目前已经有一些解决方案:【TBD】Jupyter Notebook 使用很广泛,但是看起来主要还是以前ipython-...

2019-02-11 16:51:02 631

转载 kafka入门:简介、使用场景、设计原理、主要配置及集群搭建

一、入门    1、简介    Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer,此外kafka集群有多个kafka实例...

2019-02-11 16:41:10 110

转载 Kafka vs RocketMQ—— Topic数量对单机性能的影响

引言上一期我们对比了三类消息产品(Kafka、RabbitMQ、RocketMQ)单纯发送小消息的性能,受到了程序猿们的广泛关注,其中大家对这种单纯的发送场景感到并不过瘾,因为没有任何一个网站的业务只有发送消息。本期,我们就来模拟一个真实的场景:消息的发送和订阅一定是共存的 要支持多个订阅端订阅自己感兴趣的消息鉴于上一期Kafka和RocketMQ的指标和关注度很高,本期我们将只针对这...

2019-02-11 16:37:51 1474

转载 Spark 之 Had a not serializable result: org.apache.hadoop.hbase.io.ImmutableBytesWritable

1. 场景&异常:Spark 读取 Hbase 报错,代码如下:val conf = new SparkConf().setAppName("SparkHistoryTags").setMaster("local")val sc = new SparkContext(conf)// 获取HbaseRDDval hbaseRDD = sc.newAPIHadoopRDD(ge...

2018-12-26 10:54:06 1501

转载 Phoenix入门到精通

Phoenix 使用说明Phoenix是什么Phoenix查询引擎支持使用SQL进行HBase数据的查询,会将SQL查询转换为一个或多个HBase API,协同处理器与自定义过滤器的实现,并编排执行。使用Phoenix进行简单查询,其性能量级是毫秒。更多的信息可以参考官网:http://phoenix.apache.org/使用说明 准备工作 准备一个内网的ECS,需要和...

2018-11-30 10:49:01 213

转载 kafka性能调优

主要优化原理和思路kafka是一个高吞吐量分布式消息系统,并且提供了持久化。其高性能的有两个重要特点:利用了磁盘连续读写性能远远高于随机读写的特点;并发,将一个topic拆分多个partition。要充分发挥kafka的性能,就需要满足这两个条件kafka读写的单位是partition,因此,将一个topic拆分为多个partition可以提高吞吐量。但是,这里有个前提,就是不...

2018-11-30 10:22:40 203

转载 kafka的OffsetOutOfRangeException

自从把spark 从1.3升级到1.6之后,kafka Streaming相关问题频出。最近又遇到了一个。 job中使用Kafka DirectStream 读取topic中数据,然后做处理。其中有个测试job,停止了几天,再次启动时爆出了kafka.common.OffsetOutOfRangeException。下文记录下异常分析与解决过程。异常分析从字面意思上,说是kafka top...

2018-11-30 10:07:49 4452 1

转载 kafka性能调优

主要优化原理和思路kafka是一个高吞吐量分布式消息系统,并且提供了持久化。其高性能的有两个重要特点:利用了磁盘连续读写性能远远高于随机读写的特点;并发,将一个topic拆分多个partition。要充分发挥kafka的性能,就需要满足这两个条件kafka读写的单位是partition,因此,将一个topic拆分为多个partition可以提高吞吐量。但是,这里有个前提,就是不同pa...

2018-11-23 11:01:22 119

转载 linux 硬盘满了如何处理

事件源于在服务器运行一个脚本程序…好好的脚本突然报错,还以为脚本出现问题了。细看报错原因(具体报错信息已经忘记了),是没有可用空间。从没遇见过这个情况,怎么办呢?一、确定是不是真的是磁盘空间不足输入命令:df –lh 查看磁盘信息很明显:Filesystem下的挂载点 /dev/xvda1 下的40G容量已经耗尽。既然问题已经确定了,接下来就是处理了。处理方法也很简单,...

2018-11-23 10:12:04 450

转载 "main"java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/la

分析步骤:1、系统环境变量配置HADOOP_HOME ,并且添加进path 变量里;2、HADOOP_HOME\bin 里是否有hadoop.dll  和 winutils.exe 这两个文件3、C: windows\System32  里是否有hadoop.dll 文件 ,记得重启电脑噢!!! ...

2018-11-19 14:44:34 158

转载 IDEA中设置自动build-改动代码,不用重启工程,刷新页面即可

1.CTRL + SHIFT + A --> 查找Registry --> 找到并勾选compiler.automake.allow.when.app.running2. FILE - SETTING - Build - Compiler - bulid project automatically  勾选上即可。 

2018-11-16 14:49:42 2497

转载 新的可视化帮助更好地了解Spark Streaming应用程序

Spark UI中的Streaming标签页来显示以下信息: 时间轴视图和事件率统计,调度延迟统计以及以往的批处理时间统计 每个批次中所有JOB的详细信息 此外,为了理解在Streaming操作上下文中job的执行情况,有向无环执行图的可视化( execution DAG visualization )增加了Streaming的信息。让我们通过一个从头到尾分析Streaming...

2018-10-31 18:08:25 164

转载 spring-sparkstreaming-kafka10集成实现和疑难杂症解决

一.前期准备1.开发环境window7eclipsejdk1.82.linux环境zookeeper-3.4.8hadoop-2.6.4spark-1.6.0scala-2.10.6kafka_2.10-0.10.1.0各环境的安装和部署请自行准备。二.疑难杂症1. spark+scala+kafka版本要一致2. org.apache.spark.SparkExcep...

2018-10-17 11:03:43 881

转载 Scala中特质trait与抽象类abstract的区别

什么时候应该使用特质而不是抽象类? 如果你想定义一个类似接口的类型,你可能会在特质和抽象类之间难以取舍。这两种形式都可以让你定义一个类型的一些行为,并要求继承者定义一些其他行为。一些经验法则:优先使用特质。一个类扩展多个特质是很方便的,但却只能扩展一个抽象类。 如果你需要构造函数参数,使用抽象类。因为抽象类可以定义带参数的构造函数,而特质不行。例如,你不能说trait t(i: Int)...

2018-10-12 11:25:02 997

空空如也

空空如也

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

TA关注的人

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