当前位置: 首页 > news >正文

文化馆建设网站锡盟建设工程造价管理站网站

文化馆建设网站,锡盟建设工程造价管理站网站,wordpress 文章数量,网站建设框架都有哪些文章目录HBase高手之路3—HBase的shell操作一、hbase的shell命令汇总二、需求三、表的操作1#xff0e;进入shell命令行2#xff0e;创建表3#xff0e;查看表的定义4#xff0e;列出所有的表5#xff0e;删除表1)禁用表2)启用表3)删除表四、数据的操作1#xff0e;添加数… 文章目录HBase高手之路3—HBase的shell操作一、hbase的shell命令汇总二、需求三、表的操作1进入shell命令行2创建表3查看表的定义4列出所有的表5删除表1)禁用表2)启用表3)删除表四、数据的操作1添加数据2获取查看数据1)获取一行数据2)获取单个数据3更新修改数据4删除数据1)删除指定列的数据2)删除整行数据3)清空表五、导入数据1数据文件的准备2把数据文件上次到服务器3创建表根据数据文件的定义4执行命令导入命令数据文件5查看数据六、计数操作1计数命令2MR程序计数七、扫描操作1全表扫描2限定记录数3限定列4限定rowkey八、HBase的过滤器1简介2过滤器3过滤器的用法1)比较运算符2)比较器3)比较器表达式4案例一查询指定订单id的数据1)需求2)分析3)实现5案例二查询状态为已付款的订单1)需求2)分析6案例三组合多条件过滤11需求2分析7. 案例四组合多条件过滤21需求2分析8.作业九、INCR1. 需求2. incr操作3基本使用4导入准备好的数据5获取计数器值的命令6使用incr进行累加操作修改计数器的值十、Shell管理操作1status2whoami3list4count5describe6exists7is_enabled、is_disabled8alter参考文章HBase高手之路3—HBase的shell操作 一、hbase的shell命令汇总 命令功能create创建表put插入或者更新数据get获取限定行或者列的数据scan全表扫描或扫描表并返回表的数据describe查看表的结构count统计行数delete删除指定的行或列的数据deleteall删除整个行或者列的数据truncate删除表的数据结构还在drop删除整个表包括数据 二、需求 有以下的订单数据需要将其保存在HBase中 订单id订单状态支付金额支付方式用户id操作时间商品分类001已付款189.511000012023-3-6 9:10:24手机 三、表的操作 1进入shell命令行 注意需要提前启动 ZooKeeper、hdfs、hbase集群 2创建表 命令格式 create 表名,列簇名1[,列簇名2,...]注意create要小写一个表可以有多个列簇 3查看表的定义 命令格式 describe 表名4列出所有的表 命令格式 list5删除表 1)禁用表 命令格式 disable 表名2)启用表 命令格式 enable 表名3)删除表 命令格式 drop 表名注意表处于启用状态时是无法删除的若要删除表需要先禁用表在进行删除。 四、数据的操作 1添加数据 命令格式 put 表名,rowkey行键,列簇名:列名,值依次添加其他的数据 注意如果显示中文乱码是因为hbase的shell中显示的是中文的十六进制编码要解决中文乱码需要添加选项jrubby语法格式 {属性名属性值}如果有多个属性中间用逗号格式 再次添加另一个rowkey的数据 2获取查看数据 1)获取一行数据 命令格式 get 表名,rowkey2)获取单个数据 命令格式 get 表名,rowkey,列簇名:列名3更新修改数据 命令格式 put 表名,rowkey行键,列簇名:列名,新值说明 put命令如果键值存在则修改如果不存在则添加在HBase中会自动维护表中数据的版本即时间戳每执行一次put操作都会生产一个新的时间戳 4删除数据 1)删除指定列的数据 命令格式 delete 表名,行键,列簇名:列名2)删除整行数据 命令格式 deleteall 表名,行键3)清空表 命令格式 truncate 表名五、导入数据 1数据文件的准备 2把数据文件上次到服务器 3创建表根据数据文件的定义 注意集群启动 启动ZooKeeper启动hdfs启动HBASE进入shell命令行 create ORDER_INFO ,C14执行命令导入命令数据文件 5查看数据 此时HBase的数据在HDFS上是的存储查看 六、计数操作 统计表中有多少条数据 1计数命令 语法 count 表名功能统计rowkey不同的行数 注意当数据量很大的时候这个操作是比较耗时的 2MR程序计数 当数据量很大很大的时候可以通过HBase提供的MR程序进行计数这个mr程序是 org.apache.hadoop.hbase.mapreduce.RowCounter语法格式 hbase org.apache.hadoop.hbase.mapreduce.RowCounter 表名此时需启动yarn 启动计数命令 hbase org.apache.hadoop.hbase.mapreduce.RowCounter ORDER_INFO七、扫描操作 1全表扫描 语法 scan ‘表名’,{FORMATTER‘toString’} 注意尽量避免全表扫描一张很大很大的表 2限定记录数 语法 scan ‘表名’,{FORMATTERtoString,LIMIT数字}3限定列 Rubby语法 scan ‘表名’,{FORMATTERtoString,COLUMNS[‘列簇名1:列名1’,’列簇名1:列名2’,...]}scan ORDER_INFO,{FORMATTERtoString,LIMIT3,COLUMNS[C1:CATEGORY,C1:PAY_MONEY]}4限定rowkey 语法 scan ‘表名’,{FORMATTERtoString,ROWPREFIXFILTER’rowkey一部分’}scan ORDER_INFO,{FORMATTERtoString,COLUMNS[C1:CATEGORY,C1:PAY_MONEY],ROWPREFIXFILTERe}八、HBase的过滤器 1简介 在HBase中如果要对海量的数据进行扫描查询尤其是全表扫描效率很低可以使用过滤器Filter来提高查询的效率。过滤器Filter可以根据主键、列簇、列、版本号(时间戳)等条件对数据进行查询过滤。 在HBase中使用过滤器有两种方式一种就是使用命令行基于jRubby语法的选项实现交互式查询另一种是基于HBase的JAVA API的方式进行编程开发。 官网文档https://hbase.apache.org/devapidocs/index.html 2过滤器 可以通过show_filters命令查看hbase内置的过滤器 我们来解释一下这些过滤器的用法 类型过滤器功能rowkey过滤器RowFilter实现行键字符串的比较和过滤PrefixFilterrowkey的前缀过滤器KeyOnlyFilter只对单元格的键过滤不显示值FirstKeyOnlyFilter只扫描显示相同键的第一个单元格其对应的键值会显示出来列过滤器FamilyFilter列簇过滤器QualifierFilter列限定符过滤器只显示对应列簇列名的数据ColumnPrefixFilter对列名的前缀进行限定MultipleColumnPrefixFilter对多个列名的前缀进行限定ColumnRangeFilter列名称范围的过滤器值过滤器ValueFilter值过滤器查询符合条件的键值对SingleColumnValueFilter对单个值进行过滤ColumnValueFilter列值的过滤器SingleColumnValueExcludeFilter排除匹配成功的值其他过滤器ColumnPaginationFilter列分页过滤器返回offset、limit的列PageFilter分页过滤器分页显示TimestampsFilter时间戳过滤器ColumnCountGetFilter限制每个逻辑行返回值对的个数DependentColumnFilter依赖列过滤器 3过滤器的用法 过滤器一般结合scan来使用 scan ORDER_INFO,{FORMATTERtoString,FILTERRowFilter(,binary:02602f66-adc7-40d4-8485-76b5632b5b53)}一般语法 scan ‘表名’,{FILTER”过滤器的名称(参数列表(如比较运算符,比较器))”}1)比较运算符 比较运算符是我们比较常见的。 运算符功能等于大于小于大于等于小于等于!不等于 2)比较器 比较器功能BinaryComparator匹配完整的字节数组BinaryPrefixComparator匹配字节数组的前缀BitComparator匹配比特位NullComparator匹配空值RegexStringComparator匹配正则表达式SubstringComparator匹配子字符串 3)比较器表达式 比较器表达式缩写BinaryComparatorbinary:值BinaryPrefixComparatorbinaryprefix:值BitComparatorbit:值NullComparatornullRegexStringComparatorregexstring:正则表达式SubstringComparatorsubstring:值 4案例一查询指定订单id的数据 1)需求 查询指定订单的数据订单号为“e8b3bb37-1019-4492-93c7-305177271a71”订单状态及支付方式 2)分析 因为订单id就说表的rowkey所以应该使用rowkey过滤器RowFilter 只需要两个参数 比较运算符比较器表达式binary:订单号 3)实现 scan ORDER_INFO,{FORMATTERtoString,COLUMNS[C1:STATUS,C1:PAYWAY],FILTERRowFilter(,binary:e8b3bb37-1019-4492-93c7-305177271a71)}5案例二查询状态为已付款的订单 1)需求 查询状态为已付款的订单 2)分析 因为查询状态为已付款要查询指定值所以应该使用值过滤器SingleColumnValueFilter 需要传入四个参数 列簇列名比较运算符比较器表达式 scan ORDER_INFO,{FORMATTERtoString,FILTERSingleColumnValueFilter(c1,STATUS,,binary:已付款)}注意 列簇名和列名大小写一定要写对如果列簇名和列名大小写写错并不能过滤数据但是HBase不会报错而是显示全部的数据因为HBase是无模式的 6案例三组合多条件过滤1 1需求 查询支付方式为1且支付金额大于8000的订单 2分析 此处需要使用多个过滤器共同来实现查询多个过滤器可以使用AND并且或者OR或者来组合多个过滤器完成查询使用SingleColumnValueFilter实现对应列的查询 支付方式为1的过滤器 SingleColumnValueFilter(C1, PAYWAY, , binary:1)支付金额大于8000的过滤器 SingleColumnValueFilter(C1, PAY_MONEY, , binary:8000)完整的命令 scan ORDER_INFO, {FORMATTER toString,FILTER SingleColumnValueFilter(C1, PAYWAY, , binary:1) AND SingleColumnValueFilter(C1, PAY_MONEY, , binary:8000)}注意 HBase shell中比较默认都是字符串比较所以如果是比较数值类型的会出现不准确的情况例如在字符串比较中4000是比100000大的外层必须使用双引号内层使用单引号 我们还可以加上限定列 scan ORDER_INFO, {FORMATTER toString,FILTER SingleColumnValueFilter(C1, PAYWAY, , binary:1) AND SingleColumnValueFilter(C1, PAY_MONEY, , binary:8000),COLUMNS[C1:PAYWAY,C1:PAY_MONEY]}7. 案例四组合多条件过滤2 1需求 查询类别为“维修;手机;”或者“数码;女装;”并且状态为“已付款”的订单只显示类别和状态 2分析 此处需要使用多个过滤器组合使用多个过滤器可以使用AND并且、OR或者来进行组合使用值过滤器中的SingleColumnValueFilter实现对应列值的查询 完整的命令 scan ORDER_INFO, {FORMATTER toString,FILTER (SingleColumnValueFilter(C1, CATEGORY, , binary:维修;手机;) OR SingleColumnValueFilter(C1, CATEGORY, , binary:数码;女装;)) AND SingleColumnValueFilter(C1, STATUS, , binary:已付款),COLUMNS[C1:CATEGORY,C1:STATUS]}8.作业 选择操作时间在2020-04-2512点8分到9分之间的已完成的订单只显示操作时间和状态 scan ORDER_INFO, {FORMATTER toString,FILTER SingleColumnValueFilter(C1, OPERATION_DATE, , binary:2020-04-25 12:08:00) AND SingleColumnValueFilter(C1, OPERATION_DATE, , binary:2020-04-25 12:09:00),COLUMNS[C1:OPERATION_DATE,C1:STATUS]}九、INCR incrincreament命令可以实现某个单元格的值进行原子性计数累加默认累加1 1. 需求 某新闻app应用为了统计每个新闻的每隔一段时间的访问次数将新闻数据保存在HBase中该表格的数据如下所示要求原子性的增加新闻的访问次数 新闻ID访问次数时间段rowkey00000000011200:00-01:000000000001_00:00-01:0000000000022001:00-02:000000000002_01:00-02:00 2. incr操作 语法 incr ‘表名’‘rowkey’‘列簇名列名’[累加值]说明 如果某一列要实现计数功能必须要使用incr来创建对应的列使用put创建的额列是不能实现累加的默认累加1 3基本使用 4导入准备好的数据 上传服务器 导入HBase 显示前5条数据 5获取计数器值的命令 不能使用get来获取计数器的值 语法 get_counter ‘表名’‘rowkey’‘列簇名列名’6使用incr进行累加操作修改计数器的值 十、Shell管理操作 1status 查看服务器的状态 2whoami 显示当前用户 3list 显示当前的所有的表 4count 统计表的记录数 5describe 显示表的结构信息 6exists 判断某个表是否存在 7is_enabled、is_disabled 判断某个表是否被启用或者禁用 8alter 改变表和列簇的模式 新增列簇 删除列簇 参考文章 HBASE官网文档
http://www.hkea.cn/news/14340585/

