hbase 修改表名_hbase修改表名 - 张欢19933的个人空间 - OSCHINA - 中文开源技术交流社区...

hbase修改表名

hbase修改表名没有直接的api可以调用,我们如果想要修改表名,可以利用快照的方式。

需要开启快照功能,在hbase-site.xml文件中添加如下配置项:

hbase.snapshot.enabled

true

命令

hbase shell> disable 'tableName'

hbase shell> snapshot 'tableName', 'tableSnapshot'

hbase shell> clone_snapshot 'tableSnapshot', 'newTableName'

然后我们就可以测试一下新表是否建立成功。

快照是什么?

快照就是一份元信息的合集,允许管理员恢复到表的先前状态。快照不是表的复制而是一个文件名称列表,因而不会复制数据。完全快照恢复是指恢复到之前的“表结构”以及当时的数据,快照之后发生的数据不会恢复。

操作

生成快照:本操作尝试对指定表生成快照。如果集群在执行数据均衡、分隔或合并等操作时,可能会引起操作失败。

克隆快照:本操作使用与指定快照相同的结构数据构建一张新表。操作结果会生成一张有完整功能的表,对该表的任意修改不会对原表或快照产生影响。

还原快照:本操作将表结构和数据恢复到生成快照时的状态。(注意:本操作会舍弃快照生成后任何改变)。

删除快照:本操作将系统中的快照删除,释放未共享的磁盘空间,而且不会影响其他克隆或快照。

导出快照:本操作将快照数据和元数据复制到其他集群。操作只会涉及HDFS,不会与Master或域服务器产生任何联系,因此HBase集群可以关闭。

零复制快照,恢复,克隆

快照和复制/导出表之间的主要差异是快照操作只写入元数据,不涉及海量数据。

HBase的主要设计原则之一就是一旦文件写入就不再修改。文件不可变意味着快照只需保持对快照产生时存在的文件追踪,并且在压缩时负责提示系统该文件不应删除而是应当归档保存。

同样的原则也适用于克隆和恢复操作。因为文件是不变的,新建一个表只需要通过快照“链接”到文件引用即可。

导出快照是唯一需要复制数据的操作,因为其他集群没有数据文件。

导出快照 vs 复制/导出表

导出快照与复制/导出表除了更好地保持一致性外,主要的不同在于导出快照是在HDFS的层面操作的。这意味这Master和域服务器与操作无关。因此不需要为不必要的数据创建缓存空间,也不会有扫描过程因为大量对象创建引起的GC暂停。对于HBase来说主要性能影响就是DataNode额外的网络和磁盘负载。

HBase命令:快照操作

通过检查hbase-site.xml中的hbase.snapshot.enabled是否设置为true确认打开了快照许可。获取指定表的快照使用snapshot命令(不产生文件复制)

hbase>snapshot ‘tableName’, ‘snapshotName’

列出所有的快照,使用 list_snapshot 命令。会展示出快照名称,源表,以及创建日期和时间

hbase>list_snapshots

使用clone_snapshot命令从指定的快照生成新表(克隆)。由于不会产生数据复制,所以最终用到的数据不会是之前的两倍。

hbase>clone_snapshot ‘snapshotName’, ‘newTableName’

使用restore_snapshot命令将指定快照内容替换当前表结构/数据。

用快照恢复数据,它需要先禁用表,再进行恢复

hbase>disable 'myTable'

hbase>restore_snapshot ‘snapshotName’

删除快照使用 deleted_snapshot 命令。删除快照不会影响到克隆表或者之后生成的快照。

hbase>delete_snapshot ‘snapshotName’

使用ExportSnapshot工具将现有快照导出至其他集群。导出工具不会影响到域服务器负载,只是工作在HDFS层面所以需要指定HDFS路径(其他集群的hbase根目录)

采用16个mappers来把一个名为MySnapshot的快照复制到一个名为hbfreeoa2的集群当中

