1、用sqoop 从mysql数据库导入数据到hbase时:

可以用    sqoop list-databases --connect jdbc:mysql://192.168.1.152:3306/ --username sqoop --password sqoop      测试是否可以连接到mysql数据库

2、hbase 命令时,无法删除打错的命令,解决办法:option——session options——Terminal——Enulation——选择Linux。       可以按住Ctrl +回车键删除

3、CRT 修改字体大小:option——session options——Terminal——Appearance——Front (修改背景颜色是current color scheme)

4、sqoop导入数据从mysql到hbase时,mysql中的数据类型可以使基本数据类型,不能是二进制类型的,导入hbase后,都以字节数组 存储

5、创建一个列簇压缩格式为snappy的表:  create 'CarData', { NAME => 'car', COMPRESSION => 'SNAPPY' }

6、如果修改表压缩格式为snappy:

disable 'test'

alter 'test', NAME => 'f', COMPRESSION => 'snappy'       

NAME即column family,列族。HBase修改压缩格式,需要一个列族一个列族的修改。而且这个地方要小心,别将列族名字写错,或者大小写错误。因为这个地方任何错误,都会创建一个新的列族,且压缩格式为snappy。当然,假如你还是不小心创建了一个新列族的话,可以通过以下方式删除:

alter 'test', {NAME=>'f', METHOD=>'delete'}

enable 'test'

major_compact 'test'

describe 该表,验证是否生效

7、hbase 过滤时:

scan.setTimeRange()      方法是左闭右开,根据数据的入库时间过滤

8、spark 从hbase 根据列值过滤器过滤出数据形成RDD:

   val conf = new SparkConf().setAppName("daycount")
// .setMaster("local")
val sc = new SparkContext(conf)
val hbaseConf = HBaseConfiguration.create()
val tablename = " "
val sca=new Scan()
val filter1=new SingleColumnValueFilter(Bytes.toBytes("gps"),
Bytes.toBytes("GPSTime"),
CompareOp.LESS,
new BinaryComparator(Bytes.toBytes(getTodayZero_time)))
filter1.setFilterIfMissing(true)
val filter2=new SingleColumnValueFilter(Bytes.toBytes("gps"),
Bytes.toBytes("GPSTime"),
CompareOp.GREATER_OR_EQUAL,
new BinaryComparator(Bytes.toBytes(getYesTZero_time)))
filter2.setFilterIfMissing(true)
val filterArr=new util.ArrayList[Filter]()
filterArr.add(filter1)
filterArr.add(filter2)
val filterlist=new FilterList(FilterList.Operator.MUST_PASS_ALL,filterArr)
sca.setFilter(filterlist)
hbaseConf.set("hbase.zookeeper.quorum", " ")
hbaseConf.set("hbase.zookeeper.property.clientPort", "2181")
// hbaseConf.set("hbase.zookeep.znode.parent", "/hbase")
// hbaseConf.set("hbase.master", " ")
hbaseConf.set(TableInputFormat.INPUT_TABLE, tablename)
hbaseConf.set(TableInputFormat.SCAN,convertScanToString(sca))
val hBaseRDD = sc.newAPIHadoopRDD(hbaseConf, classOf[TableInputFormat],
classOf[org.apache.hadoop.hbase.io.ImmutableBytesWritable],
classOf[org.apache.hadoop.hbase.client.Result])

  

