- 浏览: 1048629 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (538)
- 奇文共赏 (36)
- spring (13)
- hibernate (10)
- AOP/Aspectj (9)
- spring security (7)
- lucence (5)
- compass (3)
- jbmp (2)
- jboss rule(drools) (0)
- birt (1)
- jasper (1)
- cxf (3)
- flex (98)
- webgis (6)
- 设计模式 (1)
- 代码重构 (2)
- log4j (1)
- tomcat (9)
- 神品音乐 (1)
- 工作计划 (2)
- appfuse (1)
- svn (4)
- 寻章摘句 (3)
- eclipse (10)
- arcgis api for flex (1)
- 算法 (5)
- opengis-cs (1)
- bug心得 (13)
- 图标 (1)
- software&key (14)
- java (17)
- 搞笑视频 (13)
- sqlserver (9)
- postgresql (1)
- postgis (0)
- geoserver (5)
- 日子 (50)
- 水晶报表 (1)
- 绝对电影 (3)
- Alternativa3D (1)
- 酷站大全 (10)
- c++ (5)
- oracle (17)
- oracle spatial (25)
- flashbuilder4 (3)
- TweenLite (1)
- DailyBuild (6)
- 华山论贱 (5)
- 系统性能 (5)
- 经典古文 (6)
- SOA/SCA/OSGI (6)
- jira (2)
- Hadoop生态圈(hadoop/hbase/pig/hive/zookeeper) (37)
- 风水 (1)
- linux操作基础 (17)
- 经济 (4)
- 茶 (3)
- JUnit (1)
- C# dotNet (1)
- netbeans (1)
- Java2D (1)
- QT4 (1)
- google Test/Mock/AutoTest (3)
- maven (1)
- 3d/OSG (1)
- Eclipse RCP (3)
- CUDA (1)
- Access control (0)
- http://linux.chinaunix.net/techdoc/beginner/2008/01/29/977725.shtml (1)
- redis (1)
最新评论
-
dove19900520:
朋友,你确定你的标题跟文章内容对应???
tomcat控制浏览器不缓存 -
wussrc:
我只想说牛逼,就我接触过的那点云计算的东西,仔细想想还真是这么 ...
别样解释云计算,太TM天才跨界了 -
hw_imxy:
endpoint="/Hello/messagebr ...
flex+java代码分两个工程 -
gaohejie:
rsrsdgrfdh坎坎坷坷
Flex 与 Spring 集成 -
李涤尘:
谢谢。不过说得有点太罗嗦了。
Oracle数据库数据的导入及导出(转)
使用HBase的一个典型例子,涉及了HBase中很多概念
http://hi.baidu.com/xuelianglv/blog/item/8c68bb01633166d0267fb552.html
一个使用HBase的例子,如下。 import java.io.IOException; public class MyClient { public static void main(String args[]) throws IOException { // This instantiates an HTable object that connects you to the "myTable" // To do any sort of update on a row, you use an instance of the BatchUpdate // The BatchUpdate#put method takes a Text that describes what cell you want // Deletes are batch operations in HBase as well. // Once you've done all the puts you want, you need to commit the results. // Now, to retrieve the data we just wrote. The values that come back are 在这个例子中,使用了HBase中的很多概念,包括: Cell:table中对应某个(行key, 列值,时间戳)下的单元格值。 scanner:用于遍历表格。 -- 从上面可以看到,HBase中的数据都是Bytes。HBase并不care里面实际存的数据到底是什么数据,只要
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Scanner;
import org.apache.hadoop.hbase.io.BatchUpdate;
import org.apache.hadoop.hbase.io.Cell;
import org.apache.hadoop.hbase.io.RowResult;
// You need a configuration object to tell the client where to connect.
// But don't worry, the defaults are pulled from the local config file.
HBaseConfiguration config = new HBaseConfiguration();
// table.
HTable table = new HTable(config, "myTable");
// class. A BatchUpdate takes a row and optionally a timestamp which your
// updates will affect.
BatchUpdate batchUpdate = new BatchUpdate("myRow");
// to put a value into, and a byte array that is the value you want to
// store. Note that if you want to store strings, you have to getBytes()
// from the string for HBase to understand how to store it. (The same goes
// for primitives like ints and longs and user-defined classes - you must
// find a way to reduce it to bytes.)
batchUpdate.put("myColumnFamily:columnQualifier1",
"columnQualifier1 value!".getBytes());
batchUpdate.delete("myColumnFamily:cellIWantDeleted");
// The HTable#commit method takes the BatchUpdate instance you've been
// building and pushes the batch of changes you made into HBase.
table.commit(batchUpdate);
// Cell instances. A Cell is a combination of the value as a byte array and
// the timestamp the value was stored with. If you happen to know that the
// value contained is a string and want an actual string, then you must
// convert it yourself.
Cell cell = table.get("myRow", "myColumnFamily:columnQualifier1");
String valueStr = new String(cell.getValue());
// Sometimes, you won't know the row you're looking for. In this case, you
// use a Scanner. This will give you cursor-like interface to the contents
// of the table.
Scanner scanner =
// we want to get back only "myColumnFamily:columnQualifier1" when we iterate
table.getScanner(new String[]{"myColumnFamily:columnQualifier1"});
// Scanners in HBase 0.2 return RowResult instances. A RowResult is like the
// row key and the columns all wrapped up in a single interface.
// RowResult#getRow gives you the row key. RowResult also implements
// Map, so you can get to your column results easily.
// Now, for the actual iteration. One way is to use a while loop like so:
RowResult rowResult = scanner.next();
while(rowResult != null) {
// print out the row we found and the columns we were looking for
System.out.println("Found row: " + new String(rowResult.getRow()) + " with value: " +
rowResult.get("myColumnFamily:columnQualifier1".getBytes()));
rowResult = scanner.next();
}
// The other approach is to use a foreach loop. Scanners are iterable!
for (RowResult result : scanner) {
// print out the row we found and the columns we were looking for
System.out.println("Found row: " + new String(result.getRow()) + " with value: " +
result.get("myColumnFamily:columnQualifier1".getBytes()));
}
// Make sure you close your scanners when you are done!
scanner.close();
}
}
HBaseConfiguration: 用于告诉client如何连接,连接到哪个HBase的服务器上。
HTable:代表一个HBase表格。
BatchUpdate:用于表格中一行的更新。包括添加某个列,修改某列的值,删除某列等。
commit:table的一个方法。代表某个BatchUpdate操作可以生效了。类似于数据库中的commit操作。
获取Cell的方法。For example:
table.get("myRow", "myColumnFamily:columnQualifier1");
rowResult:遍历过程当中保存某行信息。
该数据可以转化成byte[]即可。
发表评论
-
一网打尽当下NoSQL类型、适用场景及使用公司
2014-12-28 20:56 966一网打尽当下NoSQL类型、适用场景及使用公司 http:// ... -
别样解释云计算,太TM天才跨界了
2014-02-25 09:41 2438http://mp.weixin.qq.com/s?__bi ... -
Build, Install, Configure and Run Apache Hadoop 2.2.0 in Microsoft Windows OS
2013-12-09 11:17 2537http://www.srccodes.com/p/arti ... -
hadoop的超时设置
2013-06-23 11:47 2427from http://blog.163.com/zheng ... -
hadoop与panasas
2012-12-26 09:53 881在应用的场景中,hadoop当然希望使用全部的本地硬盘,但是对 ... -
程序开过多线程,导致hadoop作业无法运行成功
2012-10-23 16:14 7064Exception in thread "Threa ... -
mount盘异常,导致hadoop作业无法发送
2012-10-23 16:12 955异常信息 2012-10-23 21:10:42,18 ... -
HDFS quota 設定
2012-08-02 16:22 5524http://fenriswolf.me/2012/04/04 ... -
hadoop常用的指令
2011-10-09 16:50 1702hadoop job -kill jobid 可以整个的杀掉 ... -
Hadoop基准测试
2011-08-08 10:04 1276http://www.michael-noll.com/ ... -
Hadoop Job Scheduler作业调度器
2011-05-21 11:02 2525http://hi.baidu.com/zhengxiang3 ... -
hadoop指定某个文件的blocksize,而不改变整个集群的blocksize
2011-03-20 17:20 2108文件上传的时候,使用下面的命令即可 hadoop f ... -
Hadoop Job Tuning
2011-02-28 15:53 818http://www.searchtb.com/2010/12 ... -
如何在不重启整个hadoop集群的情况下,增加新的节点
2011-02-25 10:12 14041.在namenode 的conf/slaves文件中增加新的 ... -
对hadoop task进行profiling的几种方法整理
2011-02-10 21:57 1653对hadoop task进行profiling的几种方法整 ... -
如何对hadoop作业的某个task进行debug单步跟踪
2011-02-10 21:56 2080http://blog.csdn.net/AE86_FC/ar ... -
hadoop 0.20 程式開發 eclipse plugin
2011-01-26 19:36 2258http://trac.nchc.org.tw/cloud/w ... -
hadoop-0.21.0-eclipse-plugin无法在eclipse中运行解决方案
2011-01-26 09:47 3600LINUX下将hadoop-0.21自带的hadoop ecl ... -
How to Benchmark a Hadoop Cluster
2011-01-19 22:15 2849How to Benchmark a Hadoop Clu ... -
json在线格式化
2010-12-21 16:23 2433http://jsonformatter.curiouscon ...
相关推荐
HBase的设计理念让它在很多方面优于传统的关系型数据库。例如,传统关系数据库在处理大规模数据时,可能无法应对系统扩展和性能问题,且在数据结构变化时一般需要停机维护。与此相反,HBase支持随机访问,能提供在线...
比如,HBase URL短链接服务“Hush”的实现和运行过程就是一个很好的例子。通过这些实例,读者可以更好地理解HBase如何解决现实世界中的问题。 综上所述,《HBase:权威指南》是一本全面而深入的HBase教程,不仅适合...
HBase作为一个基于Google Bigtable模型的开源分布式数据库,特别适用于需要快速随机访问大量数据的应用程序。它的架构与传统的MySQL、PostgreSQL、Oracle等关系型数据库截然不同,这些特点为应用程序提供的灵活性和...
标题中的“行业分类-设备装置-一种应用于HBASE数据库的数据写入方法及系统”表明了这个压缩包内容涉及的是IT行业的数据库管理系统,特别是针对HBase这种分布式列式存储数据库的数据写入策略。HBase是建立在Apache ...
总的来说,这份文档提供了关于如何在实际业务环境中部署和使用基于HBase的New SQL的深入指导,涵盖了理论知识、实践经验和技术挑战,对于希望在大数据领域利用HBase进行高性能查询的开发者和管理员具有很高的参考...
### gohbase:HBase go客户端 #### 知识点概述 gohbase是一个使用Go语言编写的HBase...随着云计算技术的持续发展,gohbase作为云计算领域的一个组件,其应用前景广阔,同时也为开发者提供了更多的编程语言选择。
另一个例子: : 在添加的这个示例中,性能明显提高,将更多的缓冲项从 1 增加到 1000,基于 14 个节点的集群将时间从 25 分钟减少到 50 秒。 但是,将缓冲增加到 10K,响应不如超时开始播放。 这个过程很简单。 ...
标题中的"SpringHbaseDemo-master.zip"表明这是一个关于Spring与HBase集成的示例项目,主要关注于如何在Java环境中利用Spring框架操作HBase数据库。HBase是一个分布式、版本化的NoSQL数据库,常用于大数据存储。...
由于HBase本身只能根据主键进行排序和查询,这在很多情况下限制了查询的灵活性和效率。因此,引入二级索引成为解决这一问题的关键。 #### 二、关于演讲者与Phoenix项目 本次演讲由Jesse Yates呈现,他是Salesforce...
可能是在前一个示例的基础上进行了更深入的学习和实践,例如,可能涉及更复杂的数据处理逻辑,或者引入了Hadoop生态系统中的其他组件,如Hive(用于数据仓库)、Pig(用于数据分析)或者HBase(一个NoSQL数据库)。...
对于初学者来说,安装一个预配置好的虚拟机可以省去很多配置环境的时间和精力,也使得学习过程更为平滑。书中会有详细的安装指南,让读者能够一步步按照说明搭建好开发环境。 除了基础的安装和配置知识,书中还会...
Hadoop与空间数据挖掘分析是大数据技术在特定领域应用的一个典型例子。在当今数字化时代,大数据的管理和分析成为了一个重要的研究和应用领域。大数据通常指的是无法用传统数据库工具在合理时间内进行捕获、管理和...
分布式JAVA应用基础与实践是Java开发领域中一个重要的主题,主要涵盖了如何在大规模网络环境中设计、部署和管理Java应用程序。本书由林昊编著,旨在帮助开发者深入理解分布式系统的基本概念,掌握Java在分布式环境中...
在IT行业中,数据采集是大数据处理的关键步骤,而Apache Flume正是一个专为此设计的分布式、可靠且可用的服务。这份资料“使用Flume收集数据内含源码以及说明书可以自己运行复现.zip”包含了实现Flume数据采集的源码...
这一模型极大地推动了数据密集型应用的发展,Hadoop MapReduce是实现该模型的一个典型例子,广泛应用于大数据处理领域。 4. BigTable论文 BigTable论文发表于2006年,介绍了谷歌的结构化数据存储系统BigTable。...
在Hadoop生态系统中,DBInputFormat提供了一个很好的例子,说明如何将Hadoop技术与现有的数据存储方案结合起来,发挥各自的优势,解决大数据时代下的各种数据处理需求。通过这种技术结合,开发者可以利用Hadoop的...
例如,在单词统计的例子中,Map函数会读取文档内容,对每个单词产生一个键值对,其中键是单词,值是“1”。 2. Shuffle阶段:Map阶段的输出会被自动排序和分区,确保相同键的值会被发送到同一个Reduce节点。这个...
举一个我们创业产品项目的例子,我们发现日活中的用户,有相当一部分用户只是注册了,但是并 没有使用我们产品的核心功能,于是我们担心会不会有一些付费推广渠道「刷量」。 所以,我们将新增用户中不活跃的比例按...
MongoDB 是一个非常流行的 NoSQL 数据库,它的应用场景非常广泛,包括日志存储、监控报表、信息展示、游戏开发等等。学习 MongoDB 需要注意使用 3.2 或以上版本,并建议使用 Linux 系统进行学习。同时,MongoDB 的...
本文将深入探讨 Apache ZooKeeper 的核心概念、数据模型、重要性和常见应用场景,并特别关注于如何构建一个坚不可摧的 ZooKeeper 集群。 #### 二、Apache ZooKeeper 概览 ##### 2.1 ZooKeeper 是什么? Apache ...