自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (2)
  • 收藏
  • 关注

原创 分类和回归树CART(Classification and Regresstion tree)

顶点

2017-04-11 20:23:22 528

转载 词法,语法,语义

词法分析(Lexical analysis或Scanning)和词法分析程序(Lexical analyzer或Scanner)   词法分析阶段是编译过程的第一个阶段。这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构词规则识别单词(也称单词符号或符号)。词法分析程序实现这个任务。词法分析程序可以使用lex等工具自动生成。语法分析(Syntax

2016-12-28 21:32:51 886

转载 HiveServer2表结构变更太耗时分析

转至元数据结尾创建: 李星,最新修改于: 十二月 23, 2016转至元数据起始转载自数据交换专家同事HiveServer2启动端口为10002,可以看到大量galaxy过来的请求以及少量主数据过来的请求。 jstack查看HiveServer2的进程,发现有大量线程被block了。

2016-12-28 17:19:49 1662 1

转载 [Java][Android][Process] ProcessBuilder与Runtime区别

在Android中想要进行Ping,在不Root机器的情况下似乎还只能进行底层命调用才能实现。因为在Java中要进行ICMP包发送需要Root权限。于是只能通过创建进程来解决了,创建进程在Java中有两种方式,分别为:1. 调用ProcessBuilder的构造函数后执行start()2. 用Runtime.getRuntime().exec()方法

2016-08-25 11:12:29 550

转载 数据仓库数据分层

李秋联系管理数据仓库数据分层为什么要对数据仓库分层?用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因此数据仓库会存在大量冗余的数据;如果不分层的话,如果源业务系统的业务规则发生变化将会影响整个数据清洗过程,工作量巨大通过数据分层管理可以简化数据清洗的过程,因为把

2016-07-28 17:21:19 6484

转载 SQL四种语言:DDL,DML,DCL,TCL

Comm100 TestersComm100 测试团队博客新随笔管理SQL四种语言:DDL,DML,DCL,TCL1.DDL(Data Definition Language)数据库定义语言statements are used to define the database

2016-07-28 17:14:16 413

转载 使用 CAS 在 Tomcat 中实现单点登录

使用 CAS 在 Tomcat 中实现单点登录单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原

2016-07-25 16:23:33 405

转载 DelegatingFilterProxy的原理及使用

DelegatingFilterProxy的原理及使用博客分类: SpringWEBJAVASpringFilter DelegatingFilterProxy就是一个对于servlet filter的代理,用这个类的好处主要是通过Spring容器来管理servlet filter的生命周期,还有就是如果filter中需要一些Spring容器

2016-07-25 16:11:14 247

转载 Vim 常用命令总结

Vim 常用命令总结2012-03-03http://pizn.github.io/2012/03/03/vim-commonly-used-command.html使用 Vim 的时间不长,但如今已经离不开熟悉的 Vim 编辑模式了。 Vim 的学习曲线是非常陡的,一开始学习的时候,面对很多的操作命令要去记住,常常望而却步。其实,只要记住一些常用的

2016-07-14 10:55:18 361

转载 并发框架Disruptor译文

并发框架Disruptor译文2013年2月28日方 腾飞发表评论阅读评论30,254 人阅读    (感谢同事方腾飞投递本文)Martin Fowler在自己网站上写了一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金融交易平台,它能够以很低的延迟产生大量交易。这个系统是建立在JVM平台上,其核心是一个业务逻辑处理器,它能够在一个线程里每

2016-07-12 15:25:28 465

转载 基于Flume的美团日志收集系统(二)改进和优化

基于Flume的美团日志收集系统(二)改进和优化dju alex ·2013-12-09 22:35在《基于Flume的美团日志收集系统(一)架构和设计》中,我们详述了基于Flume的美团日志收集系统的架构设计,以及为什么做这样的设计。在本节中,我们将会讲述在实际部署和使用过程中遇到的问题,对Flume的功能改进和对系统做的优化。1 Flume的问题总结在Flu

2016-07-08 19:37:54 493

转载 基于Flume的美团日志收集系统(一)架构和设计

基于Flume的美团日志收集系统(一)架构和设计dju alex ·2013-12-09 22:30美团的日志收集系统负责美团的所有业务日志的收集,并分别给Hadoop平台提供离线数据和Storm平台提供实时数据流。美团的日志收集系统基于Flume设计和搭建而成。《基于Flume的美团日志收集系统》将分两部分给读者呈现美团日志收集系统的架构设计和实战经验。第一部

2016-07-08 19:36:34 904

转载 Quartz应用与集群原理分析

Quartz应用与集群原理分析zhanshenny,meituan_crm ·2014-08-31 22:35一、问题背景美团CRM系统中每天有大量的后台任务需要调度执行,如构建索引、统计报表、周期同步数据等等,要求任务调度系统具备高可用性、负载均衡特性,可以管理并监控任务的执行流程,以保证任务的正确执行。二、历史方案美团CRM系统的任务调度模块经历了以

2016-07-08 19:33:35 1033

转载 Kafka文件存储机制那些事

Kafka文件存储机制那些事“悠悠香草” ·2015-01-14 00:00Kafka是什么Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级

2016-07-08 19:29:21 480

转载 消息队列设计精要

消息队列设计精要王烨 ·2016-07-01 16:10消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。本文不

2016-07-08 19:26:34 838

转载 Java8系列之重新认识HashMap

Java8系列之重新认识HashMap前利 ·2016-06-24 11:58摘要HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨Hash

2016-07-08 19:24:09 269

原创 大众点评ETL数据传输平台生产实践和测试

1.1 Kepler生产实践1.1.1Kepler生产实践调度系统Kepler自从开发使用以来。调度的任务数量从最开始的几百个到后来的一万五左右,在投入使用的几年里,调度本身还算稳定,基本没有出过较大的事故。调度系统从比较粗糙到日趋完善也经历了很多次完善。开始时,调度系统被调度起来的任务信息都会暂存到Zookeeper集群中,但随着传输平台在公司的推广、业务大规模的扩张。Zookeep

2016-07-08 10:49:17 2040

原创 大众点评开发前台Galaxy设计与实现

1.1.1.1.1 Galaxy模块设计传输平台的开发前台从功能上划分包括任务配置,任务管理,任务监控,代码上线等模块。整体设计见下图(图5.13):图5.13  传输平台整体设计首先介绍任务配置模块设计。具体分为两种任务配置:一种是传输任务配置设计(见图5.14、图5.15)。这种任务配置信息包括四部分:第一部分是数据源和数据目标以及一个自增字段;第二部分是任务调度信

2016-07-08 10:37:56 1372

原创 大众点评数据交换工具Wormhole设计与实现

1.1.1 数据交换工具Wormhole设计与实现1.1.1.1 Wormhole整体设计Wormhole是框架加插件的设计,各模块的设计思路:1)  框架分为读管理器、双端缓冲队列和写管理器。读写管理器分别持有读写线程池,双端缓冲队列负责读写线程的数据交换。2)  每种数据存储的插件分为或读写两种类型,每种类型又具体分为读或写、预和后处理、分片三种类型的插件。用不同接口来标识每种

