- 博客(448)
- 资源 (16)
- 收藏
- 关注
转载 MySQL慢日志简介及Anemometer工具介绍
MySQL 慢日志简介:原文地址:http://www.fordba.com/box-anemometer-visual-mysql-slow.htmlMySQL慢日志想必大家或多或少都有听说,主要是用来记录MySQL中长时间执行(超过long_query_time 单位秒),同时examine的行数超过min_examined_row_limit ,影响MySQL性能的SQL语句,以便D...
2019-02-01 17:51:47
7279
转载 HIVE时间操作UDF
日期函数UNIX时间戳转日期函数: from_unixtime语法: from_unixtime(bigint unixtime[, string format])返回值: string说明: 转化UNIX时间戳(从1970-01-01 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式举例:hive> select from_unixtime(13233...
2019-01-16 20:55:26
6771
转载 HDFS高可用以及联邦HDFS集群搭建
阅读目录HDFS高可用集群搭建 安装步骤: 联邦HDFS集群搭建回到顶部HDFS高可用集群搭建hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。最新的hadoop-2.6.4又增加了YARN HA注意:apache提供的hadoop-2.6.4的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库所以如果在64位的操...
2018-12-02 15:23:09
6704
转载 HDFS 滚动升级,降级,回滚
介绍HDFS滚动升级可以升级单独的HDFS守护进程. 例如, datanode们可以独立于namenode来升级. 一个namenode也可以独立于其他的namenode们来升级. namenode们也可以独立于datanode们和journal node们升级.升级在Hadoop版本2中, HDFS支持高可用(HA)namenode服务并结合兼容性. 这两项能力使其可以在避免停机时间...
2018-12-02 14:55:14
7880
转载 Java 浅析 Thread.join()
概要本文分为三部分对 Thread.join() 进行分析:1. join() 的示例和作用2. join() 源码分析3. 对网上其他分析 join() 的文章提出疑问 1. join() 的示例和作用1.1 示例1 // 父线程2 public class Parent extends Thread {3 public void run() {...
2018-11-09 00:03:00
8637
转载 BookKeeper 设计介绍及应用
BookKeeper由yahoo于2009年创建,并在2011年开源。BookKeeper是一个可靠的日志流记录系统,用于将系统产生的日志(也可以是其他数据)记录在BookKeeper集群上,由BookKeeper这个第三方Storage保证数据存储的可靠和一致性。典型场景是系统写write-ahead log,即先把log写到BookKeeper上,再对log做处理,比如将log写到内存的数据...
2018-11-07 13:35:51
9491
转载 Apache Pulsar简介
Apache PulsarWhat is Pulsar"Pulsar is a distributed pub-sub messaging platform with a very flexible messaging model and an intuitive client API."Pulsar是pub-sub模式的分布式消息平台,拥有灵活的消息模型和直观的客户端API。Pu...
2018-11-05 20:42:12
6503
转载 Java并发之AQS详解
一、概述 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。 以下是本文的目录大...
2018-11-04 22:16:42
6020
转载 Hadoop机架感知(rack-aware)配置
副本的存放策略又是HDFS实现高可靠性和搞性能的关键,优化的副本存放策略也正是HDFS区分于其他大部分分布式文件系统的重要特性。HDFS采用一种称为机架感知(rack-aware)的策略来改进数据的可靠性、可用性和网络带宽的利用率。大型HDFS实例一般运行在跨越多个机架的计算机组成的机群上,不同机架上的两台机器之间的通信需要经过交换机,这样会增加数据传输的成本。在大多数情况下,同一机架内的两台机器...
2018-09-15 16:27:27
6663
转载 神奇的HyperLogLog算法
基数计数基本概念基数计数(cardinality counting)通常用来统计一个集合中不重复的元素个数,例如统计某个网站的UV,或者用户搜索网站的关键词数量。数据分析、网络监控及数据库优化等领域都会涉及到基数计数的需求。 要实现基数计数,最简单的做法是记录集合中所有不重复的元素集合S_uSu,当新来一个元素x_ixi,若S_uSu中不包含元素x_ixi,则将x_ix...
2018-08-29 12:24:23
7715
转载 Java Mission Control-Java 性能分析工具
引言本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Java 任务控制器的时候提供帮助。第一篇:操作系统工具,第二篇:Java 内置监控工具。JMC 是在 JAVA 7u40 发布中加入的性能监控工具。使用过 JDK 6 中 JRockit JVM 的...
2018-08-28 18:50:09
8399
转载 Apache Kylin 精确去重指标优化历程
问题背景 优化1 将精确去重指标拆分HBase列族 优化2 移除不必要的toString避免bitmap deserialize 优化3 获取bitmap的字节长度时避免deserialize 优化4 无需上卷聚合的精确去重查询优化 总结 反思 相关Kylin JIRA本文记录了我将Apache Kylin超高基数的精确去重指标查询提速数十倍的过程,大家有任何建议或者疑问欢迎讨论。...
2018-08-27 13:28:14
8238
转载 流计算框架 Flink 与 Storm 的性能对比
1. 背景Apache Flink 和 Apache Storm 是当前业界广泛使用的两个分布式实时计算框架。其中 Apache Storm(以下简称“Storm”)在美团点评实时计算业务中已有较为成熟的运用(可参考 Storm 的可靠性保证测试),有管理平台、常用 API 和相应的文档,大量实时作业基于 Storm 构建。而 Apache Flink(以下简称“Flink”)在近期倍受关注,...
2018-08-26 21:13:26
6691
转载 数据同步利器-otter的搭建使用说明
一、Otter目前支持了什么 1. 单向同步, mysql/oracle互相同步 2. 双向同步,无冲突变更 3. 文件同步,本地/aranda文件 4. 双A同步,冲突检测&冲突补救 5. 数据迁移,中间表/行记录同步 导历史表还需要程序代码实现吗? 还在用mysql的主从复制吗?...
2018-07-16 16:24:38
7659
转载 使用 Binlog 和 Canal 从 MySQL 抽取数据
数据抽取是 ETL 流程的第一步。我们会将数据从 RDBMS 或日志服务器等外部系统抽取至数据仓库,进行清洗、转换、聚合等操作。在现代网站技术栈中,MySQL 是最常见的数据库管理系统,我们会从多个不同的 MySQL 实例中抽取数据,存入一个中心节点,或直接进入 Hive。市面上已有多种成熟的、基于 SQL 查询的抽取软件,如著名的开源项目 Apache Sqoop,然而这些工具并不支持实时的数据...
2018-07-16 16:05:02
8082
转载 IntelliJ IDEA 2017.2 破解(注册)
下载IntelliJ IDEA 2017.2 下载地址:https://www.jetbrains.com/idea/安装,一律下一步,也可以按照自己的喜好,选择安装路径和位数。安装完成后,会提示以下内容选择License server,输入http://idea.iteblog.com/key.php,点ok待上一步完成后,即可看到已经完成了。 最后,点击快捷方式打开。如下图: 打开后,查看He...
2018-06-28 20:13:04
6482
1
转载 深入解析Java AtomicInteger 原子类型
在进行并发编程的时候我们需要确保程序在被多个线程并发访问时可以得到正确的结果,也就是实现线程安全。线程安全的定义如下:当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么这个类就是线程安全的。举个线程不安全的例子。假如我们想实现一个功能来统计网页访问量,你可能想到用count++ 来统计访问量...
2018-06-14 22:41:44
6246
转载 Hive分析窗口函数系列文章
分析窗口函数应用场景:(1)用于分区排序(2)动态Group By(3)Top N(4)累计计算(5)层次查询Hive分析窗口函数(一) SUM,AVG,MIN,MAXHive中提供了越来越多的分析函数,用于完成负责的统计分析。抽时间将所有的分析窗口函数理一遍,将陆续发布。今天先看几个基础的,SUM、AVG、MIN、MAX。用于实现分组内所有和连续累积的统计。数据准备:[sql] view pla...
2018-06-14 10:48:56
6283
原创 一个人爬楼梯,可能走一步、两部、三步。编程,求他上一有n阶的梯级的走法-java实现
package youling.studio.test;import java.util.concurrent.atomic.AtomicInteger;public class Test07 { private AtomicInteger count = new AtomicInteger(0); public static void main(String[] args) { ...
2018-06-06 20:47:08
8878
转载 HDFS NameNode内存详解
前言《HDFS NameNode内存全景》中,我们从NameNode内部数据结构的视角,对它的内存全景及几个关键数据结构进行了简单解读,并结合实际场景介绍了NameNode可能遇到的问题,还有业界进行横向扩展方面的多种可借鉴解决方案。事实上,对NameNode实施横向扩展前,会面临常驻内存随数据规模持续增长的情况,为此需要经历不断调整NameNode内存的堆空间大小的过程,期间会遇到几个问题:当前...
2018-06-04 22:32:45
6974
转载 HDFS NameNode内存全景
一、概述从整个HDFS系统架构上看,NameNode是其中最重要、最复杂也是最容易出现问题的地方,而且一旦NameNode出现故障,整个Hadoop集群就将处于不可服务的状态,同时随着数据规模和集群规模地持续增长,很多小量级时被隐藏的问题逐渐暴露出来。所以,从更高层次掌握NameNode的内部结构和运行机制尤其重要。除特别说明外,本文基于社区版本Hadoop-2.4.1[1][2],虽然2.4.1...
2018-06-04 22:31:32
6114
转载 Apache Avro RPC 实例
Avro的模式主要由JSON对象来表示,Avro支持8种基本类型(Primitive Type)和6种复杂类型(Complex Type:records、enums、arrays、maps、unions 和fixed),基本类型可以由JSON字符串来表示。Avro支持两种序列化编码方式:二进制编码和JSON编码,使用二进制编码会高效序列化,并且序列化后得到的结果会比较小。 基本类型:null: ...
2018-06-03 21:43:42
6258
转载 数据质量评估标准
数据质量是保证数据应用的基础,它的评估标准主要包括四个方面,完整性、一致性、准确性、及时性。评估数据是否达到预期设定的质量要求,就可以通过这四个方面来进行判断。完整性完整性指的是数据信息是否存在缺失的状况,数据缺失的情况可能是整个数据记录缺失,也可能是数据中某个字段信息的记录缺失。不完整的数据所能借鉴的价值就会大大降低,也是数据质量更为基础的一项评估标准。数据质量的完整性比较容易去评估,一般我们可...
2018-05-31 21:44:55
34330
转载 Java并发编程中Semaphore的用法
Semaphore又称信号量,是操作系统中的一个概念,在Java并发编程中,信号量控制的是线程并发的数量。public Semaphore(int permits)1其中参数permits就是允许同时运行的线程数目;下面先看一个信号量实现单线程的例子,也就是permits=1:package concurrent.semaphore;import java.util.concurrent.Se...
2018-05-26 17:17:01
6128
转载 缓存穿透,缓存击穿,缓存雪崩解决方案分析
前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。解决方案有很多种方法可以有效地...
2018-05-24 11:05:13
6053
转载 Java中的强引用,软引用,弱引用,虚引用
作者:winterSunshine链接:https://www.zhihu.com/question/37401125/answer/100981172来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1.概念解释强引用是使用最普遍的引用:Object o=new Object(); 特点:不会被GC将对象的引用显示地置为null:o=null; // 帮助垃...
2018-05-23 10:08:53
6145
转载 Java单例模式——并非看起来那么简单
Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。一些管理器和控制器常被设计成单例模式。 单例模式有很多好处,它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间;能够避免由于操作多个实例导致的逻辑错误。如果一个对象有可能贯穿整个应用程序,而且起到了全局统一管理控制的作用,...
2018-05-23 00:01:28
6057
转载 hadoop的mapReduce和Spark的shuffle过程的详解与对比及优化
大数据的分布式计算框架目前使用的最多的就是hadoop的mapReduce和Spark,mapReducehe和Spark之间的最大区别是前者较偏向于离线处理,而后者重视实现性,下面主要介绍mapReducehe和Spark两者的shuffle过程。MapReduce的Shuffle过程介绍Shuffle的本义是洗牌、混洗,把一组有一定规则的数据尽量转换成一组无规则的数据,越随机越好。MapRed...
2018-05-22 23:13:16
7391
转载 hive谓词下推的失效与生效
谓词下推的生效:[sql] view plain copyselect * from czw_test2 a join (select * from czw_test1 where pt >='20121101' and pt <='20121102') b on (a.search_id = b.search_id) select count(1) from czw_t...
2018-05-22 19:29:34
7392
转载 Hadoop 过滤,映射,谓词下推基本概念
今天想跟大家讨论一下以下几个概念:Filter , Projections, 和 Puchdowns。1. Filter(过滤) 和 Project(映射) 在传统的 OLAP 系统中,在进行 Join 的时候使用过滤和映射会极大的提高性能。同样的,在 Hadoop 中使用 Filter 和 Projection 同样可以提高效率,由于减少了一个管道需要处理的数据量。在Hadoop中减少处理的数据...
2018-05-22 18:11:20
6561
转载 Spark Streaming重复消费,多次输出问题剖析与解决方案
1,Exactly once 事务什么事Exactly once 事务?数据仅处理一次并且仅输出一次,这样才是完整的事务处理。Spark在运行出错时不能保证输出也是事务级别的。在Task执行一半的时候出错了,虽然在语义上做了事务处理,数据仅被处理一次,但是如果是输出到数据库中,那有空能将结果多次保存到数据库中。Spark在任务失败时会进行重试,这样会导致结果多次保存到数据库中。如下图,当运行在Ex...
2018-05-15 11:13:14
8880
转载 星型模型和雪花型模型比较
每个数据仓库都包含一个或者多个事实数据表。事实数据表可能包含业务销售数据,如现金登记事务所产生的数据,事实数据表通常包含大量的行。事实数据表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据,每个事实数据表包含一个由多个部分组成的索引,该索引包含作为外键的相关性维度表的主键,而维度表包含事实记录的特性。事实数据表不应该包含描述性的信息,也不应该包含除数字度量字...
2018-05-14 10:54:58
9031
转载 HDFS NameNode重启优化
一、背景在Hadoop集群整个生命周期里,由于调整参数、Patch、升级等多种场景需要频繁操作NameNode重启,不论采用何种架构,重启期间集群整体存在可用性和可靠性的风险,所以优化NameNode重启非常关键。本文基于Hadoop-2.x和HA with QJM社区架构和系统设计(如图1所示),通过梳理NameNode重启流程,并在此基础上,阐述对NameNode重启优化实践。相关厂商内容罗辑...
2018-05-13 23:39:17
6548
转载 Kafka 设计与原理详解
一、Kafka简介本文综合了我之前写的kafka相关文章,可作为一个全面了解学习kafka的培训学习资料。12转载请注明出处 : 本文链接1.1 背景历史当今社会各种应用系统诸如商业、社交、搜索、浏览等像信息工厂一样不断的生产出各种信息,在大数据时代,我们面临如下几个挑战:如何收集这些巨大的信息如何分析它如何及时做到如上两点以上几个挑战形成了一个业务需求模型,即生产者生产(produce)各种信...
2018-05-11 10:51:34
6168
转载 图解排序算法(四)之归并排序
基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。分而治之 可以看到这种结构很像一棵完全二叉树,本文的归并排序我们采用递归去实现(也可采用迭代的方式去实现)。分阶段...
2018-05-10 20:58:00
6221
转载 Hadoop MapReduce工作详细流程(Partitioner/SortComparator/GroupingComparator)
map阶段1. 使用job.setInputFormatClass(TextInputFormat)做为输入格式。注意输出应该符合自定义Map中定义的输出。2. 进入Mapper的map()方法,生成一个List。3. 在map阶段的最后,会先调用job.setPartitionerClass()对这个List进行分区,每个分区映射到一个reducer。4. 每
2018-04-26 12:38:47
6408
转载 hadoop的mapreduce编程模型中GroupingComparator的使用
在hadoop的mapreduce编程模型中,当在map端处理完成输出key-value对时,reduce端只会将key相同的到同一个reduce函数中去执行,如果现在map端输出的key是一个对像TextPair,,那这样每个map端到reduce都会变成如下形式(因为每个对象都不一样):1>1>1>1>...12345但是我们有个需求,该对象包含两个整型成员变量first和
2018-04-25 20:17:56
6276
转载 漫谈数据仓库之维度建模
0x00 前言下面的内容,是笔者在学习和工作中的一些总结,其中概念性的内容大多来自书中,实践性的内容大多来自自己的工作和个人理解。由于资历尚浅,难免会有很多错误,望批评指正!概述数据仓库包含的内容很多,它可以包括架构、建模和方法论。对应到具体工作中的话,它可以包含下面的这些内容:以Hadoop、Spark、Hive等组建为中心的数据架构体系。各种数据建模方法,如维度建模
2018-04-25 18:42:50
7266
转载 漫谈数据仓库之拉链表(原理、设计以及在Hive中的实现)
0x00 前言本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理、设计、以及在我们大数据场景下的实现方式。全文由下面几个部分组成:先分享一下拉链表的用途、什么是拉链表。通过一些小的使用场景来对拉链表做近一步的阐释,以及拉链表和常用的切片表的区别。举一个具体的应用场景,来设计并实现一份拉链表,最后并通过一些例子说明如何使用我们设计的这张表(因为现在Hive的大规
2018-04-25 18:40:59
6432
转载 基于Flume的美团日志收集系统(二)改进和优化
在《基于Flume的美团日志收集系统(一)架构和设计》中,我们详述了基于Flume的美团日志收集系统的架构设计,以及为什么做这样的设计。在本节中,我们将会讲述在实际部署和使用过程中遇到的问题,对Flume的功能改进和对系统做的优化。1 Flume的问题总结在Flume的使用过程中,遇到的主要问题如下:a. Channel“水土不服”:使用固定大小的MemoryChannel在日志高峰时常报队列大小...
2018-04-18 18:52:28
6289
SonarLint-3.5-for-intellj-idea-亲测好使.zip
2019-08-09
C#语言c/结构酒店管理系统_幽灵工作室提供
2013-05-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