hbase class org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot MySnapshot -copy-to hdfs://hbfreeoa2:8020/hbase -mappers 16

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/538082.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ajax一次输出1万条数据库,后端接口一次给出100万条数据,请问你前端怎么分页处理...

面试官既然能这么问&#xff0c;我们从技术的角度出发&#xff0c;探索一下这道题&#xff0c;上手操作了一下&#xff1a;function loadAll(response) {var html "";for (var i 0; i < 100000; i) {html "title:" 我正在测试[i] "";}$(…

“” '' ``区别 初学者自用

单引号 相当于吧里面的内容直接输出。并不会考虑里面是否有变量命令等双引号 "" 只认变量 命令会直接输出反引号 两种都认 实例&#xff1a; a"hello" [localhost.localdomain 10:16:09]$echo echo %a输出&#xff1a;echo %a [localhost.localdomain…

maven私有库配置

不同的项目&#xff0c;不同的私有库1、添加仓库Release 发布&#xff1b; 发行仓库snapshot 快照&#xff0c;开发&#xff0c;调试仓库配置完成2、配置权限默认开通的权限&#xff0c;查看权限给刚才建的两个私有库添加权限配置好后3、创建角色&#xff0c;分配权限添加rolei…

asc desc排序_21.数据库排序?左连接 ?右连接?

更多内容来源&#xff1a;http://mp.weixin.qq.com/mp/homepage?__bizMzA5OTQ1ODE1NQ&hid6&sn843337a7d9931839214ec8f861ac2164&scene18#wechat_redirect1、数据库排序语法 select column_name,column_name from table_name order by column_name,column_name as…

京东ajax怎么用,使用Ajax、json实现京东购物车结算界面的数据交互实例

全选商品单价数量小计操作全选删除选中产品总价&#xff1a;&#xffe5;0body,html,ul,li,a{margin:0;padding:0;font-family:"microsoft yahei";list-style:none;text-decoration:none;}.fl{float:left;}.fr{float:right;}.f12{font-size:12px;}.disl{display:inli…

Facebook 游戏开发更新文档 API 参考文档 v6.0

Facebook 游戏开发更新文档 API 参考文档 v6.0 更新日志 1.排行榜 此版本全新推出排行榜 API&#xff01;提供一套强大的 API&#xff0c; 使得游戏可获取排行榜、查询得分 情况和设置新分数&#xff08;支持分数所带的 任意元数据&#xff09;&#xff0c;并可向 Messenger 对…

maven私有库搭建

为什么要搭建maven私有库&#xff1f; 有位博主在2008年时这样写道&#xff1a; 如果没有私服&#xff0c;我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地&#xff0c;而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费…

mysql查询_MYSQL查询

-- 单表查询SELECT sc.*FROM scSELECT * FROM course-- 分页 LIMIT 从0开始检索SELECT * FROM course LIMIT 0,3SELECT * FROM course limit 3,3SELECT * FROM course LIMIT 6,1-- 多表连接查询-- 1.等值与非等值连接查询SELECT * FROM student;SELECT * FROM course;SELECT *…

微软封闭服务器切换,执行服务器切换:Exchange 2013 帮助 | Microsoft Docs

执行服务器切换2021/6/1本文内容适用于&#xff1a;Exchange Server 2013 SP1服务器切换是一个任务&#xff0c;执行该任务以将当前邮箱服务器的所有活动邮箱数据库副本移动到数据库可用性组 (中的一个或多个其他邮箱) 。 此任务作为为当前邮箱服务器的计划中断做准备的一部分执…

eclipse maven访问maven私有库

1、Windows本地maven下载 https://maven.apache.org/download.cgi 2、maven setting 文件配置 进入maven 目录下 conf。apache-maven-3.2.3\conf 新建.xml 文件&#xff0c;内容如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?><set…

入门系列之在Ubuntu 16.04使用Buildbot建立持续集成系统

