Hbase是基于HDFS的NOsql数据库,它很多地方跟数据库差不多,也有很多不同的地方。这里就不一一列举了,不过Hbase有个版本控制的特性,这个特性在很多场景下都会发挥很大的作用。...本篇就介绍下基于Shell和Java API的Hbase多版本的读写。 为了更好的理解多版本,我们可以把普通的数据存储理解成二维空间,提供了rowkey,列族,列几个存储的维度。...那么版本则相当于二维空间升华到了三维空间,多了时间维度的概念。如果按照默认的操作,当前的时间戳就是版本号,每个数据都可以保留多个版本的数据。你可以只查询最新的数据,也可以查看历史版本。...话题扯远了,回过来我们在看一下多版本如何进行读写 第一步,创建表并开启多版本 hbase(main):002:0> create_namespace 'xingoo' 0 row(s) in 0.0230...s) in 0.0040 seconds shell读取多个版本的数据 注意:如果读取的版本大于Hbase存储的版本,那么只会读取最大VESIONS个记录。
我们知道hbase是一个多版本的管理系统,在0.96的版本之前默认每个列是3个version,在hbase 0.96之后每个列是1个version,所谓的version其实就是同一条数据插入不同的时间戳来实现的...,在hbase底层的存储是基于时间戳排序的,所以每次我们查到的数据都是最新的版本,除非我们指定了要读取特定的时间范围的数据。...因为你该次操作的时间戳小于Long.MAXVALUE,而且你的version只有一个,所以hbase认为一个旧的版本是不能覆盖新的版本的,同样删除也是,你会发现无论你执行多少次删除命令,该条数据就是不能够被删除掉...总结: hbase的多版本存储特性是一个强大的功能,在使用的时候应该注意尽量不要修改默认取当前时间戳的逻辑,如果修改了那么在其他添加,删除,更新的时候都应该考虑当前的时间戳是否大于第一次插入时的时间戳,...,尽量不要在向hbase插入数据的时候设置自定义的时间戳,除非业务场景需要。
一.前述 今天分享一篇关于HBase的一对多和多对多的案例的分析。...二.具体案例 案例一.多对多 人员-角色 人员有多个角色 角色优先级 角色有多个人员 人员 删除添加角色 角色 可以添加删除人员 人员 角色 删除添加 ?...表中定义两个列族,第一个列族是名字,第二个列族中 多个列定义为具体的角色,列的内容定义为具体的值,即优先级(这里利用了列也能存信息,所以把角色Id定义为具体的列,值越大代表优先级越高) 案例二.一对多
面向多租户的数据安全和资源隔离能力,提供标准的用户名密码认证、ACL、Quota、Resource Group等特性, 看到集群的容量状况,Server列表,表属性,表大小等等信息。...HBase在balance或者split region时,region会有短暂不在线,属于正常情况,如果存在长时间不在线的region或者RegionServer.
原文地址:http://hbase.apache.org/book/configuration.html#basic.prerequisites Table 2.1. ...Hadoop version support matrix HBase-0.92.x HBase-0.94.x HBase-0.96.0 HBase-0.98.0 Hadoop-0.20.205 S...Replace the Hadoop Bundled With HBase!...Because HBase depends on Hadoop, it bundles an instance of the Hadoop jar under its lib directory....Make sure you replace the jar in HBase everywhere on your cluster.
1.MapReduce从hbase读取数据 //读取hbase表数据 public class HbaseAndMapReduce { public static void main(String...); // 完成的作业是: 有共同爱好的人 System.exit(run()); /* * TableMapper //对输出hbase...数据来格式分割的处理类 TableReducer //对输入hbase数据来统计处理的处理类 * TableOutputFormat //来自hbase的格式 TableInputFormat...//输入hbase的格式 */ } public static int run() throws Exception { Configuration...数据来格式分割的处理类 * TableReducer //对输入hbase数据来统计处理的处理类 * TableOutputFormat //来自hbase的格式
首先提前祝大家中秋快乐,今天我们分享的文章来自云栖大会嘉宾:阿里云专家 封神的分享 分享主题:HBase多模的机遇与挑战 内容概要:业务挑战带来的架构演进; ApsaraDB...For HBase多模式数据库; ApsaraDB For HBase核心场景; 以及技术人员成长发展之路 什么是Apache HBase Hadoop...松散表结构(Schema free) 原生海量数据分布式存储 随机查询、范围查询 高吞吐,低延迟 在线分布式数据库 多版本,增量导入,多维删除 ApsaraDB HBase Platform 平台架构...HBase性能与存储空间 兼备时序数据传感器数据监控数据HBase HBase-OpenTSDB写性能高、存储量大时空数据轨迹轨迹、时空数据HBase HBase-GeoMesa写性能高、存储量大图关系数据关系欺诈场景...,多写文章 请教高手 项目中成长 保持敬畏 坚持 附上HBase多模式的机遇与挑战PPT: ?
当我们想整合hadoop,hbase,hive,zookeeper的时候,如果刚入门,可能认为这是比较简单的问题。但是当你自己真正想整合的时候,却会遇到很多的问题。...1.hadoop与hbase哪些版本兼容?2.hadoop与hive哪些版本兼容?3.hbase与hive哪些版本兼容?4.hbase与zookeeper哪些版本兼容?...第一个问题,hadoop与hbase哪些版本兼容。 这里的每一个问题,当然我们需要引用官网的内容。 ? 上面便是对照表,那么有了这个对照表,还是不行的。为什么因为你还是没有找到源头。...首先,进入下面网址http://hbase.apache.org/book.html#arch.overview,进入之后,我们同样需要会使用浏览器的查找功能,这样能让我们很快的定位。...1 "S" = supported 这时候你就能找到hbase与hadoop的兼容信息了。
一.迁移过程遇到问题以及解决 客户HBase版本:Version 0.94.15 腾讯大数据套件HBase版本:Version 1.2.1 客户私有云系统版本(测试):tlinux1.2 遇到的问题以及解决过程如下...0.9.4的版本这个文件位于HBase表在hdfs上表目录的根目录下,而1.2.1的这个文件位于HBase表在hdfs上表目录的根目录下的....经过look查代码发现这个字段在新版本已经废弃,但客户的老集群是版本需要这个字段,通过import的方法无法正常写入、通过步骤6)的暴力迁移成功后(暴力迁移成功兼容了这个字段),查看表的desc信息如下...结果依然没有数据写入,可以断定这个参数ENCODE_ON_DISK在HBase1.2.1中完全废弃,新版本采用了一个整字段来包裹这个信息。...HBase数据跨集群(版本差异,网络不通)迁移方法。
前言 cuda版本最新是10.0。 但目前最适合我们的则是9.2或者9.1。 如果我们因为某些原因想同时使用两个版本的话,应该怎么样呢? 很简单!一起按步骤来吧。...,我们唯一需要注意的是,之前已经安装过一个版本,继续安装新版本的时候,我们的设置选择需要稍微修改一下: Install NVIDIA Accelerated Graphics Driver for Linux-x86...# 这个看你自己,看当前是想用现在按照的cuda版本还是之前已经安装的cuda版本,这里我选择使用之前的cuda版本 (y)es/(n)o/(q)uit: n ---------------------...只有cuda-9.2及以上才支持,那么就有两种解决方法: 安装最新的cuda-9.2 切换回gcc-5 其实切换gcc版本和切换cuda版本都是类似的,我们的系统同样可以安装多个gcc版本,比如我的系统中就存在多个...gcc版本,在安装新版本的gcc后并不会删除旧版本,因此我们可以随时切换gcc: cd /usr/bin prototype@prototype-X299-UD4-Pro:/usr/bin$ gcc
工具用途: 适用于PC同时安装了多个Halcon版本又需要同时使用的情形,版本3.x,手动配置Halcon安装路径,即可自动识别!...适用操作系统:Win7/Win8/Win10 x86以及x64平台 适用Halcon版本:Halcon10及其以上版本(含Progress/Steady) HALCON如何安装: 直接安装多个版本,然后会提示有旧版本存在....NET Framework版本:4.6.2 最新版本: Ver3.0.11 【每月提前发布试用License】 ?...; 2.优化参数保存后实时更新主界面切换标志按钮; 功能: 1.适用于多Halcon版本同时使用的情况; 2.自动更新每月试用License,无需手动干预; 3.带自动修复运行环境(runtime)...,你所指定的路径无法找到对应的HALCON版本,请检查版本是否对应 出现在参数设置界面,指定的路径找到的版本信息无法和当前对应的版本索引对应即可提示该错误!
NodeJS 多版本管理 背景 随着前端的快速发展,作为前端开发人员,工作中研发维护不同 NodeJS版本 的项目,是相对普遍的,那么开发机器上只有一个版本的NodeJS是无法满足的,通常的做法都是 切换环境变量...今天我们来介绍一款,NodeJS 版本管理工具 。...nvm 是一款NodeJS版本管理工具,可 方便的安装、切换不同版本的NodeJS 安装步骤 下载安装包 https://github.com/coreybutler/nvm-windows/releases...nvm current: 显示当前版本 nvm install [arch]: 该可以是node.js版本或最新稳定版本latest。...nvm list [available]: 列出已经安装的node.js版本。可选的available,显示可下载版本的部分列表。这个命令可以简写为nvm ls [available]。
Go版本 跟其他编程语言一样,go的项目也会有对版本的要求.所以这个时候我们就需要进行对go的版本进行管理....管理go版本的方式比较多,这里介绍一种比较简单的方式 – g g的方式 从g的 github 源码及介绍中,可以大概了解到进行版本控制的方法....一般通过ls-remote来获取远程的所有版本.想要过滤其他版本,只获取稳定版可以使用一下命令 1 2 3 ❯ g ls-remote stable * 1.14.9 1.15.2 显示已安装的版本...g ls 安装命令 g install 1.15.2 卸载命令 g uninstall 1.15.2 切换版本 g use 1.15.2 清除下载的源码包 g clean 注意事项 g作为独立管理go...版本的存在,不能识别其他方式安装的go,并且安装后会在 g 的目录下.
如果你是一个 Golang 的用户,那么你大概率会遇到管理和维护 Golang 版本的诉求,如果你恰好同时需要开发调试两个不同版本的项目,在不考虑强制跳版本的情况下,你或许就需要使用“Golang 版本管理工具...基于 Golang 的版本管理工具:voidint/g 最初安装 gvm 后,总觉得工具不够“简洁”,所以我基于 https://github.com/voidint/g/ 调整了一些细节,重新编译了一个版本自用...所以,如果你的需求比较简单,期望使用一个工具,能够从网上快速的下载 Golang 的预编译版本的 Runtime,并且不需要同时运行多个版本,那么使用 voidint/g 就可以满足你的需求了,但是如果你的需求是需要多个版本同时运行...,出现无法管理语言版本的问题。...官方维护了自 1.5 以来到 1.17 的所有版本的更新软件包。
3:hbase集群中的角色: (1)、一个或者多个主节点,Hmaster; (2)、多个从节点,HregionServer; 1:由于HBase依赖hdfs,所以下载的时候注意HBase的版本...: 注:我使用的是hadoop2.4版本的,所以HBase选择支持2版本的:hbase-0.96.2-hadoop2-bin.tar.gz 2:上传hbase安装包,上传到一台机器即可: 建议:...5:现在可以启动HBase了,不过启动HBase之前需要将HDFS启动起来(hdfs启动过程省略,之前启动好多次了),因为HBase在hdfs下面创建一个目录叫做hbase,自己配置的: 注:如果浏览器访问不了...现在呢,一个HBase已经启动起来了,如果想启动两个HBase,第一个HBase启动不会自动启动第二个HBase,所以现在手动启动第二个HBase,操作如下所示: 注:为保证集群的可靠性,要启动多个...8:使用HBase的命令行客户端操作一下HBase(测试使用,真实环境使用Java操作): 1 进入hbase的shell:hbase shell 2 退出hbase的shell:quit 3 页面
Python 安装包去官网自行下载: https://www.python.org/downloads/mac-osx/ Mac os 自带python, 但我记得是python2.7版本 在选择安装包时候避免使用太新的版本.../3.3/bin/python3.3' alias python=python3 环境生效: $source ~/.bash_profile $source ~/.bashrc 查看当前python版本...2.7.11rc1 不同版本安装路径: Mac系统自带Python2.7,而我们安装Python3的时候,可以通过brew命令安装或者官网的pkg安装。...2020年就停止维护了, 从此2.7 版本就退休了,所以3.X是一个不错的选择. ...python的优雅,简单,明确是其他语言无法比拟的,选择自己需要版本, 给日后工作提供了基础保障.
今天遇到一个问题:下载了一个vue项目,一直卡在npm install阶段,折腾了半天,发现是版本太高了,需要降低一下版本,但是其他项目需要高版本的,这不就冲突了;找到了一个node多版本控制的软件nvm...;安装:下载地址:在这里下载一下 nvm-setup.zip 之后解压出来一个 nvm-setup.exe 文件,双击安装;在安装过程中,如果提示已安装版本,可以直接删除安装目录即可;安装完成后,打开...cmd 执行命令nvm -v 测试是否成功;查看可安装版本 ,执行命令:nvm list available图片5.安装指定版本:nvm install 16.14.0 =>安装nodejs 16.14.0nvm
install /usr/bin/python python /usr/bin/python3 150 然后再终端输入: Python python 1 python 如果无误,此时python版本应该切换到默认的...sudo update-alternatives --config python 1 sudo update-alternatives --config python 然后选者你需要的python版本...,输入序号回车即可 因为系统很多程序依赖于python2,如需要升级系统或者安装系统更新的时候,建议先切换到系统的默认版本python2否则可能出现依赖无法安装问题。
多版本切换python Python 安装包去官网自行下载: https://www.python.org/downloads/mac-osx/ Mac os 自带python, 但我记得是python2.7...版本 建议: 在选择安装包时候避免使用太新的版本....2.7.11rc1 不同版本安装路径: Mac系统自带Python2.7,而我们安装Python3的时候,可以通过brew命令安装或者官网的pkg安装。...2020年就停止维护了, 从此2.7 版本就退休了,所以3.X是一个不错的选择....python的优雅,简单,明确是其他语言无法比拟的,选择自己需要版本, 给日后工作提供了基础保障.
所以Python的多版本共存有必要系统的说一下了。...多版本共存环境变量的问题 现在我装了2个Python,一个Python2.7.15,一个Python3.6.4(anaconda3 5.1.0)两个Python都是64bit,那么如果配置了环境变量就会有一个问题...我给一个建议,统一改成原文件名版本号.exe,就比如我可以把Python2里面的python.exe改成python2.7.15.exe就行了,命令提示符一定要记住输入修改后的文件名!
领取专属 10元无门槛券
手把手带您无忧上云