相关文章:

  • html 动漫网站wordpress表excel插件
  • 建筑网站的特点手机网站主页
  • 可以发广告的100个网站手机小说网站源码
  • 商务网站建设策划书的格式响应式网站 价格
  • 免费建设网站哪个好个人网站开发教程
  • wordpress 表单 ajaxseo外贸推广
  • 网站建设在电子商务中的作用的看法百度企业推广怎么收费
  • 上海网站建设那家好大气的个人网站
  • 网站开发 ide大连有什么好玩的地方
  • 珠海网站建设哪家权威活泼的网站
  • 域名对行业网站的作用网站备案 注意
  • 苏宁网站开发人员工资谷歌chrome安卓版
  • 网站在线咨询模块成都软件开发培训机构
  • 电子商务网站建设报价表有经验的中山网站建设
  • 个人网站备案名字重要吗如何使用ps做网站
  • 长沙制作网站公司吗神宜建设公司官网
  • 数据库网站建设多少钱网站正在升级建设中代码
  • html5技术可以制作网站吗wordpress时尚英文站
  • 公司注册查询重名南昌seo排名技术
  • 网站seo诊断技巧wordpress 自动保存 插件
  • 网站如何做单项链接网站建设 文库
  • 网站网站做维护犯罪美业拓客公司哪家好
  • 网站建设合同doc福建省建设资格管理中心网站
  • 高端网站欣赏外包是做什么的
  • 新房地产网站开发四川省建设监理管理协会网站
  • 网站用国外的服务器打不开建设营销型网站的目的
  • 山东网站建设空间网站建设合同技术开发合同
  • 郑州网站建设乛汉狮网络哪个平台可以免费发广告
  • 有没有做任务的网站吗怎样制作网页新手自学入门
  • 河北网站排名艾奇视觉网站建设