- 浏览: 164862 次
- 性别:
- 来自: 北京
最新评论
-
dengshh:
[flash=200,200][url][img][list] ...
memcache to java -
a13597418943:
struts2 Preparable接口
文章列表
HBase提供了丰富的访问接口。
• HBase Shell
• Java clietn API
• Jython、Groovy DSL、Scala
• REST
• Thrift(Ruby、Python、Perl、C++…)
• MapReduce
• Hive/Pig
1.查询服务器状态
hbase(main):024:0>status
3 servers, 0 dead,1.0000 average load
2.查询hive版本
hbase(main):025:0>version
0.90.4, r1150278,Sun Jul 24 15:53:29 PDT ...
什么时候需要HBase
半结构化或非结构化数据,对于数据结构字段不够确定或杂乱无章很难按一个概念去进行抽取的数据适合用HBase。当业务发展需要存储author的email,phone,address信息时RDBMS需要停机维护,而HBase支持动态增加.
记录非常稀疏
RDBMS的行有多少列是固定的,为null的列浪费了存储空间。而如上文提到的,HBase为null的Column不会被存储,这样既节省了空间又提高了读性能。
多版本数据
如上文提到的根据Row key和Column key定位到的Value可以有任意数量的版本值,因此对于需要存储变动历史记录的数据,用HBase就非常方便 ...
形式一:调用相同Action中的不同方法
<action name="*Action" class="Jcuckoo.LoginRegistAction" method="{1}">
<result name="input">/login.jsp</result>
<result name="error">/error.jsp</result>
<resu ...
主从复制:让多个slave server拥有和master server相同的数据库副本。
特点
1.master可以有多个slave
2.除了多个slave连到相同的master外,slave也可以连接其他slave形成图状结构
3.主从复制不会阻塞master。也就是说当一个或多个slave与master进行初次同步数据时,master可以继续处理client发来的请求。
相反slave在初次同步数据时则会阻塞不能处理client的请求。
4.主从复制可以用来提高系统的可伸缩性,我们可以用多个slave 专门用于client的读请求,
如sort操作可以使用slave来处理。也可以用来 ...
redis是一个内存数据库[支持持久化],那么redis需要经常将内存中的数据同步到磁盘来保证持久化;
持久化方式,一种是 Snapshotting[快照 , 默认方式],另一种是Append-only file(缩写AOF)的方式。
Snapshotting[快照 , 默认方式]
将内存 ...
1. Keys
redis本质上一个key-value db,所以我们首先来看看他的key.
首先key也是字符串类型,但是key中不能包括边界字符;由于key不是binary safe的字符串,所以像"my key"和"mykey\n"这样包含空格和换行的key是不允许的
注:
顺便说一下在redis内部并不限制使用binary字符,这是redis协议限制的。"\r\n"在协议格式中会作为特殊字符。
redis 1.2以后的协议中部分命令已经开始使用新的协议格式了(比如MSET)。总之目前还是把包含边界字符当成非法的key吧,免得被 ...
/usr/local/redis/redis-server /usr/local/redis/redis.conf
如果想添加redis服务器,可以重新弄一个redis.conf配置文件,进行重新配置
/usr/local/redis/redis-cli -h 127.0.0.1 -p 6379 shutdown 关闭redis服务器
下载redis2.0 , redis.conf.zip 解压jar包,把conf文件放到 ...
大兔子病了,
二兔子瞧,
三兔子买药,
四兔子熬,
五兔子死了,
六兔子抬,
七兔子挖坑,
八兔子埋,
九兔子坐在地上哭泣来,
十兔子问它为什么哭?
九兔子说,
五兔子一去不回来!
概念
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型[指 所操作的数据类型被指定为一个参数]
好处
安全简单
没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。
泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率
普通----------------------------------------------- ...
JMeter 最早是为了测试 Tomcat 的前身 JServ 的执行效率而诞生的。它的测试能力也不再仅仅只局限于对于Web服务器的测试,而是涵盖了数据库、JMS、Web Service、LDAP等多种对象的测试能力。
JMeter 的安装非常简单,从官方网站上下载, ...
public class ChangeVar {
public static void main(String[] args) {
String str = "123456789abcdefg";
byte[] b = str.getBytes();
//wrong
String str_a = b.toString();
System.out.println(str_a);
//right
String str_b = new String(b);
System.out.println(str_b) ...
代理模式 :为其他对象提供一种代理以控制对这个对象的访问
一个client不想直接引用另一个对象,而代理对象可以在client和server之间起到中介的作用。
抽象角色:声明真实对象和代理对象的共同接口;
代理角色:代理对象角 ...
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.apache.log4j.Logger ...
new关键字和newInstance()方法的区别:
newInstance: 弱类型。低效率。只能调用无参构造。
new: 强类型。相对高效。能调用任何public构造。
一个是方法,一个是关键字外。
创建对象的方式不一样,前者是使用类加载机制,后者是创建一个新类。
Class.forName(xxx.xx.xx) 返回的是一个类,装载类用的;在java里面任何class都要装载在虚拟机上才能运行。[这个静态方法调用了启动类加载器,即加载java API的那个加载器。 ]
A a = (A)Class.forName("pacage.A").newInstance() ...
第一种(懒汉,线程不安全):
Java代码
public class Singleton {
private static Singleton instance;
private Singleton (){}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
这种写法lazy loadin ...