2016-07-08 10:16:55 5347

原创 大众点评调度系统Kepler的设计与实现

.5.2.1.1调度系统Kepler整体设计该企业调度系统的整体实现思路:用SpringQuartz来负责定时任务这一块,用定时任务来周期性更新实例和容器的状态,即用定时任务做调度系统的引擎。用状态管理器管理实例,资源管理器控制资源,容器管理器管理容器。它们都用单例模式实现,并持有实例,容器,资源在内存中的队列。在内存和数据库同时保存实例信息,内存中

2016-07-07 10:38:12 3394

原创 大众点评平台ETL概念设计与实现

5.1平台ETL概念设计与实现任务是该企业ETL数据传输平台调度和运行的基本单位,任务是一次传输或一次转换。任务分为计算任务和传输任务。传输任务还可以细分:一种是普通的传输任务。数据的输入来自关系型或Nosql数据库。另一种是后端日志拉取再经过解析程序(如MapReduce等)存入分析库。计算任务主要分为三类:HiveHql任务、JavaJar包任务和Python、Shell等脚本任务。有

2016-07-07 10:35:35 2037

原创 ETL简介和大众点评ETL平台搭建之初

1.1.1 ETL简介和发展概述ETL是Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程[5]。ETL作为商务智能的核心和灵魂,具有重要的意义。从目标上说,能够汇聚、筛选数据从而提高数据的价值。从功能上说,能够完成数据从数据源向目标数据仓库转化的过程,从而有效构建起数据仓库。ETL从多样的异构数据源中比如关系数据库、格式化和半格式化数据文件等抽取到原始数据层后进

