自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Spring , Hadoop, Spark , BI , ML

Later equals never.

  • 博客(157)
  • 资源 (2)
  • 收藏
  • 关注

原创 [干货] Flume综述与实例

Flume是一个分布式的、可靠的数据收集、集合和移动的组件。基于流式数据模型,非常健壮、支持容错、故障转移等特性。本用实例辅助说明Flume的大部分核心概念。 安装FLumeFlume的安装非常简单,其核心就是agent。从官网下载稳定版本:wget http://apache.fayea.com/flume/1.6.0/apache-flume-1.6.0-b

2016-07-23 17:19:49 3622

原创 理解YARN Scheduler

在YARN中,资源调度器(Scheduler)是ResourceManager中的重要组件,主要负责对整个集群(CPU,内存)的资源进行分配和调度,分配以资源Container的形式分发到各个应用程序中(如MapReduce作业),应用程序与资源所在节点的NodeManager协作利用Container完成具体的任务(如Reduce Task)。Scheduler以可插拔的形式来配置,框架默认提

2016-07-23 02:02:46 3090 2

转载 8个SQL-on-Hadoop框架

数据的操作语言是SQL,因此很多工具的开发目标自然就是能够在Hadoop上使用SQL。这些工具有些只是在MapReduce之上做了简单的包装,有些则是在HDFS之上实现了完整的数据仓库,而有些则介于这两者之间。这样的工具有很多,来自于Shoutlet的软件开发工程师Matthew Rathbone最近发表了一篇文章,他列举了一些常

2016-07-22 13:30:48 1069

原创 Java实现GroupBy/分组TopN功能

