自定义博客皮肤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)
  • 收藏
  • 关注

原创 Spark运行模式及原理

1. Spark运行模式概述1.1 Spark运行模式列表 在实际应用中,Spark应用程序的运行模式取决于传递给SparkContext的MASTER环境变量的值,支持的MASTER环境变量由特定的字符串或URL组成,如下所示。Local[N]:本地模式,使用N个线程。 Local cluster[worker,core,Memory]:伪分布式模式,可以配置所需要启...

2019-06-26 17:20:49 386

原创 RDD基本概念

RDD是弹性分布式数据集,即一个RDD代表一个被分区的只读数据集。一个RDD的生成只有两种途径,一是来自于内存集合和外部存储系统,另一种是通过转换操作来自于其他RDD,比如map、filter、join,等等。 RDD没必要随时被实例化,由于RDD的接口只支持粗粒度的操作(即一个操作会被应用在RDD的所有数据上),所有只要通过记录下这些作用在RDD之上的转换操作,...

2019-05-21 17:52:08 1771

原创 Hadoop的优势

一. 与关系型数据库管理系统相比 1. 处理大数据 如果数据访问模式中包含大量的硬盘寻址,那么读取大量数据集就必然会花更长的时间(相较于流数据读取模式,流读取主要取决于传输速率)。另一方面,如果数据库系统只更新一小部分记录,那么传统的B树(关系型数据库中使用的一种数据结构,受限于寻址的速率)就更有优势。但数据库系统如果有大量数据更新时,B树的效率就明显落后于Ma...

2019-05-16 09:58:23 1497

原创 RDD与MapReduce对比

一. MapReduce的缺点 MapReduce给我们展示了一个简单通用和自动容错的批处理计算模型,但是对于其他类型的计算,比如迭代式、交互式和流式计算,MapReduce并不适合,其主要原因是MapReduce缺乏一种特性,即在并行计算的各个阶段进行有效的数据共享。 MapReduce将计算构建成一个有向无环图的任务集,而这只能允许它们有效地重新计算部分DA...

2019-05-01 11:13:29 1796

原创 Leetcode.180 连续出现的数字

题目编写一个 SQL 查询,查找所有至少连续出现三次的数字。+----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 || 6 | 2 || 7 | 2 |+----+-----+例如,给定上面的Logs表,1是...

2019-03-10 16:02:52 126

原创 LeetCode.178 分数排名

题目编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。+----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4 | 3.85 |...

2019-03-10 14:57:31 112

原创 Leetcode.448 找到所有数组中消失的数字