2016-07-06 22:48:03 5453

原创 大众点评ETL数据传输平台整体架构

1.1 平台整体架构该企业的数据传输平台主要由三部分构成:1) 一部分是基于Quartz和Docker的调度系统。主要功能是负责调度和运行ETL任务。监视和变换当前任务实例的状态,当实例状态发生变化或者符合变化条件时主动更新数据库和内存中实例状态。2) 一部分是数据交换工具Wormhole。主要用来多个数据库之间数据的交换,是ETL平台的基础。这个工具我们一般把它集成到Docker镜像

2016-07-06 22:39:31 4982

原创 大众点评ETL数据传输平台需求用例分析

1.1 功能分析1.1.1 调度系统               图 3.1  调度系统用例图调度系统负责ETL数据传输平台的运行、监控和资源分配(如图3.1)。1) 定时调度。ETL任务无论是抽取还是转换类型都必须每天在特定时间(一般是晚上)被调度起来完成当天增量数据的传输,所以一般ETL传输平台必须有定时调度的功能。2) 支持集群和并发。现在工业生产环境单机性能已经不能

2016-07-06 22:29:46 4000 1

转载 canal源码分析——DirectLogFetcher源码分析

摘要DirectLogFetcher是MysqlConnection中使用的一个重要组件,使用它来从连接中读取binlog信息。我们来看看它是怎么实现的。类结构DirectLogFetcher的类结构图如下。LogBuffer|LogFetcher|DirectLogFetcherLogBuffer是一个数据库复制日志的缓存区,可将日志缓冲存储起来。

2016-07-06 22:18:36 1963

转载 canal源码分析系列——ErosaConnection分析

摘要ErosaConnection是通用的Erosa的连接接口, 用于一般化处理mysql/oracle的解析过程。它实现了与MySQL服务器之间的网络连接及通讯,也是非常核心的一个组件,我们来看看它是怎么实现的。类结构ErosaConnection||--------------------------------------|                

2016-07-06 22:15:38 1337

转载 canal源码分析——parse模块源码分析

摘要经过分析,我觉得parse模块才是canal的核心部分,而且我们内部的使用也是基于parse模块做了一些自己的扩展,因此本文系列文章从parse模块的源码开始分析,抽丝儿剥茧把canal的核心部分源码解析一下,供大家参考。 parse高层类图首先,我们来看看该模块下面的类图,通过类图就可以清晰地掌握整个模块的骨架结构。EventTransactionBuffer

2016-07-06 22:12:35 3877

转载 canal源码分析——项目组成结构

摘要canal是阿里巴巴mysql数据库binlog的增量订阅&消费组件,在以下使用场景中都可以使用。 数据库镜像、数据库实时备份、多级索引 (卖家和买家各自分库索引)、search build、业务cache刷新、价格变化等重要业务消息 本系列文章将开始对该项目进行源码分析,本文将从高层分析canal产品的各子项目的职责及它们之间的关系。背景canal项目的介绍及源码请到

2016-07-06 22:08:16 3274 2

转载 canal源码分析——整体架构分析

早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期的数据库同步业务,主要是基于trigger的方式获取增量变更,不过从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅&消费的业务,从此开启了一段新纪元。ps. 目前内部使用的同步,已经支持mysql5.x和oracle部分版本的日志解析 基