介绍在Java 8 的Lambda(stream)之前,要在Java代码中实现类似SQL中的group by分组聚合功能,还是比较困难的。这之前Java对函数式编程支持不是很好,Scala则把函数式编程发挥到了机制,实现一个group by聚合对Scala来说就是几行代码的事情:val birds = List("Golden Eagle","Gyrfalcon", "American Robin"

2016-07-21 22:15:01 13830 2

原创 Hadoop HDFS高可用(HA)

版本记录:2016-07-19 凌晨 初稿在Hadoop 1.x 中,Namenode是集群的单点故障,一旦Namenode出现故障,整个集群将不可用,重启或者开启一个新的Namenode才能够从中恢复。值得一提的是,Secondary Namenode并没有提供故障转移的能力。集群的可用性受到影响表现在:当机器发生故障,如断电时,管理员必须重启Namenode才能恢复可用。在日常的维护升级

2016-07-19 09:18:05 5947 2

原创 MapReduce shuffle过程剖析及调优

MapReduce简介在Hadoop MapReduce中,框架会确保reduce收到的输入数据是根据key排序过的。数据从Mapper输出到Reducer接收,是一个很复杂的过程,框架处理了所有问题,并提供了很多配置项及扩展点。一个MapReduce的大致数据流如下图:更详细的MapReduce介绍参考Hadoop MapReduce原理与实例。Mapper的

2016-07-18 01:48:03 16115 1

原创 Hadoop MapReduce原理及实例

MapReduce是用于数据处理的一种编程模型,简单但足够强大,专门为并行处理大数据而设计。1. 通俗理解MapReduceMapReduce的处理过程分为两个步骤:map和reduce。每个阶段的输入输出都是key-value的形式,key和value的类型可以自行指定。map阶段对切分好的数据进行并行处理,处理结果传输给reduce,由reduce函数完成最后的汇总。例如从大量历史数据中找出往年

2016-07-16 22:14:53 40075 9

原创 深入理解HDFS:Hadoop分布式文件系统

文本详细介绍了HDFS中的许多概念,对于理解Hadoop分布式文件系统很有帮助。1. 介绍在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统。而一旦在系统中,引入网络,就不可避免地引入了所有网络编程的复杂性,例如挑战之一是如果保证在节点不可用的时候数据不丢失。传统的网络文件系统(NFS)虽然也称为分布式文件系统,但是其存在一些限制。由于

2016-07-15 22:33:44 55862 8

原创 HDFS安全模式详解

什么是安全模式安全模式是HDFS所处的一种特殊状态,在这种状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求。在NameNode主节点启动时,HDFS首先进入安全模式,DataNode在启动的时候会向namenode汇报可用的block等状态,当整个系统达到安全标准时,HDFS自动离开安全模式。如果HDFS出于安全模式下,则文件block不能进行任何的副本复制操作,因此达到最小的副本数量

2016-07-13 21:07:41 17402 2

原创 Hadoop集群搭建详细步骤(2.6.0)

本文记录在3台物理机上搭建Hadoop 2.6.0的详细步骤及碰到的问题解决。默认使用root账号操作,实际中建议使用专用的hadoop用户账号。1. 环境机器: 物理机3台,ip分别为192.168.1.130、192.168.1.132、192.168.1.134 操作系统: CentOS 6.6 Java: 1.7 Hadoop: 2.6.0请确保JDK已安装,使用java -versi

2016-07-12 22:38:05 22834 1

原创 Elasticsearch集群搭建及Python交互

本文记录Elasticsearch物理集群的安装步骤,在3台机器上部署一个集群。行文顺序为整个安装过程从头到尾,期间发现不少问题。因此,本文不适合一步步跟着做,建议您看完整篇文章,然后再开始搭建集群。1 . 环境机器: 3台物理机器,分别为130,132,134操作系统:CentOS 6.6Elasticsearch: 2.3.3 版本确保安装相应版本JDK,使用java -v

2016-07-12 17:50:10 6610 1

原创 微服务设计-思维导图笔记

微服务思维导图读书笔记,共参考。

2016-07-12 17:48:08 2735

原创 理解Hadoop YARN架构

1. 介绍YARN(Yet Another Resource Negotiator)是一个通用的资源管理平台,可为各类计算框架提供资源的管理和调度。 其核心出发点是为了分离资源管理与作业调度/监控,实现分离的做法是拥有一个全局的资源管理器(ResourceManager,RM),以及每个应用程序对应一个的应用管理器(ApplicationMaster,AM),应用程序由一个作业(Job)或者Job

2016-07-11 18:53:55 16173 2

原创 Eclipse导入导出Preference配置文件

Eclipse工作空间中的一些常用配置,例如字体配置,编码方式配置,代码自动提示,代码模板等。在新建工作空间事,如果一一重新配置,耗时耗力。使用导入导出可以解决这个问题。导出在已配置好的工作空间中,选择File->Export->General->Preferece:选中Export all或者根据需要选择导出的内容,导出保存为.epf结尾的文件。导入上一步导出配置文件后,在新建的工作空间中,Fil

2016-07-11 12:30:14 6062

原创 Redis安装步骤

本文详细介绍Redis的安装步骤。安装环境操作系统: Centos 6.4 ( cat /etc/redhat-release) Redis: 3.0.7下载编译从Redis官网下载:wget http://download.redis.io/releases/redis-3.0.7.tar.gz解压:tar -zxvf redis-3.0.7.tar.gzcd redis-3.0.7编译:mak

2016-07-11 00:18:17 763

原创 Hadoop单机安装详细步骤

环境准备安装Java过程简单,这里省略具体安装步骤。安装后确认相应版本的Java已安装,这里选择1.7。java -version创建Hadoop账号为Hadoop创建一个专门的账号是很好的实践:sudo adduser hadoopsudo passwd hadoop授予 Hadoop root权限 为了测试,图方便,这里给Hadoop root权限,生产环境不建议这样做。 使用root权限

2016-07-11 00:03:12 8485 1

原创 NoSQL概述-思维导图

NoSQL简介,思维导图整理。

2016-07-09 11:33:04 1514

原创 JAX-RS基本概念理解

JAX-RS,全称为Java API for RESTful Web Services.的核心概念是resource,即面向资源。JAX-RS的JavaDoc可以在这里找到。 JAX-RS的标准可以在这里找到。1. Root Resource Classes满足下列2个条件的POJO类被称为Root Resource Class:使用@Path注解至少有一个方法使用@Path或者资源方法注解(

2016-07-08 22:50:51 6237 1

原创 Greenplum简介

Greenplum: http://greenplum.org/ 原来是个商业产品,后来开源。从Slogan看:是个数据库着眼于数据仓库主要在于大规模并行基于强大的PostgreSQL,PostgeSQL提供了诸如表空间、外部表等功能,支持丰富的数据类型(包含key-value,JSON,XML,GIS,甚至支持各种集合图形的表示)。其中的FDW外部表是一个非常强大的功能,可以直接将外部文

2016-07-07 18:55:59 4860

原创 Docker安装Tomcat

下载Tomcat镜像:docker pull tomcat启动tomcat容器: docker run -it --rm tomcat查看容器IP:docker inspect --format='{{.NetworkSettings.IPAddress}}' 1386c105c56d最后一个参数是容器id,可以通过docker ps 命令获取。拿到ip后,就可以通过8080端口访问了:curl 1

2016-07-07 00:34:27 829

原创 Docker-入门

简介https://www.docker.com/Docker: world’s leading software containerization platform*.VM vs. Docket:Docker基于LXC(Linux容器),在LXC的基础上进一步封装,使得操作更简单,就像操作一个轻量级的虚拟机一样。相比虚拟机的优势:启动更快,可以在秒级启动对系统的资源利用率更高(在内核级别进行虚

2016-07-06 23:55:38 1169

原创 Linux容器LXC-入门

LXC: Linux Container。 LXC允许你在宿主操作系统内的容器运行应用。容器在网络、行为等方面都与宿主OS都隔离。LXC与虚拟化类似,但是有一些关键的不同点:虚拟化模拟硬件和操作系统,但是LXC只模拟操作系统,因此更轻量级、速度更快。LXC的仿真(模拟)是通过Linux内核的cgroups和namespaces来实现的,因此LXC只能模拟基于Linux系的操作系统.cgr

2016-07-06 18:22:28 5158 1

原创 IDEA MyBatis插件安装及使用

IDEA中的MyBatis Plugin已经由开源转向收费了,想使用这个插件,只能使用破解版。如果版本是IDEA 15的,可以从这里下载。下载之后,从IDEA的plugins安装界面中,选择从磁盘安装: 安装后重启,在项目resources目录下创建一个配置文件: 配置完成后选中配置文件右键:Run as MyBatis Generator 注意的是,IDEA无法自动生成package,因此在

2016-07-06 12:22:39 5823

原创 免费的Gif制作工具-录屏、录像

网上经常看到一些很好的动画演示图,但是如果刚好不是GIF动态图,这时候可以自己动手制作GIF。 这里介绍的ScreenToGif功能非常强大,支持录屏,摄像头录像、涂鸦录像等方式。并且编辑功能非常强大,中文支持。你可以从CSDN或者英文官网免费下载。需要注意的一个问题是,这个工具在你使用多个显示器的时候无法正常工作,会出现什么都看不到的情况。因此需要在单显示器上使用。下面是一些截图:

2016-07-06 09:38:36 767

原创 ReactiveX-入门篇

ReactiveX简介: An API for asynchronous programming with observable streams。分解一下这个句子:API: 首先它是个编程接口,不同语言提供不同实现。例如JVM语言中的RxJava。For asynchronous programming: 使用场景,异步变成环境中。With observable streams: 基于可

2016-07-06 09:23:28 8777 1

原创 领域驱动设计-笔记

本文整理自《DDD quickly》中文版,你可以在这里下载到免费的PDF版本。简介兴趣驱动: 我要在这个项目中使用苹果公司新推出的 Swift 编程语言,在服务器端要使用Hadoop,最好再尝试一下深度学习方面的技术”人月神话:强调软件开发的概念完整性。DDD(领域驱动设计)是维护软件概念完整性的良药。Evans:衡量一种技术好坏的最终标准,是这种技术是否有助于开发人员专注于研究领域问题。需

2016-07-05 15:04:06 3540

原创 MySQL CASE表达式

MySQL CASE表达式是一个流程控制结构,用在在SELECT、WHERE等语句中根据条件动态构造内容。2种MySQL CASE格式MySQL的CASE表达式有2中形式,一种更像是编程语言当中的CASE语句,拿一个给定的值(变量)跟一系列特定的值作比较,我称之为CASE类型。另一种则更像是编程语言中的if语句,当满足某些条件的时候取特定值,我称之为IF类型。CASE类型此类型的语句结构如下:CAS

2016-07-04 18:19:46 1529

原创 Phoenix资源列表

官网: https://phoenix.apache.orgPresentations: https://phoenix.apache.org/resources.html

2016-07-04 16:14:32 740

翻译 15分钟了解Phoenix

关于Phoenix:OLTP and operational analytics for Apache HadoopPhoenix is an open source SQL skin for HBase. We put SQL back in NoSQL以下部分翻译自:https://phoenix.apache.org/Phoenix-in-15-minutes-or-less.html

2016-07-04 12:55:00 1329

原创 数据库变更管理工具

数据库变更、模式迁移、变更管理工具、 Flyway、LiquiBase

2016-07-04 09:19:19 4825 1

原创 PostgreSQL笔记整理

前言本文作为PostgreSQL的笔记整理,后续可能根据特定模块拆分独立的文章。目前只给出目录,后续持续更新。第一章、 基础知识1.1 如何获得PostgreSQL1.2 管理工具1.3 PostgreSQL数据库对象1.4 新特性1.5 数据库驱动第二章、数据库管理2.1 配置文件2.2 连接管理2.3 角色2.4 创建database2.5 权限管理2.6 扩展包机制2.7 备份与恢复2.8 基

2016-07-03 22:23:23 1056

原创 CentOS安装PostgreSQL 9.4

本文描述在CentOS 6.6中安装PostgreSQL 9.4的步骤。安装:rpm -ivh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpmyum install postgresql94-server安装后查看状态:service postgresql-9.4 status状态为s

2016-06-30 00:27:19 1012

原创 MyBatis缓存配置

Mybatis二级缓存配置在很多场合中需要用到数据库缓存。 此文档简单描述如何在spring + mybatis场合下配置缓存。1. Mybatis缓存简介Mybatis提供功能强大的缓存机制。缓存共可以分为两类:一级缓存和二级缓存。一级缓存是SqlSession级别的,二级缓存为整个应用级别,即一个数据源级别。缓存的具体实现可以有以下几种方式:[x] Mybatis内置的缓存实现[x] 扩展自

2016-06-29 17:47:31 2793

原创 mysql-proxy安装及配置

在本文描述在CentOS下安装mysql代理mysql-proxy的步骤。安装查询yum相关信息:yum info mysql-proxy安装: yum install mysql-proxy完毕后查看状态:service mysql-proxy status查看安装位置:whereis mysql-proxy配置编辑配置文件:vim /etc/mysql-proxy.cnf主要配置: 1)代理

2016-06-29 08:30:17 3129 1

原创 PostgreSQL特殊语法

本文整理了一些PostgreSQL相对于标准SQL或者MySQL的一些特殊语法。LimitPG:limit nlimit n offset mMySQL:limit n limit m,nLike/ILIKE:提供的一个扩展ILIKE:同LIKE,只是不区分大小写。 符号表示: LIKE: ~~ ILIKE: ~~ * NOT LIKE: !~~ NOT ILIKE: !

2016-06-29 08:20:15 2718

原创 MySQL分页性能优化

在对大表进行分页时,如果在服务端实现分页,大多数情况采用SQL的limit语法来实现。但是当页数越来越大时,性能很可能成为问题,尤其是需要查询表的所有字段。1. 索引与非索引字段在查询的结果集中,如果只包含索引字段,性能相比于包含非索引字段,差别很大。下面是一个简单的例子,在大约50w行的表上操作:只查询索引id字段SELECT id FROM test.bas_tablelimit 400000

2016-06-27 12:41:38 964

原创 SpagoBI数据库连接超时问题解决

在使用SpagoBI过程中,发现如果一段时间没有使用,再次登录系统的时候总会出现错误,后台日志如下:按照日志建议,在Tomcat的conf/server.xml中数据源配置autoReconnect=true, 问题依然存在。经过无数番折腾之后,守得云开见月明,有效解决方案如下: 修改conf/server.xml中的数据源配置:<Resource name="jdbc/spagobi" aut

2016-06-23 14:14:47 1414

原创 CentOS安装7z工具

步骤命令如下:wget http://nchc.dl.sourceforge.net/sourceforge/p7zip/p7zip_4.65_src_all.tar.bz2tar -jxvf p7zip_4.65_src_all.tar.bz2cd p7zip_4.65makemake install 问题解决make过程如果遇到【g++:command not found】的问题,参考这个解决方

2016-06-23 14:05:21 1210

原创 MySQL同步数据

MySQL dump工具用于导出现有数据,导出结果为SQL文件 目前dump工具支持整库dump以及单表dump。下面为单表dump操作过程:1) 选择导出目标目录确保该目录有足够的存储空间。mkdir /opt/bas_backup2)使用mysqldump命令导出表数据:mysqldump -u user-h host -P port-p schema-name table-name> /op

2016-06-23 13:57:46 1754

原创 MySQL远程导入/同步数据

在MySQL中,大表同步或者数据复制,可以使用mysqldump工具导出,然后使用mysql source命令导入。该方法的前提是能够访问到MySQL所在的机器,导出的SQL文件需要上传到目标机器。具体方法参考MySQL单表同步数据这篇文章.但是当使用云服务RDS时,往往无法访问到目标主机,这时候还可以使用如下方式: 首先使用mysqldump导出表(表结构和数据)。然后在导出数据的机器或者其他机

2016-06-23 13:42:46 2046

买年费Gif制作工具,支持录屏、录像,强大的编辑功能

免费并且功能强大的gif制作,编辑工具。支持录屏,摄像头录像等方式。并且编辑功能非常强大,中文支持。

2016-07-06

Rc振荡器课件

RC振荡器课件RC振荡器课件RC振荡器课件RC振荡器课件RC振荡器课件

2012-11-20

空空如也

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

TA关注的人

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