• Hbase--知识点总结3


    Hbase知识点总结:  
    hbase表中为什么列族的数量不能太多?

    因为当一个列族数据溢写的时候,其他列族也会发生数据溢写,但是其他列族中数据的数量还没有达到溢写的阈值,就会导致产生的小文件数量增多.而hbase有小文件合并操作,小文件数量增多就会导致合并次数增多,从而使io资源消耗量增多。

    hbase表结构的创建:通过增加表的数量,实现对表中字段复杂关系的解耦  

    google protocol buffer:是google公司内部的混合语言数据标准,用于rpc系统和持续数据存储系统。
    protocol buffers:是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化,很适合做数据存储或者RPC数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。

    安装protocol :  对于安装的节点没有具体环境要求
    1、解压安装  tar -zxvf protocol-2.5.0.tar.gz
    2、编译安装: 安装之前需要先安装环境  yum grouplist   (grouplist安装一个软件组)
    3、yum groupinfo “development tools”(中间有空格加双引号)
    4、yum groupinstall "development tools"
    5、安装configure文件  ./configure  (生成makefile文件)
    6、make && make install (生成可执行文件)
    7、指定规则文件 以.proto结尾的文件  
    定义proto规则文件的要求:
    package lm;   (包名称)
    message helloword (class类名称)
    {
       required int32   id = 1; (必须的属性)
       required string str =2;
       optional  int32   opt = 3 ;(可选的属性)
    }


     
    package com.wcg.hbase (包名--与项目中的包名保持一致)
    message PhoneDetail (class文件的名称)
    {
      required string dnum = 1;
      required string type = 2;
      required string length = 3;  
      required string date = 4;  //后面的这个值是一个序列号,无所谓大小,前提是不能重复
    }
    8、在根目录中新建一个文件 phone.proto
    9、编译 proto文件  
    10、查找生成的可执行文件  whereis protoc  
    11、查看protoc文件如何使用
    ./protoc --help  
    12、/usr/local/bin/protoc phone.proto --java_out=/root/  (/root/ --proto文件执行后生成java文件的路径)
    13、在java中插入数据的时候可以直接调用生成的该java文件的方法 (里面的接口都是google封装好的)
    --实现将100条数据放置到一个rowkey中  
    package com.wcg.hbase (包名--与项目中的包名保持一致)
    message PhoneDetail (class文件的名称)
    {
      required string dnum = 1;
      required string type = 2;
      required string length = 3;  
      required string date = 4;  //后面的这个值是一个序列号,无所谓大小,前提是不能重复
    }
    message dayPhoneDetail
    {
      repeated PhoneDetail dayofPhone = 1;
    }

    --HBASE和mr的整合以及用本地环境模拟mr yarn进行数据计算
    1、将hadoop的安装包的本地路径配置到windows/hadoop Map/Reduce 中
    2、在windows环境变量中配置hadoop的相关路径 ,在path路径中配置hadoop_home/bin和hadoop_home/sbin
    3、将eclipse中自带的jdk换成安装的jdk
    4、将hadoop源码导入项目中
    5、导入hadoop jar包

    hbase的优化:




















  • 相关阅读:
    springboot—spring aop 实现系统操作日志记录存储到数据库
    排名前16的Java工具类
    SpringBoot集成JWT实现token验证
    使用jQuery实现图片懒加载原理
    Spring主从数据库的配置和动态数据源切换原理
    使用Nginx过滤网络爬虫
    Java io.netty.util.ReferenceCountUtil 代码实例
    Netty系列之Netty百万级推送服务设计要点
    Java给图片和PDF文件添加水印(图片水印和文字水印)
    【TortoiseSVN】windows中连接SVN服务器的工具
  • 原文地址:https://www.cnblogs.com/wcgstudy/p/10542849.html
Copyright © 2020-2023  润新知