欢迎大家前往腾讯云社区&#xff0c;获取更多腾讯海量技术实践干货哦~ 本文由angel_郁发表于云社区专栏 介绍 Buildbot是一个基于Python的持续集成系统&#xff0c;用于自动化软件构建&#xff0c;测试和发布过程。 在本教程中&#xff0c;我们将演示如何设置持续集成系统以自动…

fedora mysql 初始化_Linux(fedora)下启动MySQL,结果显示:env: /etc/init.d/mysql:权限不够。 我已经将权限切换到su了...

展开全部Linu下启动MySQL结果显示&#xff1a;env: /etc/init.d/mysql: 是脚e69da5e887aa62616964757a686964616f31333365646235本执行的问题解决办法&#xff1a;依次执行下面的命令(执行失败的话&#xff0c;检查路径是否正确)&#xff1a;cp /etc/init.d/mysql /etc/init.d/…

3.Android的新虚拟ART与原虚拟机DVM的区别

Android在4.2之前的虚拟机叫做 DVM 在4.2的时候多了一个虚拟机选择&#xff0c;这是新的虚拟机 ART。Android Runingtime 那时ART还不够成熟&#xff0c;需要测试&#xff0c;所以默认虚拟机是DVM。国内的ROM厂商直接把ART给割了。 Android5.0起&#xff0c;默认使用ART虚拟…

mysql binlog 统计_对MySQL binlog日志解析,统计每张表的DML次数

想要获取每天数据库每张表的DML的次数&#xff0c;统计热度表&#xff0c;可以使用该脚本# coding:utf-8# 解析binlog&#xff0c;统计热度表&#xff0c;表的DML个数import sysimport os# mysqlbinlog解析binlog日志def binlog_output():binlog_file sys.argv[1]file_num bi…

strapi 开源api 内容管理平台试用

strapi 是一个开源的api && 内容管理平台&#xff0c;功能操作起来还是比较方便简单的。 安装 使用docker && docker-compose 代码clonegit clone https://github.com/strapi/strapi-docker && cd strapi-docker 启动 docker-compose up -d 访问 首次初…

1.android体系结构介绍

一、Android的介绍 android介绍见百度百科&#xff1a;Android的介绍&#xff0c;度娘把Android介绍的这么清楚&#xff0c;如果谷歌是Android的爹&#xff0c;那度娘就是娘了。 二、Android的架构图 android系统主要分四层&#xff1a; 从上致下&#xff1a; 1、应用层 2、…

mysql seconds_behind_master_MySQL中的seconds_behind_master的理解

通过show slave status查看到的Seconds_Behind_Master&#xff0c;从字面上来看&#xff0c;他是slave落后master的秒数&#xff0c;一般情况下&#xff0c;也确实这样&#xff0c;我们可以通过Seconds_Behind_Master数字查看slave是否落后于master&#xff0c;但是在一些环境中…

2.JVM和DVM之间的区别

1、JVM .java----->.class----->.jar 运行在内存的 栈 栈虚拟机 2、DVM .java----->.class------>.dex-----(加上其它资源文件)---->apk 运行在CPU的 寄存器 寄存器虚拟机 ---------------------------------------------------------- 3、DVM与JVM的区…

Node.js模块以及模块加载机制

2019独角兽企业重金招聘Python工程师标准>>> Node.js中的模块 在Node.js中&#xff0c;以模块为单位划分功能&#xff0c;通过一个完整的模块加载机制使得开发人员可以将应用程序划分为多个不同的部分。模块的使用可以提高代码重用率&#xff0c;提高应用程序的开发…

wordpress支持MySQL5.5_wordpress数据库版本为5.5以上导出不能在5.5以下的版本导入的问题解决...

自从wordpress4.2版本出现以后&#xff0c;已经可以支持utf8mb4数据编码&#xff0c;那么如果您的php空间的数据库版本是mysql5.1的&#xff0c;那么很多站长朋友从mysql5.5导出来再导入到5.1的数据中的时候&#xff0c;那么问题来了&#xff0c;就会报错Unknown collation ‘u…