hbase 数据拷贝

由于运营数据太大,另外避免影响正常访问,所以需要临时拷贝部分数据到临时表中.

bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable [--starttime=X] [--endtime=Y] [--new.name=NEW] [--peer.adr=ADR] tablename
bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable --starttime=1265875194289 --endtime=1265878794289 --peer.adr=server1,server2,server3:2181:/hbase --families=myOldCf:myNewCf,cf2,cf3 TestTable

完整
bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable --starttime=1414550495961 --endtime=1414551715976 --new.name=test2 --families=cf --peer.adr=10.0.0.26,10.0.0.27,10.0.0.37,10.0.0.25,10.0.0.35,10.0.0.30,10.0.0.58:2181:/hbase test

hbase(main):039:0> scan ‘test‘
ROW COLUMN+CELL
key1 column=cf:, timestamp=1414550495961, value=a:1
key2 column=cf:, timestamp=1414550523026, value=a:2
key3 column=cf:, timestamp=1414551715976, value=a:3

hbase(main):040:0> scan ‘test2‘
ROW COLUMN+CELL
key1 column=cf:, timestamp=1414550495961, value=a:1
key2 column=cf:, timestamp=1414550523026, value=a:2
注意时间为前开后闭(starttine<<time<endtime), 所以上面只拷贝了两条

bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable --starttime=1407600000 --endtime=1407600002 --new.name=logtest --families=cf --peer.adr=10.0.0.26,10.0.0.27,10.0.0.37,10.0.0.25,10.0.0.35,10.0.0.30,10.0.0.58:2181:/hbase logtable

org.apache.hadoop.util.DiskChecker$DiskErrorException: Could not find any valid local directory for taskTracker/jobcache/job_201108311619_0703/attempt_201108311619_0703_m_00007

时间: 2024-10-09 23:44:40

hbase 数据拷贝的相关文章

HBase数据的导入导出

1.导出: hbase org.apache.hadoop.hbase.mapreduce.Driver export 表名 导出存放路径 其中数据文件位置可为本地文件目录,也可以分布式文件系统hdfs的路径. 当其为前者时,直接指定即可,也可以加前缀file:/// 而当其为后者时,必须明确指明hdfs的路径,例如hdfs://192.168.1.200:9000/path 2.导入: hbase org.apache.hadoop.hbase.mapreduce.Driver import

HBase数据的导入和导出

查阅了几篇中英文资料,发现有的地方说的不是很全部,总结在此,共有两种命令行的方式来实现数据的导入导出功能,即备份和还原. 1 HBase本身提供的接口 其调用形式为: 1)导入 ./hbase org.apache.hadoop.hbase.mapreduce.Driver import 表名    数据文件位置 其中数据文件位置可为本地文件目录,也可以分布式文件系统hdfs的路径. 当其为前者时,直接指定即可,也可以加前缀file:/// 而当其伟后者时,必须明确指明hdfs的路径,例如hdf

HBase 数据读写流程

HBase 数据读写流程 2016-10-18 杜亦舒 读数据 HBase的表是按行拆分为一个个 region 块儿,这些块儿被放置在各个 regionserver 中 假设现在想在用户表中获取 row key 为 row0001 的用户信息 要想取得这条数据,就需要先找到含有此条记录的 region HBase 是如何定位到具体 regionserver 中的具体 region 的呢? HBase 中有一个内置的 hbase:meta 表,其中记录了所有表的所有 region 的详细信息 例如

void *memmove( void* dest, const void* src, size_t count );数据拷贝,不需要CPU帮助

分享到 腾讯微博 QQ空间 新浪微博 人人网 朋友网 memmove 编辑词条 编辑词条 --> memmove用于从src拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中.但复制后src内容会被更改.但是当目标区域与源区域没有重叠则和memcpy函数功能相同. 快速导航 目录 1函数简介 2程序示例 大事记 光影集锦 图册集锦 花絮视频 1函数简介 原型:void *memmove( void* dest,

spark读取hbase数据,如果表存在则不做任何操作,如果表不存在则新建表。

import java.text.SimpleDateFormat import java.util.Date import org.apache.hadoop.hbase.{HColumnDescriptor, HTableDescriptor, HBaseConfiguration} import org.apache.hadoop.hbase.client.{HBaseAdmin, Put, Result, Scan} import org.apache.hadoop.hbase.io.I

如何将关系型数据表转换至hbase数据表

首先需要把关系型数据库的数据表的数据增加由 "纵向延伸",转变为HBase数据表的"横向延伸" 一.Hbase的存储结构 a)      HBase以表(HTable)的形式存储数据 b)     HTable包括很多行,每行通过RowKey唯一标记,行按照RowKey的字典序排列,表在行的方向上分割为多个HRegion c)      每行包括一个RowKey和多个Column Family,数据按照Column Family进行物理切割,即不同Column Fa

HBase数据存储格式

好的数据结构,对于检索数据,插入数据的效率就会非常高. 常见的数据结构 B+树 根节点和枝节点很简单,分别记录每个叶子节点的最小值,并用一个指针指向叶子节点. 叶子节点里每个键值都指向真正的数据块,每个叶子节点都有前指针和后指针,这是为了做范围查询时,叶子节点间可以直接跳转,从而避免再去回溯至枝和根节点. 特点: 1.有n棵子树的结点中含有n个关键字,每个关键字不保存数据,只用来索引,所有数据都保存在叶子节点. 2.所有的叶子结点中包含了全部关键字的信息,及指向含这些关键字记录的指针,且叶子结点

hbase之python利用thrift操作hbase数据和shell操作

前沿: 以前都是用mongodb的,但是量大了,mongodb显得不那么靠谱,改成hbase撑起一个量级. HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是松散型数据. HBase提供了丰富的访问接口. HBase Shell Java clietn API Jython.Groovy DSL.Scala REST Thrift(Ruby.Pyt

远程桌面数据拷贝方式

在我们日常使用当中,经常会遇到本地机器与服务器之间的远程桌面进行数据的拷贝,这里简单说明几种数据拷贝的方式,有时候一种方式无法拷贝,可以换其他的方式来进行尝试. 1.共享剪切板方式 共享剪切板的方式可以直接对文件进行复制和粘贴,比较方便. 2.共享设备资源方式 如果无法共享剪切板,可以使用共享本地资源(如磁盘)的方式,点击上图的[详细信息-]可以打开共享设置界面. 3.直接打开远程桌面磁盘进行拷贝 可以在本机上直接运行\\IP\d$的方式,在本地打开远程服务器的某一磁盘进行文件的拷贝. 其中IP