- 博客(87)
- 资源 (3)
- 收藏
- 关注
转载 sql语句中left join、inner join中的on与where的区别
1 .WHERE子句中使用的连接语句,在数据库语言中,被称为隐性连接。INNER JOIN……ON子句产生的连接称为显性连接。(其他JOIN参数也是显性连接)WHERE 和INNER JOIN产生的连接关系,没有本质区别,结果也一样。但是!隐性连接随着数据库语言的规范和发展,已经逐渐被淘汰,比较新的数据库语言基本上已经抛弃了隐性连接,全部采用显性连接了。2 .无论怎么连接,都可以用jo
2015-05-18 09:32:52
1076
转载 spark中的action和transformation
原文地址:http://blog.youkuaiyun.com/egraldloi/article/details/16343733本文提供的是0.7.3版本中的action和transformation接口,RDD提供了两种类型的操作:transformation和action1,transformation是得到一个新的RDD,方式很多,比如从数据源生成一个新的RDD,从RDD生成一个新的
2015-05-14 16:08:16
1685
原创 mapreduce原理理解
mapreduce原理看来很多文章,就是没能很好地表述出来,还是需要自己写一下文章,独立思考一下整体思路才行啊。用自己的话来说话。首先需要知道mapreduc任务是怎么启动的:当客户的提交一个mapreduce任务,将产生一个job,Hadoop是将job分成task来进行处理的:map task和reduce taskHadoop怎么控制job的运行呢?由两种节点来控制:JobTra
2015-03-03 12:51:49
921
转载 ArrayList的实现原理
1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向ArrayList中不断添加元 素,其容
2015-02-11 14:21:03
669
转载 HashMap的实现原理
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本
2015-02-10 19:38:24
569
转载 Java内存分配与管理
Java内存分配与管理是Java的核心技术之一,一般Java在内存分配时会涉及到以下区域:◆寄存器:我们在程序中无法控制◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中◆堆:存放用new产生的数据◆静态域:存放在对象中用static定义的静态成员◆常量池:存放常量◆非RAM存储:硬盘等永久存储空间Java内
2015-02-10 19:25:21
782
原创 HashSet
HashSet底层采用了HashMap实现的,所有放入HashSet中的集合元素实际上由HashMap的key来保存,而HashMap的value则存储一个PERSENT,它是一个静态的Object对象。public class HashSet extends AbstractSet implements Set, Cloneable, java.io.Seri
2015-02-10 19:22:09
588
转载 栈和堆的区别是什么? 为什么说栈的速度快,堆的速度慢?
栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 Java的堆是一个运行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是
2015-01-31 15:02:18
4392
转载 java实现二叉树的构建以及3种遍历方法
转自:http://ocaicai.iteye.com/blog/1047397目录: 1.把一个数组的值赋值给一颗二叉树 2.具体代码 1.树的构建方法 2.具体代码 Java代码 package tree; import java.util.LinkedList; import java.util
2015-01-31 14:39:57
3644
转载 MySQL的语句执行顺序
MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指定某一个子句,那么将会跳过相应的步骤。下面我们来具体分析一下查询处理的每一个阶段FORM: 对FROM
2015-01-28 15:40:23
683
原创 shell 基本运算
整数运算:a=4b=5c=$a+$b //你以为这样的结果是9吗?echo $c //4+5 shell默认都是字符串操作的,所以得到的才是4+5,而不是9,怎么搞?1.加点料(()),用这个把这个表达式括起来((c=a+b)) //这里不需要用$引用了echo $c //9或者更简单的写法:echo $((a+b))2.用let语句
2015-01-15 14:41:05
613
原创 HBase 查找一条数据的过程 白话理解
整体过程是:client访问zk,查找-ROOT-表,获取.META.表信息从.META.表查找,获取存放数据的region信息(找到region sever)最后通过RegionServer获取查找的数据不懂?别急,我们先了解ROOT表和META表的结构: 从这里可以看出,META表里面包含了region的信息(一行),region信
2015-01-14 20:59:00
7127
转载 Python特殊语法:filter、map、reduce、lambda
filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回:>>> def f(x): return x % 2 != 0 and x % 3 != 0 >>> filter(f, range(2, 25)) [5,
2015-01-14 14:35:16
547
转载 shell读取文件的多种方法
a),#使用read命令读取一行数据while read mylinedo echo "LINE:"$mylinedone b),#使用read命令读取一行数据cat datafile.txt | while read mylinedo echo "LINE:"$mylineDonec),#读取一行数据cat d
2015-01-13 20:01:31
2255
原创 hive之窗口函数理解与实践
rt_data表存放了当天每半小时的店铺销售数据------------------------------------------------------------1.统计截止到当前时间段的店铺累计销售金额select shop_id, stat_date, ordamt, sum(ordamt) over(partition by shop_id order by stat_da
2015-01-13 14:58:39
44110
7
转载 拉链表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求:1. 数据量比较大;2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态, 比如,查看某一个用户在过去某一段时间内,更新过几次等等;4. 变化的比例和频率不是很大,比如,总共有1000万
2015-01-05 20:49:05
12515
转载 Lateral View语法
1). Lateral View语法[html] view plaincopylateralView: LATERAL VIEW udtf(expression) tableAlias AS columnAlias (',' columnAlias)* fromClause: FROM baseTable (lateralView)*
2014-09-28 18:07:06
2697
转载 chrome快捷键
Ctrl+O,然后选择文件 在谷歌浏览器中打开计算机上的文件 8按住 Ctrl 键,然后点击链接 从后台在新标签页中打开链接,但您仍停留在当前标签页中 按住 Ctrl+Shift 键,然后点击链接 在新标签页中打开链接,同时切换到新打开的标签页
2014-06-23 23:29:47
651
原创 hive多表插入
多表插入指的是在同一条语句中, 把读取的同一份元数据插入到不同的表中。只需要扫描一遍元数据即可完成所有表的插入操作, 效率很高。多表操作示例如下。hive> create table mutill as select id,name from userinfo; #有数据hive> create table mutil2 like mutill; #无数据,只有表结构hive> fro
2014-02-14 15:51:29
6486
转载 虚拟机网络设置(四种方式)
VirtualBox的提供了四种网络接入模式,它们分别是: 1、NAT 网络地址转换模式(NAT,Network Address Translation) 2、Bridged Adapter 桥接模式 3、Internal 内部网络模式 4、Host-only Adapter 主机模式 第一种 NAT模式 解释: NAT模式是最简单的实现虚拟机上网的方式,你可以这样
2014-01-20 18:01:24
1705
转载 cdh4b1之HDFS的HA(High Availability)原理简介
目录(?)[-]引入软硬件配置硬件配置软件配置HA部署HA管理0 引入 以前Hadoop版本中,NameNode是HDFS集群的单点故障(single point of failure,SPoF),SPoF指系统中这个部件失效或停止运转将会导致整个系统不能工作。而这在下面两种情况出现: (1) 意外事件如机器c
2014-01-17 11:30:42
871
转载 bash_profile和.bashrc的什么区别
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登
2014-01-10 15:42:43
515
转载 Ad hoc 概念解释
Ad hoc 概念解释ad hoc 一般都说是即席查詢,当到底什么是即席查詢,也没有说清楚,让人一头雾水,在wikipedia上的解释如下: ad hoc 允许终端用户自己去建立特定的、自定义的查询请求。通常是通过一个用户友好的图形界面来进行数据查询而无需用户对 SQL 或者数据库架构有深入的了解。 在stackOverflo
2014-01-09 16:43:35
1409
转载 Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~)
历时一周多,终于搭建好最新版本hadoop2.2集群,期间遇到各种问题,作为菜鸟真心被各种折磨,不过当wordcount给出结果的那一刻,兴奋的不得了~~(文当中若有错误之处或疑问欢迎指正,互相学习)PS:转载请注明来源:http://blog.youkuaiyun.com/licongcong_0224/article/details/12972889另外:欢迎配置过程中遇到问题的朋友留言,
2014-01-06 18:30:53
14766
转载 图解linux下top命令的使用
top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。 top进入视图top视图 01【top视图 01】是刚进入top
2014-01-03 19:20:44
601
转载 Hadoop如何计算map数和reduce数
Hadoop在运行一个mapreduce job之前,需要估算这个job的maptask数和reducetask数。首先分析一下job的maptask数,当一个job提交时,jobclient首先分析job被拆分的split数量,然后吧job.split文件放置在HDFS中,一个job的MapTask数量就等于split的个数。job.split中包含split的个数由FileInputF
2013-11-25 10:40:53
778
转载 on条件与where条件的区别
目录(?)[-]JOIN联表中ONWHERE后面跟条件的区别数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件的区别如下:1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where条件是在临时
2013-11-21 10:35:45
2304
转载 打通两台机器的ssh功能
1,如果希望打通 A 和 B 两台机器,则要用相同的用户账号打通才行,如都用tscadmin2,如果希望从 A 机器用tscadmin账号能拷贝B的数据 [tscadmin@A:$] scp B:/home/tscadmin/filename1 filename2 则 需要在A机器上用tscadmin生成公钥,然后拷贝到B机器上3,如何检查两台机器是否打通
2013-10-03 17:34:34
2135
转载 hadoop原理浅析及安装
原文:http://guoli0813.blog.51cto.com/623863/293138经过几天的测试,hadoop分布式系统搭建完毕。首先说一下这几天对hadoop理论知识的理解,然后说一下安装及碰到的问题。有图有真相http://192.168.0.20:50070/dfshealth.jsp 第一:理论知识: 什么是hadoop: 由
2013-10-01 20:23:42
921
转载 Hive优化总结
Hive优化总结---by 食人花 优化时,把hive sql当做map reduce程序来读,会有意想不到的惊喜。理解hadoop的核心能力,是hive优化的根本。这是这一年来,项目组所有成员宝贵的经验总结。 长期观察hadoop处理数据的过程,有几个显著的特征:1.不怕数据多,就怕数据倾斜。2.对jobs数比较多的作业运行效率相对比较低,比如
2013-10-01 20:19:09
920
转载 hive SQL优化之distribute by和sort by
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yaoyinjie.blog.51cto.com/3189782/703873 最近在优化hiveSQL,下面是一段排序,分组后取每组第一行记录的SQLINSERT OVERWRITE TABLE t_wa_funnel_distinct_temp
2013-10-01 18:06:11
1120
原创 2011新人-Java基础学习篇
一、吹水篇-摆正心态基础作为一个程序员最基本的东西,必须会,我们组以Java语言为主,C++等为辅助,学好Java基础,打牢地基,才能跳得更高、跑得更远。不要鄙视Java基础,请先放下姿态,用一种敬畏的心态去学习它吧,每一个细节都很重要,你需要细心,你需要思考它,不要没有思考过就以为你懂了,问你一个问题,知道Integer吗?你也看得懂下面的代码吧,那你知道结果是什么吗?Integer
2011-11-14 18:14:10
1026
转载 认识理解Java中native方法
Java不是完美的,Java的不足除了体现在运行速度上要比传统的C++慢许多之外,Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能。 可以将native方法比作Java程序同C程序的接口,其实现步骤: 1、在Ja
2011-07-19 10:44:48
631
转载 ServletContext 与application的异同
ServletContext 与application的异同 相同:其实servletContext和application 是一样的,就相当于一个类创建了两个不同名称的变量。在 servlet中ServletContext就是application对象。大家只要打开
2011-07-18 19:33:16
13376
8
原创 Java 基础(备忘2)
<br />1.instanceof关键字<br />作用是判断一个对象是否为某个类或接口类型。<br />在变量使用多态时,可以使用instanceof关键字进行变量的类型判断,然后执行不同操作。<br /> <br />2.成员变量与局部变量的区别(背)<br />成员变量可以被public,protect, private,static修饰,局部变量不可以,两者都可以被final修饰<br />成员变量存储在堆中,局部变量存储在栈中<br />成员变量可以默认初始化,局部变量必须显式初始化<br />
2011-05-02 22:39:00
602
原创 Java回调函数,自己辛苦的理解
关于回调函数,网上虽然有很多解答,但发现很难掌握。你懂得了理论,但实际的应用又显得不知从何下手。凭着我个人单薄的力量,我总结了一个比较容易理解和应用的例子,通过这个例子的学习,我相信很快就能学会回调函数了。下面是具体的例子:public class SynCallback { public static void main(String[] args) { DealCallBack dcb = new DealCallBack(); final String n
2011-05-02 15:52:00
905
原创 this关键字,super关键字,就这么几种用法,记住就是了!
1.返回调用当前方法的对象的引用例:public class Boy { public getBoy() { return this; } public static void main(String[] args) { Boy boy1 = new Boy(); Boy boy11 = boy1.getBoy(); // this代表boy1 Boy boy2 = new Boy();
2011-05-01 14:08:00
964
转载 Android打造个性十足的组件技术之复合组件
<br />在Android中,我们可以通过继承View来打造完全如我们所愿的组件,但是,有的时候,我们需要的组件是一个由现有的几个组件的组合实现的,那么我们就可以利用组件合成技术,呵呵,这个名字我自己起的。<br />在Android中打造复合组件,其实只需要继承Layout或者其子类,比如LinearLayout等,然后在其中定义需要完成该功能的现有的几个组件。<br />然后定义一个监听器(就是一个简单的接口,暴露给用户使用,获取返回的数据,给用户使用)<br />本文通过使用两个Spinner来打造
2011-05-01 00:34:00
597
转载 Android四种Activity的加载模式
<br />建议首先阅读下面两篇文章,这样才可以更好的理解Activity的加载模式:<br />Android的进程,线程模型 <br />http://www.cnblogs.com/ghj1976/archive/2011/04/28/2031586.html 其中对“Android的单线程模型”的描述,明白Activity的一些注意事项。<br />Android Application Task Activities的关系 <br />http://www.cnblogs.com/
2011-05-01 00:32:00
395
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人