自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Trigl的博客

Less is more.

原创 再见 CSDN

CSDN 事实上是一个氛围很好的技术论坛,但作为一个上升处女的摩羯座,实在无法忍受各种辣眼睛的广告,所以决定将博客迁移到个人网站: 白墨的博客 | Ink’s Blog 欢迎来撩~ ...

2019-04-02 21:10:10 441 0

原创 使用Flume+Kafka+SparkStreaming进行实时日志分析

每个公司想要进行数据分析或数据挖掘,收集日志、ETL都是第一步的,今天就讲一下如何实时地(准实时,每分钟分析一次)收集日志,处理日志,把处理后的记录存入Hive中,并附上完整实战代码1. 整体架构思考一下,正常情况下我们会如何收集并分析日志呢?首先,业务日志会通过Nginx(或者其他方式,我们是...

2017-05-24 15:33:29 46156 9

原创 使用Crontab定时执行Spark任务

今天的主要内容有: Linux下使用定时器crontab Linux下如何编写Perl脚本 在Java程序中调用Linux命令 实例:每天0点30分执行Spark任务 1. Linux下使用定时器crontab1、安装yum -y install vixie-cron ...

2017-03-15 16:54:40 7000 2

原创 hadoop、zookeeper、hbase、spark集群环境搭建

本文详细讲解如何搭建hadoop、zookeeper、hbase和spark的集群环境,这里我是在本地虚拟机上搭建的集群,但是和实际环境的配置差不多。我会从零开始搭建并且尽量写得详细,所以还会讲到很多配置linux环境的东西,希望大家不要烦,务必按照步骤一步步做下去。 本文主要讲了以下内容: L...

2016-09-13 09:44:53 14430 4

原创 Spring事务管理(详解+实例)

写这篇博客之前我首先读了《Spring in action》,之后在网上看了很多关于Spring事务管理的文章,具体参考文章如下: 1、将相应的接口依赖图理清出 2、将每个类的具体配置弄明白 3、将具体的配置给出来 4、给出具体的例子(一个声明式的一个编程式的)

2016-03-25 23:20:38 68686 38

原创 SBT 那些常用的功能

使用 Scala 也很久了,SBT 是最方便的构建工具,但是总是会遇到一些 SBT 引起的奇奇怪怪的问题,今天就好好研究一下 SBT 的常见用法,争取通过本文跨过大部分的坑。 SBT 常见命令 clean:移除 target 文件夹下生成的所有文件。 compile:编译 src...

2018-08-22 18:42:40 3016 0

原创 Spark Streaming 集成 AWS Kinesis

关于 AWS Kinesis 的基本信息可以看我的这篇文章:使用 AWS Kinesis 收集流数据,本文主要讲解 Spark Streaming 如何集成 Kinesis 处理流数据。 配置 Spark Streaming 应用 Spark Streaming 集成 Kinesis ...

2018-08-22 18:41:15 1342 0

原创 Spark Streaming Checkpoint

一个 Streaming 应用是一个 007 特工,需要保证 7 * 24 小时的持久运转,因此容错性就极其重要,Spark Streaming 通过在一个具有容错性的存储系统如 HDFS 中设置一些检查信息来从错误中恢复。 什么情况下需要设置 checkpoint? 首先我们看一下哪...

2018-08-22 18:39:55 717 0

原创 Spark Streaming 初见

本文内容是对 Spark Streaming 官方文档的总结,用一个简单的例子来入门 Spark Streaming。 Spark Streaming 是用来处理实时流数据的,所以必然有一个输入和一个输出: Spark Streaming 的内部实现其实还是 Spark core,...

2018-08-22 18:39:08 483 0

原创 Scala 的矩阵运算

本文讲解 Scala 中进行矩阵运算的包 breeze 的一些基础操作。 Breeze 是 Scala 中用于线性代数相关数值运算的开源库。 安装 首先我们使用 SBT 导入: libraryDependencies ++= Seq( // Last stable rel...

2018-08-22 18:38:03 1843 0

原创 使用 Netty 写一个 HTTP Server

前一段时间需要写一个 HTTP Server,之前用 Akka 实现了一个,但是 Netty 更能支撑高并发,连 Spark 2.0 也把 Akka 换成了 Netty 进行网络传输,所以现在再撸一个 Netty 的 Server。 闲话少说,直接开搞,首先将 Netty 加入 sbt:...

2018-07-16 11:31:17 2168 0

原创 Protocol Buffers 了解一下?

本文是学习 Protocol Buffers 时做的笔记,内容来自官方文档,把其中的精华部分提炼出来做了一个总结。 什么是 protocol buffers Protocol buffers 是一种跨语言跨平台可扩展的序列化结构化数据的方式,常用于通信协议、数据存储等等。首先会定义数据...

2018-06-20 11:00:54 490 0

翻译 DDIA 读书笔记——构建可靠的、可扩展和可维护的应用

17 年听说了这本神书 Designing Data-Intensive Applications,可以说这是一本全面讲解了大数据整个生态的百科全书,之前快速地看过前几章,感觉讲解地很系统而且通俗易懂,但是看到后面开始讲解更多细节性的内容慢慢地有点跟不上节奏了。作为一名数据从业人员感觉很有必...

2018-06-14 00:12:46 636 0

原创 使用 AWS Kinesis 收集流数据

Kinesis 是 AWS 的一项用于收集实时流数据的云服务,类似于 Kafka。Kinesis 收集到的数据可以用于多个方面,例如存到 S3,发到 EMR 作进一步数据分析等等。 Kinesis 的整体架构如下: Kinesis 的基本术语 Kinesis Data Strea...

2018-05-28 10:00:23 3929 0

原创 Akka Study

Akka 用于构建高并发、分布式且具有容错机制的事件驱动型的应用,本文是 Scala Cookbook 一书中 Akka 部分内容的总结。 Akka Guide Actor 模型与线程比较,是一种高层次的抽象。说 “高层次的抽象”这句话,就意味着这个东西简单易用,你不需要考虑太多底...

2018-05-23 17:04:08 290 0

原创 Scala 的 Case Classes 和 Pattern Matching

本文将讲解 Scala 中无处不在的 case class 和 pattern matching,为什么要放在一起讲呢,因为 case class 一般就是和模式匹配一起使用,习惯了用这套组合拳以后就再也不想写 Java 代码了,use less code to show more! ...

2018-04-13 17:29:54 618 0

原创 Scala Implicit 详解

Implicit 是 Scala 中一个很重要的特性,开始学习 Scala 之前一直以为它和 Java 差不多,然而真的看一些 Scala 的源码时却发现并没有想象中那么简单,所以准备写几篇文章来详解 Scala 中异于 Java 的特性,就从 Implicit 开始吧。 在我看来,Impli...

2018-02-07 19:29:13 6440 0

原创 Learning Spark——client mode和cluster mode的区别

在使用spark-submit提交Spark任务一般有以下参数:./bin/spark-submit \ --class <main-class> \ --master <master-url> \ --deploy-mode <deploy-mode&g...

2017-06-09 19:10:51 10612 3

原创 Kafka安装与简介

今天来讲一下Kafka,它是一个消息队列,应用场景比较广泛。刚开始学习一门东西,咱们先不管它是干什么的,先跑起来才是正经,所以本文主要讲两点: 安装搭建Kafka 简单介绍下Kafka的原理和应用 1. 安装Kafka1.1 下载解压下载地址:http://kafka.apache.org/dow...

2017-05-23 11:01:51 26249 3

原创 Learning Spark——Spark连接Mysql、mapPartitions高效连接HBase

执行Spark任务免不了从多个数据源拿数据,除了从HDFS获取数据以外,我们还经常从Mysql和HBase中拿数据,今天讲一下如何使用Spark查询Mysql和HBase1. Spark查询Mysql内容主要参考官方文档:http://spark.apache.org/docs/latest/sq...

2017-05-20 16:12:46 4045 0

原创 Learning Spark——RDD常用操作

本文内容主要包括: 基本转换操作 键值对转换操作 行动操作 RDD支持两种操作:转换(Transformation)操作和行动(Action)操作。为什么会分为两种操作,这两种操作又有什么区别呢?我们先考虑一下平常我们使用的一些函数,举个例子Long.toString(),...

2017-04-27 17:33:57 2519 0

原创 Learning Spark——使用spark-shell运行Word Count

在hadoop、zookeeper、hbase、spark集群环境搭建 中已经把环境搭建好了,工欲善其事必先利其器,现在器已经有了,接下来就要开搞了,先从spark-shell开始揭开Spark的神器面纱。spark-shell是Spark的命令行界面,我们可以在上面直接敲一些命令,就像windo...

2017-04-27 11:20:29 7686 1

原创 Learning Spark——使用Intellij Idea开发基于Maven的Spark程序

本文主要讲解如何使用Idea开发Spark程序,使用Maven作为依赖管理,当然也可以使用SBT,但是由于一直写Java程序习惯用Maven了,所以这里使用Maven。1、下载安装Jdk、Scala、MaveJdk、Maven安装方法略过,搞Java的应该都会,这里讲一下Scala的安装,其实和J...

2017-04-20 18:08:37 9259 1

原创 数据仓库的架构与设计

公司之前的数据都是直接传到Hdfs上进行操作,没有一个数据仓库,趁着最近空出几台服务器,搭了个简陋的数据仓库,这里记录一下数据仓库的一些知识。涉及的主要内容有: 什么是数据仓库? 数据仓库的架构 数据仓库多维数据模型的设计 1. 什么是数据仓库1.1 数据仓库的概念官方定义...

2017-04-01 17:52:19 82714 26

原创 Hive快速入门

主要内容 Hive概述 Hive安装配置 数据类型和文件格式 HQL常用操作 1. Hive概述1.1 为什么使用HiveHadoop生态系统的诞生为高效快速地处理大数据带来曙光,但是需要写MapReduce或者Spark任务,入门门槛较高,需要掌握一门编程语言例如J...

2017-03-11 15:50:26 5625 0

原创 Hive安装配置

Hive是基于Hadoop的,安装Hadoop可以参考这里:hadoop、zookeeper、hbase、spark集群环境搭建 ,除此之外,还需要安装mysql用来存储Hive的元数据,下文将讲解mysql和hive的安装。 安装mysql5.6 1、

2017-02-15 20:34:31 1431 1

原创 Hadoop双namenode配置搭建(HA)

配置双namenode的目的就是为了防错,防止一个namenode挂掉数据丢失,具体原理本文不详细讲解,这里只说明具体的安装过程。 Hadoop HA的搭建是基于Zookeeper的,关于Zookeeper的搭建可以查看这里 hadoop、zookeeper、hbase、spark集群环境搭建 ...

2017-02-14 17:31:10 14866 8

原创 使用Nginx(OpenResty)转发域名到非80端口

今天我们来学习一个比较实际的技能,那就是如何让你在内网部署的Web工程可以通过外网访问呢?主要解决两个问题: 1、如何得到一个可用的域名 2、Web工程的端口一般是8080或8081等等的非80端口,如何访问域名的时候能转发到这些非80端口呢? 3、域名不可能只对应一个工程,这样太浪费了,如...

2016-11-14 17:11:15 6693 0

原创 Linux下创建Oracle的实例

使用oracle用户登录,或su到oracle用户 1、首先设置要创建的ORACLE的SIDexport ORACLE_SID=addb2、 创建相应目录mkdir -p $ORACLE_BASE/admin/addb/{a,b,c,u}dump mkdir -p $ORACLE_BASE/ad...

2016-11-09 19:07:01 21590 3

原创 web.xml中定义的Spring的XML配置文件启动顺序

在web.xml中定义的Spring的配置文件一般有两个: 1、Spring上下文环境的配置文件:applicationContext.xml <context-param> <param-name>contextConfigLocation<...

2016-07-31 02:20:38 9133 2

原创 JDBC连接超时问题

这两天遇到一个问题,早上来了登录我们的项目网站第一次登录总是登不上去,第二次就好了,我看了一下后台的报错信息是这样的: The last packet successfully received from the server was 57,704,088 milliseconds ag...

2016-07-28 20:10:01 12212 0

原创 Java工具箱之常见处理文件操作

这个工具类包含以下文件操作: 1、获取文件大小 2、将文件大小自动转换为以“B”、“K”、“M”、“G”为单位的的大小 3、复制文件 4、移动文件 5、删除文件 6、解压ZIP文件package com.trigl.util;import java.io.BufferedInputSt...

2016-07-27 14:04:24 1277 0

原创 Java工具箱之字符编码工具类

涉及到文件的字符编码问题一般需要知道两个内容: 1、文件本身的字符编码是什么? 2、如何将文件的字符编码集转换为另一种呢? 这个工具类就解决这两个问题package com.trigl.util;import java.io.BufferedInputStream; import java....

2016-07-26 19:26:10 2030 0

原创 Java工具箱之配置文件加载类

这个工具类比较常见,用于加载项目中的配置文件如config.propertiespackage com.trigl.util;import java.io.IOException; import java.io.InputStream; import java.text.MessageFormat...

2016-07-26 18:58:27 647 0

原创 Java工具箱之SpringMVC拦截器

我们经常会遇到这些类似的情况,当我们登录到某个网站之后过一段时间再次刷新页面,可能会跳转到登录页面让我们再次登录;在有的网站我们无法查看某些内容,会提示我们权限不足。其实这些都是后台首先对我们的请求进行了拦截,然后决定跳转到哪里,这里我来讲一下我工作中用到的SpringMVC拦截器的用法。

2016-07-25 19:13:24 1236 0

原创 推荐一款基于bootstrap的漂亮的前端模板——inspinia_admin

首先给出Demo网址:http://webapplayers.com/inspinia_admin-v2.5 由于它的版本会变化,所以过一段时间可能就无法访问了,只要把后面的版本号相应变动一下即可。 这个模板可以用于做管理系统,社交网站,个人博客等,甚至提供了邮箱、购物模板,而且使用了大量的第...

2016-07-19 12:06:16 39151 14

原创 Integer的highestOneBit方法源码解析

在读HashMap源码的时候,遇到了Integer的highestOneBit静态方法不是太理解,所以就读了一下源码,这里记录一下。 /** * 将一个整数(二进制)设置最高位为1,其它位为0,然后返回改变后的值 * 如果这个整数是0返回0 * @param i...

2016-05-25 01:14:08 1889 0

原创 多线程之volatile关键字

之前讲解了多线程的synchronized关键字,现在再学习一下volatile关键字。1 volatile关键字用来做什么?线程安全包括两个方面:原子性和可见性。Java的同步机制都是围绕这两个方面来确保线程安全的。其中原子性是指多个动作必须依次连续完成,必须保持一致性和完整性,这可以通过syn...

2016-04-15 20:43:39 1887 1

原创 多线程之synchronized关键字详解

synchronized关键字用于多线程访问程序中的共享资源时实现顺序同步访问资源。可以修饰方法或者代码块。而且关键字synchronized取得的锁都是对象锁,什么叫对象锁呢,就是一个对象产生一把锁,如果多个线程调用一个对象的多个方法,这些方法都被synchronized修饰,那么这些线程共同竞...

2016-04-15 20:23:17 3754 0

原创 csdn的markdown编辑器如何保持图片原始大小?

一直习惯用csdn的markdown编辑器写博客,因为一般我会用其他markdown编辑器写文章,写好以后本机导入到csdn的markdown编辑器中,比较快捷方便,但是一直有一个问题,我在本地用其他markdown编辑器配的截图显示正常尺寸,但是上传到csdn的markdown以后就变小了,有些...

2016-04-14 01:06:26 2396 3

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