给定一个范围在 1 ≤ a[i] ≤n(n= 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1,n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。示例:输入:[4,3,2,7,8,2,3,1]输出:[5,6]代码pu...

2019-03-06 20:06:40 86

原创 Leetcode.784 字母大小写全排列

题目给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。示例:输入: S = "a1b2"输出: ["a1b2", "a1B2", "A1b2", "A1B2"]输入: S = "3z4"输出: ["3z4", "3Z4"]输入: S = "12345&q

2019-03-05 09:55:14 216

原创 Leetcode.819 最常见的单词

题目给定一个段落 (paragraph) 和一个禁用单词列表 (banned)。返回出现次数最多,同时不在禁用列表中的单词。题目保证至少有一个词不在禁用列表中,而且答案唯一。禁用列表中的单词用小写字母表示,不含标点符号。段落中的单词不区分大小写。答案都是小写字母。示例:输入: paragraph = "Bob hit a ball, the hit BALL flew f...

2019-03-04 10:04:49 126

原创 Leetcode.121 买卖股票的最佳时机

题目给定一个数组,它的第i个元素是一支给定股票第i天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 ...

2019-03-03 11:34:51 81

原创 LeetCode-547. Friend Circles

题目There are N students in a class. Some of them are friends, while some are not. Their friendship is transitive in nature. For example, if A is a direct friend of B, and B is a direct friend of C, t...

2019-03-02 10:04:20 81

原创 spark任务submit到yarn集群需要经过的步骤

1.1 在client使用spark-submit提交一个spark任务后首先,每个任务会对应启动一个Driver进程 然后,Driver进程为spark任务申请资源:向集群管理器Resource Manager申请运行Spark作业需要使用的资源,主要的资源是Executor进程,Executor进程数量以及所需的CPU core可以通过spark任务设置的资源参数来指定; 其次,D...

2019-02-28 20:59:02 1906

原创 无重复字符的最长子串

题目给定一个字符串,找出不含有重复字符的最长子串的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 无重复字符的最长子串是 "abc",其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 无重复字符的最长子串是 "b",其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 无重复字符的最长子串是 "wke",其长度

2019-02-28 10:56:44 64

原创 二叉搜索树的第k个结点

题目给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。思路采用中序遍历二叉搜索树,得到的遍历顺序为递增顺序,易得到第k大结点代码public TreeNode FindKthNode(TreeNode root,int k){ TreeNode kth = null; Tre...

2019-02-28 09:34:51 83

原创 HBase表结构

HBase表结构RowKey:用来唯一标示某一行。column-family:列族,每一行由若干列族组成,每个列族下可包含多个列,如上的name和sex,每一列即一个属性。列限定符:列由列族和列限定符唯一指定,像如上的name、sex即是info列族的列限定符。cell:单元格,单元格由RowKey、列族、列限定符唯一定位,存放具体值。举例:...

2019-02-27 19:53:15 204

原创 把二叉树打印成多行

题目从上往下打印出二叉树的每个节点,同层节点从左至右打印。思路使用队列实现二叉树的层次遍历。代码public class Solution { ArrayList<ArrayList<Integer>> print(TreeNode root){ ArrayList<ArrayList<Integer>> result...

2019-02-27 10:13:22 64

原创 平衡二叉树

题目输入一棵二叉树,判断该二叉树是否是平衡二叉树。思路遍历每个结点,借助一个获取树深度的递归函数,根据该结点的左右子树高度差判断是否平衡,然后递归地对左右子树进行判断。代码public classSolution { public boolean IsBalanced_Solution(TreeNode root) { if(root == null)...

2019-02-25 19:42:09 73

原创 GC overhead limit exceeded 问题解决

今天练习时出现了一个很奇怪的异常:java.lang.OutOfMemoryError: GC overhead limit exceeded ,超出了GC开销限制。科普了一下,这个是JDK6新添的错误类型。是发生在GC占用大量时间为释放很小空间的时候发生的,是一种保护机制。一般是因为堆太小,导致异常的原因:没有足够的内存。 Sun 官方对此的定义:超过98%的时间用来做GC并且回收了不到2%...

2019-02-24 18:58:25 17394

原创 关系代数表达式学习

一、关系代数的9种操作:     关系代数中包括了:并、交、差、乘、选择、投影、联接、除、自然联接等操作。 五个基本操作:    并(∪)、差(-)、笛卡尔积(×)、投影(π)、选择(σ) 四个组合操作:    交(∩)、联接(等值联接)、自然联接(RS)、除法(÷) 注2:等值连接表示先做笛卡尔积(×)之后,对相应列进行选择或等值关联后的结果(仅筛选行、不筛选...

2019-02-24 10:33:37 27501 1

原创 大数据技术

一. 大数据发展史        我们使用的各种大数据技术,最早起源于Google当年公布的三篇论文,Google FS(2003年)、MapReduce(2004年)、BigTable(2006年),其实Google当时并没有公布其源码,但是已经把这三个项目的原理和实现方式在公布的论文中详细的描述了,这几篇论文面世后,就引爆了行业的大数据学习和研究的浪潮。        随后一个叫 Do...

2019-02-21 19:50:02 172

原创 Spark概述

一. 什么是sparkSpark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。项目是用Scala进行编写。目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL、SparkStreaming、GraphX、MLib、S...

2019-02-18 19:14:58 149

原创 输入一棵二叉树,判断该二叉树是否是平衡二叉树

题目输入一棵二叉树,判断该二叉树是否是平衡二叉树思路平衡二叉树:某节点的左右子树深度差绝对值不超过1。利用递归求左右子树的深度,以判断这颗树是不是平衡的。代码class Solution {public: bool IsBalanced_Solution(TreeNode* pRoot) { if(pRoot==NULL) r...

2019-02-18 15:42:52 666

原创 连续子数组的最大和

题目HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的...

2019-02-18 15:07:26 61

原创 变态跳台阶

题目一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路由于每次跳的阶数不确定,没有一个固定的规律,但是可以了解的是后一次跳是在前一次跳的结果上累加的,因此我们可以考虑使用递归的方法来解决问题。由于每次可以跳1-n的任意阶数,因此无论有多少阶,都可以一次跳完,为了表示方便,我们将一次性跳完的情况设为F(0),当n=1时,...

2019-02-18 14:32:10 50

原创 HBase介绍

一.HBase 的角色1. HMaster功能:1) 监控 RegionServer2) 处理 RegionServer 故障转移3) 处理元数据的变更4) 处理 region 的分配或移除5) 在空闲时间进行数据的负载均衡6) 通过 Zookeeper 发布自己的位置给客户端2.RegionServer功能:1) 负责存储 HBase 的实际数据2) 处理分配给...

2019-02-17 21:01:49 131

原创 Yarn

一.Hadoop1.x 和 Hadoop2.x 架构区别       在 Hadoop1.x 时代,Hadoop 中的 MapReduce 同时处理业务逻辑运算和资源的调度,耦合性较大。       在 Hadoop2.x 时代,增加了 Yarn。Yarn 只负责资源的调度,MapReduce 只负责运算。二.Yarn 概述       Yarn 是一个资源调度平台,负责为运算程序...

2019-02-17 20:26:27 116

原创 MapReduce 入门

一. MapReduce 定义       Mapreduce 是一个分布式运算程序的编程框架,是用户开发“基于 hadoop 的数据分析应用”的核心框架。       Mapreduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个 hadoop 集群上。二.MapReduce 优缺点1 优点1)MapReduce 易于编程。它简...

