04.hadoop上课笔记之java编程和hbase

1.win查看服务

  netstat -an #linux也有

#R数学建模语言 SCALAR

2.java连接注意事项,代码要设置用户

   System.setProperty("HADOOP_USER_NAME", "hadoop");

3.伪分布式的好处(不用管分布式细节,直接连接一台机器…,适合用于学习)

4.官方文档 查看类(static | new)

hadoop.org —>java API

5.单点故障:一个节点出错全部不可用

6.HBase hadoop database(像nosql的数据库,用列和表,分布式的数据库)

与hdfs的关系:HDFS是Hbase运行的底层文件系统

  1. RegionServer,理解为数据节点,存储数据的。
  2. region 向客户端提供数据和管理
  3. master 负载均衡和管理region(失效把数据移动到别处) 失效了 zookeeper也可以访问
  4. zookeeper 帮助master高可用 帮master监控regionserver 选master 找数据

#其他知识 #信息检索课(怎么查信息)
图hbase #元数据的表名
hbase:meta

在这里插入图片描述

7.安装hbase

  1. 解压
  2. 改配置文件
  3. 启动hadoop
  4. start.sh

8.habse应用场景

1.搜索条件简单,数据量大
2.不强调表之间的关系
3.列存储(直接在列查,不全表扫描,mysql需要索引才可以) 还可以列压缩
如: select age时直接查age列,而不是每个行扫描完扫描列是否满足条件
age 22 23 24
name jamse aa bb

 myql事务 A原子性 atomicity C(consistency)一致性 I独立性(isolation) D (durability)持久性
 mysql where 1=1是关于关系代数的理论, 1=1代表匹配的结果 要不要显示

9.hbash添加语句(不需要多表连接)

   #查看hbase信息 http://192.168.202.103:16010/
    create "tableName","columnName","columnName"
    #查看帮助,必须要"" 
     help "create"
    #看结构
      desc "tableName"
   #hbase  http://192.168.202.103:16030/rs-status
  #插入一个数据必须需要id 列族:更小字段
     put 'student_xxx','0001','stuinfo:name','tom' 
  #select
    scan 'student_xxx'
   #update
    put 'student_xxx','0001','stuinfo:name','tomy'
    #id可以不写字段
   put 'student_xxx','07112001','info:name','Benie',3 #修改版本
   #修改列的版本,改一个列对象的版本
    alter 'student_xxx',{NAME=>'stuinfo',VERSIONS=>5}
   #增加一个列
     alter 'student_xxx','grades'
   #删除列
      alter 'student_xxx','delete'=>'grades'
   #删除写错的数据 表 id 列:字段(没有写id字段,hbase会自动生成一个),所    #以可以省字段名
      delete 'student_xxx','07112002','info:name'
  #hbase不会自己添加版本,1个版本可能有多个数据,
  #得到版本为3的
   get 'student_xxx','0001',{COLUMN=>'stuinfo:name',VERSIONS=>3}
    get 'student_xxx','0001'
  #先禁用后删除table
    disable   xxx
   drop       xxx
    #查看表是否存在
     exists xxx
     #查看列字段的数据 
      scan 'student_xxx',{COLUMNS=>'info:name'}
   #查看多个字段的数据,不用id
   scan 'student_xxx',{COLUMNS=>['info:name','relationship:father']}
  #指定id数据区间,不包含最后一行
    scan 'student_xxx',{STARTROW=>'07112001',ENDROW=>'07112002'}
   #限制条数
    scan 'student_xxx',{LIMIT=>2}
   #删除版本为3 的
      delete 'student_xxx','07112001','info:name',3
   #删除整行
      deleteall 'student_xxx','07112003'
   #删除整表
   truncate  'student_xxx'
    #mysql数据导入hbase

#语法少了错了没有提示 list 或ctrl+c退出 #数据的属性在列中 VERSION所有列可以保存的版本数,TTL 是秒数
到期删除(密码,验证码)
#IN_MEMORY是否加载到内存