Hbase(补充)的更多相关文章

  1. HBase+Phoenix整合入门--集群搭建

    环境:CentOS 6.6 64位    hbase 1.1.15  phoenix-4.7.0-HBase-1.1 一.前置环境: 已经安装配置好Hadoop 2.6和jdk 1.7 二.安装hba ...

  2. HBASE概念补充

    HBASE概念补充 HBase的工作方式: hbase中的表在行的方向上分隔为多个HRegion,分散在不同的RegionServer中 这样做的目的是在查询时可以将工作量分布到多个RegionSer ...

  3. Hbase 学习(二)补充 自定义filter

    本来这个内容是不单独讲的,但是因为上一个页面太大,导致Live Writer死机了,不能继续编辑了,所以就放弃了 这里要讲的是自定义filter,从FilterBase继承 public class ...

  4. HBase 实战(2)--时间序列检索和面检索的应用场景实战

    前言: 作为Hadoop生态系统中重要的一员, HBase作为分布式列式存储, 在线实时处理的特性, 备受瞩目, 将来能在很多应用场景, 取代传统关系型数据库的江湖地位. 本篇主要讲述面向时间序列/面 ...

  5. HBase配置性能调优(转)

    因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果.所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正. 配置优化 zo ...

  6. HBase读延迟的12种优化套路

    任何系统都会有各种各样的问题,有些是系统本身设计问题,有些却是使用姿势问题.HBase也一样,在真实生产线上大家或多或少都会遇到很多问题,有些是HBase还需要完善的,有些是我们确实对它了解太少.总结 ...

  7. HBase 高性能获取数据(多线程批量式解决办法) + MySQL和HBase性能测试比较

    摘要:   在前篇博客里已经讲述了通过一个自定义 HBase Filter来获取数据的办法,在末尾指出此办法的性能是不能满足应用要求的,很显然对于如此成熟的HBase来说,高性能获取数据应该不是问题. ...

  8. HBase性能调优

    因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果.所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正. 配置优化 zo ...

  9. hadoop、hbase、hive、zookeeper版本对应关系

    本文引用自:http://www.aboutyun.com/blog-61-62.html 最新版本: hadoop和hbase版本对应关系: Hbase    Hadoop 0.92.0 1.0.0 ...

随机推荐

  1. 详细讲解 A/B 测试关键步骤,快来检查下还有哪些疏漏的知识点

    作为一种对照实验方法,A/B 测试通过比较两个 (或多个) 不同版本之间的差异来验证假设是否正确.该方法将特定测试组从实验其余部分中独立出来,从而得出可靠结果.在被测人不知情且测试场景真实的情况下,A ...

  2. selenium+python 搭建自动化环境

    一.以搭建windows平台为例 准备工具如下: 1)下载Python 2)安装,配置环境变量 3)安装selenium,通过pip安装,命令如下:  pip install selenium 方式二 ...

  3. openstack golang sdk使用

    1. go get github.com/gophercloud/gophercloud import ( "github.com/gophercloud/gophercloud" ...

  4. 关于Amazon.com Seller 网络以及IP地址更换 官方回答

    Greetings from Amazon Seller Support, I understand your concern that there will be a change of IP ad ...

  5. Appstate的几种状态及在android 和ios触发

    AppState能告诉你当前应用是在前台还是在后台,或者处于切换应用的状态,并且能在状态变化的时候通知你. AppState 通常在处理推送通知的时候用来决定内容和对应的行为 一: App State ...

  6. 15 分钟用 ML 破解一个验证码系统

    人人都恨验证码——那些恼人的图片,显示着你在登陆某网站前得输入的文本.设计验证码的目的是,通过验证你是真实的人来避免电脑自动填充表格.但是随着深度学习和计算机视觉的兴起,现在验证码常常易被攻破. 我拜 ...

  7. ES6的新特性(18)——async 函数

    async 函数 含义 ES2017 标准引入了 async 函数,使得异步操作变得更加方便. async 函数是什么?一句话,它就是 Generator 函数的语法糖. 前文有一个 Generato ...

  8. AngularJS学习之数据绑定

    既然AngularJS是以数据作为驱动的MVC框架,在上一篇文章中,也介绍了AngularJS如何实现MVC模式的,所有模型里面的数据,都必须经过控制器,才能展示到视图中. 什么是数据绑定 首先来回忆 ...

  9. 《Linux内核与分析》第八周

    by 20135130王川东 一.进程切换关键代码switch-to分析     1.进程调度与进程调度时机分析 1)不同类型的进程有不同的调度要求 分类:I/0-bound:频繁的进行I/o 通常会 ...

  10. 关于算法的时间复杂度O(f(n))

    (一)算法时间复杂度定义: 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级.算法的时间复杂度,也就是算法的时间量度,记作:T(n ...