2019-02-16 20:01:09 65

原创 Zookeeper 内部原理

一. 选举机制1)半数机制(Paxos 协议):集群中半数以上机器存活,集群可用。所以 zookeeper适合装在奇数台机器上。2)Zookeeper 虽然在配置文件中并没有指定 master 和 slave。但是,zookeeper 工作时,是有一个节点为 leader,其他则为 follower,Leader 是通过内部的选举机制临时产生的。3)以一个简单的例子来说明整个选举的过程。...

2019-02-16 18:44:16 111

原创 Zookeeper概述

一. 概述 Zookeeper 是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。 Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然 后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应反应,从而实现集群中类似Master...

2019-02-15 11:04:38 252

原创 HDFS文件系统

一. HDFS概述1.HDFS 概念 HDFS,它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS 的设计适合一次写入,多次读出的场景,且不支持文件的修改。适合用来做数据分析,并不适合用来做网盘应用。2. HDFS优缺点 优点: 1)高容错性 (1)数据...

2019-02-15 09:33:59 324

原创 Hadoop入门

一. Hadoop 三大发行版本Hadoop 三大发行版本: Apache、Cloudera、Hortonworks。Apache 版本最原始(最基础)的版本,对于入门学习最好。Cloudera 在大型互联网企业中用的较多。Hortonworks 文档较好。1)Apache Hadoop官网地址:http://hadoop.apache.org/releases.html下载地址:...

2019-02-14 15:57:31 93

原创 LeetCode.15 3Sum

题目Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain...

2019-02-13 10:22:02 59

原创 LeetCode.451 Sort Characters By Frequency

题目Given a string, sort it in decreasing order based on the frequency of characters.Example 1:Input:"tree"Output:"eert"Explanation:'e' appears twice while 'r' and 't' both appear once.So ...

2019-02-13 09:39:50 75

原创 LeetCode.242 Valid Anagram

题目Given two strings s and t, write a function to determine if t is an anagram of s.For example, s = “anagram”, t = “nagaram”, return true. s = “rat”, t = “car”, return false.Note: You may ass...

2019-02-12 15:08:18 63

原创 LeetCode.76 Minimum Window Substring

题目Given a string S and a string T, find the minimum window in S which will contain all the characters in T in complexity O(n).For example,S = "ADOBECODEBANC"T = "ABC"Minimum window is "BANC"....

2019-02-12 10:36:30 105

原创 Leetcode.209 Minimum Size Subarray Sum

题目Given an array of n positive integers and a positive integer s, find the minimal length of a contiguous subarray of which the sum ≥ s. If there isn't one, return 0 instead.Example:Input: s = ...

2019-02-11 15:33:43 78

原创 LeetCode 125. Valid Palindrome

题目Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.For example,"A man, a plan, a canal: Panama" is a palindrome."race a car" is not a ...

2019-02-11 14:54:17 77

原创 LeetCode167 Two Sum

题目Q:Given an array of integers that is already sorted in ascending order, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two n...

2019-02-11 11:23:37 77

原创 merge-sorted-array

题目Given two sorted integer arrays A and B, merge B into A as one sorted array.Note:You may assume that A has enough space to hold additional elements from B. The number of elements initialized in ...

2019-02-11 10:42:26 98

原创 Flume基础

一. 简介1) Flume 提供一个分布式的,可靠的,对大数据量的日志进行高效收集、聚集、移动的服务,Flume 只能在 Unix 环境下运行。2) Flume 基于流式架构,容错性强,也很灵活简单。3) Flume、Kafka 用来实时进行数据收集,Spark、Storm 用来实时处理数据,impala 用来实时查询。二. 架构三.核心组件1. source     ...

2019-02-03 13:07:36 97

空空如也

空空如也

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

TA关注的人

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