10.理论(毕业设计)

  1. region(按行键[id]划分,最初有1个,一般1g)(读列速度快,因为放在不同机器)
    1. 是hbase负载均衡(分开处理资源)的最小单元
    2. 一个region对应多个store(存列,和行的键)包含memstore(先写入内存)和filestore(内存写入磁盘)
    flush ‘columns’ #需要写这个才能写入磁盘,如果不写默认需要1个小时才能写入
  2. 写入相同文件只多一个文件,可以记录历史记录,存在内存为了排序,放入磁盘
    #Hlog(wals)避免内存数据丢失,在写入内存之前备份,只有1个,不能大于1000个region,
    #查看日志文件 /usr/local/hbase/hbase-tmp/logs/xxxregion-server

11.hbase集群 复制到别人的机器

   scp 
  #会报错,需要改配置文件,连接java,要改host配置文件

12.Hbase的特点

① 半结构化或非结构化数据(变化的数据)
② 记录非常稀疏(没有表结构,null不占空间)
③ 多版本数据(可能要用以前写入的数据)
④ 超大数据量(自动水平切分)

12.Hbase特点(没有多表连接,直接是一个表,因为用列存储)

  1. 大:一个表可以有数十亿行,上百万列;

  2. 无模式:每行都有一个可排序的主键和任意多的列,列可以根据需要动态的增加,同一张表中不同的行可以有截然不同的列;

  3. 面向列:面向列(族)的存储和权限控制,列(族)独立检索;

  4. 稀疏:空(null)列并不占用存储空间

  5. 数据多版本:每个单元中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳;

  6. 数据类型单一:Hbase中的数据都是字符串,没有类型 !!!

10.HBase和hdfs区别

  1. hbase只有字符串类型
  2. hbase一张表,传统要考虑多表关系
  3. 存储模式:Hbase是基于列存储的,每列由每个文件存储
  4. 数据维护:Hbase的更新实际上是插入了新的数据;传统数据库只是替换和修改
  5. 可伸缩性:Hbase
  6. 事务:Hbase只可以实现单行的事务性,传统数据库是可以实现跨行的事务性。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python期末复习题库(下)——“Python”

小雅兰期末加油冲冲冲!!! 1. (单选题)下列关于文件打开模式的说法,错误的是( C )。 A. r代表以只读方式打开文件 B. w代表以只写方式打开文件 C. a代表以二进制形式打开文件 D. 模式中使用时,文件可读可写 2. (单选题)下列选项中,以追加…

webpack的使用

一、什么是webpack? webpack是一个前端构建工具,目前比较主流的构建工具,自定义的模块比较多。 二、应用场景 vue、react、angular 都可以通过webpack构建全部可供访问的页面数量不超过500个 三、安装 通过npm方式在项目根目录下执行命令…

htmlCSS-----CSS选择器(下)

目录 前言: 2.高级选择器 (1)子代选择器 (2)伪类选择器 (3)后代选择器 (4)兄弟选择器 相邻兄弟选择器 通用兄弟选择器 (5)并集选择器 &am…

【JavaSE】Java基础语法(二十六):Collection集合

文章目录 1. 数组和集合的区别2. 集合类体系结构3. Collection 集合概述和使用【应用】4. Collection集合的遍历【应用】5. 增强for循环【应用】 1. 数组和集合的区别 相同点 都是容器,可以存储多个数据不同点 数组的长度是不可变的,集合的长度是可变的 数组可以存基本数据类型…

基于Yarn搭建Flink

基于Yarn搭建Flink 1. 概述 1.1 Yarn 简介 Apache Hadoop YARN是一个资源提供程序,受到许多数据处理框架的欢迎。Flink服务被提交给 YARN 的 ResourceManager,后者再由 YARN NodeManager 管理的机器上生成容器。Flink 将其 JobManager 和 TaskManager…

python爬虫笔记

Python爬虫笔记 一. Urllib 1. 基础请求 指定url请求返回值解码返回结果的一些操作 import urllib.request as req # 定义一个url url http://www.baidu.com# 发送请求获得相应 res req.urlopen(url)# read返回字节形式的二进制数据,需要用指定编码来解码 content res.r…

vue的虚拟DOM

vue的虚拟DOM 什么是虚拟DOM 虚拟DOM提供了一个与平台无关的抽象层,将应用程序的界面表示抽象为一个虚拟的DOM树。这意味着开发人员可以使用相同的代码和逻辑来描述应用程序的用户界面,而不需要关心具体的平台实现细节。虚拟DOM允许开发人员使用一种统…