2016-07-06 22:03:13 11529 2

原创 流行ETL数据传输解决方案

第2.1IBMDataStage解决方案2.1.1IBMDataStage简介IBM InfoSphereDataStage是业界较为流行的ETL(Extract,Transform, Load)工具。它支持各种数据源和文件格式,可以满足大规模数据ETL需求。功能强大,可适用于多种类型的业务场景。而且比较灵活,拓展性强。DataStage的应用程序设计采用图形界面[8]

2016-07-06 18:59:20 9983 1

转载 IntelliJ IDEA 常用快捷键

查询快捷键CTRL+N   查找类CTRL+SHIFT+N  查找文件CTRL+SHIFT+ALT+N 查找类中的方法或变量CIRL+B   找变量的来源CTRL+ALT+B  找所有的子类CTRL+SHIFT+B  找变量的类CTRL+G   定位行CTRL+F   在当前窗口查找文本CTRL+SHIFT+F  在指定窗口查找文本CTRL+R   在当前窗

2016-07-05 15:37:41 405

原创 Linux shell 常用知识点

linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出

2016-07-05 15:33:05 557

原创 HttpComponent-HttpClient使用-发送Post请求

public class ElephantServiceImpl implements ElephantService { public final static String url = "http://dxw-in.sankuai.com/api/pub/push"; public final static String client_id = "0780O63t21166

2016-06-28 15:02:06 3855 2

转载 java 生成Http 头部date格式的string-RFC 1123 Date Representation in java

RFC date format import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Locale;import java.util.TimeZone;/** * Common place for date utils. * * @author dac@eng

2016-06-27 18:01:35 2669

原创 YarnRpc例子-ResourceTracker协议分析

ResourceManager和NodeManager之间的通信协议是ResourceTracker.。           服务器端和客户端实现都满足,包结构和类名都符合上文所说的规范,ResourceTrackerPBServiceImpl实现了PB服务的BlockingInterface,实际上代理了ResourceTrackerService(真正实现类)的方法,

2016-06-27 10:24:22 1843

原创 Hadoop源码--精彩代码的收集

Configuration getClassByNameOrNull class的缓存机制 (YarnRpc其实还有对class的constructor的缓存)

2016-06-26 19:37:41 420

原创 Hadoop源码 YarnRPC通信框架

这篇文章,我们研究YarnRpc,这是在在hadoop Rpc机制上的封装。       首先,我们看类图和注释。    YarnRPC是抽象工厂,HadoopYarnProtoRPC是具体工厂,它使用RpcFactoryProvider来创建Server和Client的工厂,这两个工厂分别创建服务器和客户端对象。   YarnRpc是个抽象类,三个接口方法,唯一实

2016-06-26 16:24:08 948

转载 NIO:Selector 详解

示例程序TCPEchoServerSelector中展示了Selector的基本用法。在此,我们将对其进行更加详细的介绍。 Selector: 创建和关闭 static Selector open() boolean isOpen() void close() 调用Selector的open()工厂方法可以创建一个选择器实例。选择器的状态是"打开"或"关闭"

2016-06-25 21:28:15 1874

原创 Hadoop源码分析 RPC Server端

Server端的入口方法是Rpc.builder.build()方法。  1.Roc.Builder类调用build方法必须满足

2016-06-21 12:11:53 927

原创 Hadoop源码分析- RPC client端篇

首先摘录别人的Rpc 的一些的总结    1. Client 与 server 端通信采用Writable 序列化形式.因此hadoop中信息的传递 必须继承自writable 接口,writable 接口有两个方法 write 和read 2. Client 端通过调用Call 方法,将消息序列化为writable 形式与server端通信 3. Client 调用sendPin

2016-06-17 22:14:49 647 1

toad使用指南

一本关于toad图形化开发界面的pdf oracle开发工具toad必备指导

2014-08-15

JAVA 1.6 中文 API.chm

不错的java api 中文版的 1.6 希望对大家有帮助 现在几乎没有1.7以上中文的!

2014-08-15

空空如也

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

TA关注的人

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