- 浏览: 25331 次
- 性别:
- 来自: 北京
最新评论
-
秦时明月黑:
牛逼,霸气
Hive中小表与大表关联(join)的性能分析
文章列表
1.applicationContext-jms.xml 配制内容如果下
<!--jndi环境配制-->
<bean id="jndiTemplate"
class="org.springframework.jndi.JndiTemplate">
<property name="environment">
<props>
<prop key="java.naming.factory.initial">
web ...
基本知识。
有的时候,希望在select语句中使用自己定义的函数,并且这个函数除了返回特定的值之外,还执行update,insert,delete等操作。
对数据库有写操作(update,insert,delete,crate,alert,commit)的函数是无法简单的用SQL来调用的。
如何实现?关键是pragma autonomous_transaction
如下例子:
SQL> Create or replace function func_getid return int is
2 pr ...
myBatis整合spring
- 博客分类:
- mybatis
http://www.360doc.com/content/12/0315/16/203871_194571727.shtml
最近无聊,就想着做一下ssm的整合~在网上先去找资料,但是发现大多都不是入门级。尤其是需要哪些jar,都没有注明出来。
那么我就写一篇,算作是入门的教程,高手勿拍砖~
一、准备工作
首先去找struts的. http://struts.apache.org/ 下载最新的struts 2.3.7. (在发这篇文章前我发现已经升级到了2.3.8)
然后再去找spring的. http://www.springsource.org/spring-framework 下载spring-framework-3.2.0.RELEASE- ...
经常看到一些Hive优化的建议中说当小表与大表做关联时,把小表写在前面,这样可以使Hive的关联速度更快,提到的原因都是说因为小表可以先放到内存中,然后大表的每条记录再去内存中检测,最终完成关联查询。这样的原因 ...
执行一个查询
$HIVE_HOME/bin/hive -e 'select a.col from tab1 a'
之后过程中,会在终端上显示mapreduce的进度,执行完毕后,最后把查询结果输出到终端上,接着hive进程退出,不会进入交互模式。
使用静音模式执行一个查询
$HIVE_HOME/bin/hive -S -e 'select a.col from tab1 a'
加入-S,终端上的输出不会有mapreduce的进度,执行完毕,只会把查询结果输出到终端上。这个静音模式很实用,,通过第三方程序调用,第三方程序通过hive的标准输出获取结果集。
使用静音模式执行一个查 ...
Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
1、下载地址:
http://sqoop.apache.org/
2、修改SQOOP的文件configure-sqoop,注释掉hbase和zookeeper检查(除非你准备使用HABASE等HADOOP上的组件)
#if [ ! -d "${HBASE_HOME}" ]; then
# echo “Error: $HBASE_H ...
HBase自带的export/import机制可以实现Backup Restore功能。而且可以实现增量备份。 下面设增量备份的python脚本 在这个脚本中,每天做增量备份,每个月15日做全备份。
import time
import datetime
from datetime import date
import sys
import os
tablename=sys.argv[1]
backupDst=sys.argv[2]
today=date.today()
if today.day == 15: //every month, we do a full ba ...
一.崩溃原因
搭建的是一个hadoop测试集群,所以将数据备份参数设置为dfs.replication=1,这样如果有一台datanode损坏的话,数据就会失去。但不幸的是,刚好就有一台机器由于负载过高,导致数据操坏。进而后面需要重启整个hadoop集群,重启后启动namenode启动不了。报如下错误:
FSNamesystem initialization failed saveLeases found path /tmp/xxx/aaa.txt but no matching entry in namespace.
二.修复namenode
hadoop 集群崩溃了. 导致name ...
public class MyAction {
public static void main(String[] args) {
UserGroupInformation ugi = UserGroupInformation.createRemoteUser("hadoop");
ugi.doAs(new PrivilegedAction<Void>() {
public Void run() {
try{
System.setProperty("path.separator", &qu ...
hadoop有两个分支:0.20.x 和0.23.x。其中0.20.x是比较稳定的版本,0.23.x中新特性更多,但相对不稳定。
其中从0.20.x 分支发展出来的是:hadoop1.0,CDH3
从0.23.x 分支发展出来的是:hadoop-alpha,CDH4
下面具体说hadoop1.0、2.0 和CDH3、CDH4:
Apache Hadoop 2012年10月02日发布了 2.0 的第二个 Alpha 版本,版本号 2.0.2。该版本在 2000 个节点的集群上进行测试,目前开发团队的主要工作是处理无共享存储下的 HDFS HA ,还包括 YARN ResourceManag ...
由于Hadoop默认编码为UTF-8,并且将UTF-8进行了硬编码,所以我们在处理中文时需要重写OutputFormat类。方法为:
1、新建类GBKFileOutputFormat,代码如下:import java.io.DataOutputStream; import java.io.IOException; import java.io.UnsupportedEncodingException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; impo ...
面试题目:
地球人都知道,Java有个东西叫垃圾收集器,它让创建的对象不需要像c/cpp那样delete、free掉,你能不能谈谈,GC是在什么时候,对什么东西,做了什么事情?
一.回答:什么时候?
1.系统空闲的时候。
分析:这种回答大约占30%,遇到的话一般我就会准备转向别的话题,譬如算法、譬如SSH看看能否发掘一些他擅长的其他方面。
2.系统自身决定,不可预测的时间/调用System.gc()的时候。
分析:这种回答大约占55%,大部分应届生都能回答到这个答案,起码不能算错误是吧,后续应当细分一下到底是语言表述导致答案太笼统,还是本身就只 ...
目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug Lea。本文并不比较synchronized与Lock孰优孰劣,只是介绍二者的实现原理。
数据同步需要依赖锁,那锁的同步又依赖谁?synchronized给出的答案是在软件层面依赖JVM,而Lock给出的方案是在硬件层面依赖特殊的CPU指令,大家可能会进一步追问:JVM底层又是如何实现synchronized的?
本文所指说的JVM是指Hotspot的6u23版本,下面首先介绍synchronized的实现:
synrhronized关键字简洁、清晰 ...
因为不是太复杂,所以只贴代码了,有注释,相信朋友没都能看懂。
public static void main(String[] args) {
//在本地windows平台eclipse运行mapreduce程序
//创建远程用户,以指定的用户来运行程序
//把要运行的程序代码放到run方法体里
UserGroupInformation ugi = UserGroupInformation.createRemoteUser("hadoop");
ugi.doAs(new PrivilegedAction<Void>() {
...