Linux命令

准备工作 安装centos7 在镜像网下载DVD.iso或者DVD.torrent(bit种子)。在VMware中配置相应的信息,并引入iso文件,以便后续安装。local中:选择语言和时区上海software中:选择安装软件的内容,可…

基于多动作深度强化学习的柔性车间调度研究(Python代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

通过location实现几秒后页面跳转

location对象属性 location对象属性 返回值location.href获取或者设置整个URLlocation.host返回主机(域名)www.baidu.comlocation.port 返回端口号,如果未写返回空字符串location.pathname返回路径location.search返回参数location.hash返回…

Apache网页与安全优化

一、Apache网页优化 在企业中,部署Apache后只采用默认的配置参数,会引发网站很多问题,换言之默认配置是针对以前较低的服务器配置的,以前的配置已经不适用当今互联网时代。为了适应企业需求,就需要考虑如何提升Apache…

遗传算法(Genetic Algorithm)

本文为阅读《遗传算法原理及应用》的笔记和心得 ISBN:7-118-02062-1 遗传算法简介 遗传算法是模拟生物在自然环境中的遗传和进化过程中而形成的一种自适应全局优化概率搜索算法 总的来说,求最优解解或近似最优解的方法主要有三种:枚举法、启…

数据库系统的结构

数据库模式基本概念 1.型与值 型:对某一类数据的结构和属性的说明。值:型的具体赋值。 2.模式和实例 模式: 数据库中全体数据的逻辑结构和特征的描述。简单来说就是数据的定义和描述。模式是元数据,数据是变化的,模…

Linux:/dev/tty、/dev/tty0 和 /dev/console 之间的区别

在Linux操作系统中,/dev/tty、/dev/tty0和/dev/console是三个特殊的设备文件,它们在终端控制和输入/输出过程中扮演着重要的角色。尽管它们看起来很相似,但实际上它们之间存在一些重要的区别。本文将详细介绍这三个设备文件之间的区别以及它们…

【C++系列P3】‘类与对象‘-三部曲——[基础知识](1/3)

前言 大家好吖,欢迎来到 YY 滴 C系列 ,热烈欢迎! 【 类与对象-三部曲】的大纲主要内容如下: 如标题所示,本章是【 类与对象-三部曲】三章中的第一章节——基础知识章节,主要内容如下: 目录 一.…

如何用Python写个网页爬取程序

如何用Python写个网页爬取程序 准备开发工具安装PythonPython安装pipPip安装爬取插件准备好网页地址代码实现 准备开发工具 额,作者用的是vscode。具体怎么安装自行百度哈,这个都不会建议就不要学爬取了。 不忍心藏着也,给你个方法吧 vsc…

计算机系统漫游

重点理解部分: 系统硬件:对硬件如处理器、存储器、I/O设备有一个基本的认识,理解它们的基本工作原理以及它们是如何协同工作的。Hello,World程序运行的过程:了解一个C程序如何从源代码到最终在计算机上运行的全过程。…

模仿抖音直播商城带货打赏功能做一个app系统

随着人们生活和互联网的高度整合,越来越多的人开始转变自身消费模式,从实体店购物逐渐转向足不出户即可享受购物快感的网上购物。许多企业看到了电子商务背后隐藏的巨大价值,想要寻找合适的开发商建立属于自己的电商直播系统,那么…

2021-06-10 51单片机,键控流水灯——中断方式

缘由https://ask.csdn.net/questions/7444779?spm1005.2025.3001.5141 #include "reg52.h" sbit K1 P1^5; sbit K2 P1^6; sbit K3 P1^7; bit kk0; void zdsz() {EAEX0IT01; } void main() {unsigned char Xd0;unsigned int ys4747,d10;zdsz();while(1){if(!ys)…

CodeForces..学习读书吧.[简单].[条件判断].[找最小值]

题目描述: 题目解读: 给定一组数,分别是 “时间 内容”,内容分为00,01,10,11四种,求能够得到11的最小时间。 解题思路: 看似00,01,10&#xff0…
最新文章