海量数据存储组件Hbase
hdfs
hbase
NoSQL数据库 支持海量数据的增删改查 基于Rowkey查询效率特别高
kudu
介于hdfs和hbase之间
hbase依赖hadoop+zookeeper,同时整合框架phoenix(擅长读写),hive(分析数据)
k,v 储存结构
稀疏的(为空的不存储)、分布式的、持久地、多维排序map-》映射:行键、列键、时间戳,未解释的(序列化的,存储效率高)
数据存储整体有序 列 、 列族 、 rowkey按字典序排序,然后将一个“表格”切分出一个Region,对应有rowkey的范围,每个Region的rowkey范围都不重叠。竖行切分store,按列族为单位进行。

使用timestamp实现数据修改,version确认版本,操作类型type
namespace=database
cell唯一确定的单元
架构
master通过zookeeper管理region server,region server向zookeeper注册自己的信息
操作表格的命令是有master进行的,修改和删除
loadBalancer均衡负载器
预写日志处理器:容错机制
master backup server 高可用信息
hbase shell 常用命令: list_namespace
DDL:
create_namespace 'bigdata'
create 't1', {NAME=>'F1',VERSION=>5}
表名 列族 名 指定维护的时间戳版本数,例子中的版本数为5
describe 't1'
alter 't1' ,'delete'=>'info1' 删除列族
删除表: disable 't1' drop 't1'
DML:
插入数据: put 'bigdata:t1' ,'r1' ,'c1' ,'value' ts1
'库名 :表名' rowkey 列族:列名 列值 时间戳
读取数据:
get 一行数据 和scan 多行数据
scan 'bigdata:t1' {startrow=>'',stoprow=>''}
前开后闭
删除数据:
delete 删除一行数据,一个cell。 默认是删除给定时间戳之前的第一个遇到的时间戳的数据。实际是在插入一条delete记录。
delete all 删除所有版本的数据,即多个cell。
API
涉及java建造者 Builder模式: 命名空间建造者=》设计师
集成phoenix 针对hbase上面还没有数据,需要写入数据 不适合复杂SQL查询
开源hbase的sql皮肤 标准jdbc API 自带sql优化器 如谓词下推
phoenix的primarykey对应hbase的rowkey 官网查询语法,与sql类似
!table


已经存在于hbase的表,phoenix需要进行视图映射或表映射才能使用。
create view drop view 只能看,无法操作数据
表映射可以修改删除数据

phoenix二级索引-将 全表扫描优化为范围扫描
默认 全局索引:专门创建一张索引表,给非rowkey列去做rowkey排序(如字典序)。写的时候需要写两张表,故适合多读少写的场景。

explain 查看执行计划

全局索引的局限,不能包含非索引字段
全局索引的补充:包含索引

本地索引

hbase参数优化:
zookeeper timeout优化
rpc监听数量 :put、get


多个写缓存加起来大小大于40%
JVM调优

并发垃圾回收:一边读写一边垃圾回收


集成hive 针对hbase上面已经存好数据,需要分析数据
hbase的数据其实也是存储在hdfs上面的


HQL创建hbase表

load data 只是将数据上传到文件系统指定目录中,而insert into 才能把格式对应上,因为它要跑商计算程序(如mr);

rowkey设计原则
TSDB 将时间戳加入rowkey中,增量抽取数据变化的部分
目的是让数据均匀地分布在region中,3中方法:

相关文章:
海量数据存储组件Hbase
hdfs hbase NoSQL数据库 支持海量数据的增删改查 基于Rowkey查询效率特别高 kudu 介于hdfs和hbase之间 hbase依赖hadoopzookeeper,同时整合框架phoenix(擅长读写),hive(分析数据) k,v 储存结构 稀疏的(为空的不存…...
(一)基于Spring Reactor框架响应式异步编程|道法术器
在执行程序时: 通常为了提供性能,处理器和编译器常常会对指令进行重排序。 从排序分为编译器重排序和处理器重排序两种 * (1)编译器重排序: 编译器保证不改变单线程执行结构的前提下,可以调整多线程语句执行顺序; * (2)处理器重排序: 如果不存在数据依赖…...
Vue3 让localstorage变响应式
Hook使用方式: import {useLocalStore} from "../js/hooks"const aauseLocalStore("aa",1) 需求一: 通过window.localStorage.setItem可以更改本地存储是,还可以更新aa的值 window.localStorage.setItem("aa&quo…...
【深度学习】InST,Inversion-Based Style Transfer with Diffusion Models,论文,风格迁移,实战
代码:https://github.com/zyxElsa/InST 论文:https://arxiv.org/abs/2211.13203 文章目录 AbstractIntroductionRelated WorkImage style transferText-to-image synthesisInversion of diffusion models MethodOverview ExperimentsComparison with Sty…...
【CSS】3D卡片效果
效果 index.html <!DOCTYPE html> <html><head><title> Document </title><link type"text/css" rel"styleSheet" href"index.css" /></head><body><div class"card"><img…...
OrderApplication
目录 1 OrderApplication 2 /// 查询订单 2.1.1 //补充商品单位 2.1.2 //补充门店名称 2.1.3 //补充门店名称 2.1.4 //订单售后 2.1.5 //订单项售后 OrderApplication...
如何在保健品行业运用IPD?
保健品是指能调节机体功能,不以治疗为目的,并且对人体不产生任何急性、亚急性或者慢性危害的产品。保健品是食品的一个种类,具有一般食品的共性,其含有一定量的功效成分,能调节人体的机能,具有特定的功效&a…...
Flink系列之:动态发现新增分区
Flink系列之:动态发现新增分区 一、动态发现新增分区二、Flink SQL动态发现新增分区三、Flink API动态发现新增分区 为了在不重新启动 Flink 作业的情况下处理主题扩展或主题创建等场景,可以将 Kafka 源配置为在提供的主题分区订阅模式下定期发现新分区。…...
eclipse版本与jdk版本对应关系
官网:Eclipse/Installation - Eclipsepedia eclipse历史版本(2007-):Older Versions Of Eclipse - Eclipsepedia Eclipse Packaging Project (EPP) Releases | Eclipse Packages...
File类的学习
java.io.File类 文件和目录路径的抽象表达形式是一个与操作系统无关的类,任何一个操作系统都可以使用这个类中的方法 File.pathSeparator 文件路径分隔符,windows是分号,linux是: File.separator 文件名分隔符,window…...
Linux 操作系统 Red Hat Enterprise Linux 安装教程
文章目录 笔者的操作环境: 制作环境: Win32 Disk Imager 1.0.0 Windows 10 教育版 ISO: Red Hat Enterprise Linux 9.2 x86_64 Red Hat Enterprise Linux(RHEL)是一种 Linux 操作系统。安装此操作系统的难题在于&a…...
关于拓扑排序
又重新学了一下拓扑排序,这次发现就十分简单了,拓扑排序的步骤 1.他必须是一个有向无环图,起点我们就是入度为0的点 2.我们首先要输出的就是入度为0的点,然后依次删除这些点连向的点,使这些点的入度-1,如果…...
【C++】开源:Boost库常用组件配置使用
😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍Boost库常用组件配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,…...
用python通过http实现文件传输,分为发送端和接收端
要使用Python通过HTTP实现文件传输,可以使用Python的 requests 库来发送和接收HTTP请求。以下是一个示例代码,其中包括发送端和接收端的实现。 发送端: import requestsdef send_file(file_path, url):with open(file_path, rb) as file:re…...
数据结构--图的遍历 DFS
数据结构–图的遍历 DFS 树的深度优先遍历 //树的先根遍历 void PreOrder(TreeNode *R) {if(R ! NULL){visit(R); //访问根节点while(R还有下一个子树T)PreOrder(T);//先根遍历下一棵子树} }图的深度优先遍历 bool visited [MAX_VERTEX_NUM]; //访问标记数组 void DFS(Grap…...
SpringBoot集成MyBatisPlus+MySQL(超详细)
前言 查看此文章前强烈建议先看这篇文章:Java江湖路 | 专栏目录 该文章纪录的是SpringBoot快速集成MyBatis Plus,每一步都有记录,争取每一位看该文章的小伙伴都能操作成功。达到自己想要的效果~ 文章目录 前言1、什么是MyBatisPlus2、Spring…...
一边是计算机就业哀鸿遍野,一边是高考生疯狂涌向计算机专业
在张雪峰推荐的几大专业里,计算机专业是其中之一。近几年,计算机专业报考热度不减,但就业前景却令人堪忧,互联网裁员接二连三,许多码农找不到工作。 一位网友感叹:一边是计算机就业哀鸿遍野,一…...
解决外部主机无法访问Docker容器的方法
使用Docker启动了一个tomcat容器,并做了端口映射,但是外部主机仍然无法访问。 编辑centos上的配置文件 vi /etc/sysctl.conf net.ipv4.ip_forward1 systemctl restart network保存以后即可生效,这个配置是开启linux的ip数据包转发功能&#…...
IDEA中修改类头的文档注释信息
IDEA中修改类头的文档注释信息 选择File--Settings--Editor--File and Code Templates--Includes,可以把文档注释写成这种的 /**author: Arbicoralcreate: ${YEAR}-${MONTH}-${DAY} ${TIME}Description: */这样回看就可以很清楚的看到自己创建脚本的时间ÿ…...
建模教程:如何利用3ds Max 和 After Effects 实现多通道渲染和后期合成
推荐: NSDT场景编辑器 助你快速搭建可二次开发的3D应用场景 1. 创建基本场景 步骤 1 打开 3ds Max。 打开 3ds Max。 步骤 2 我做了一个简单的场景。我放了三个 彼此之间有一定距离的物体。 制作对象 步骤 3 按 Ctrl-C 键 在透视视图中创建摄影机。 创建相机 …...
OpenJSCAD.org扩展开发完全手册:从零开始创建自定义IO格式
OpenJSCAD.org扩展开发完全手册:从零开始创建自定义IO格式 【免费下载链接】OpenJSCAD.org JSCAD is an open source set of modular, browser and command line tools for creating parametric 2D and 3D designs with JavaScript code. It provides a quick, prec…...
企业级OA系统高可用方案:泛微ecology+Nginx负载均衡最佳实践
企业级OA系统高可用架构设计与实践:泛微ecologyNginxResin全栈解决方案 在数字化转型浪潮中,办公自动化系统(OA)已成为企业核心IT基础设施。作为国内领先的协同管理平台,泛微ecology承载着企业关键业务流程,其稳定性直接影响组织运…...
如何快速上手tuic:从零开始的安装与配置教程
如何快速上手tuic:从零开始的安装与配置教程 【免费下载链接】tuic 项目地址: https://gitcode.com/gh_mirrors/tu/tuic tuic是一款高效的GitHub加速工具,能够帮助用户解决GitHub访问速度慢、连接不稳定等问题,让开发者更流畅地获取G…...
Emmc系列(二)--------协议解析与实战应用
1. Emmc协议基础解析 Emmc协议作为嵌入式存储领域的核心标准,其重要性不言而喻。简单来说,它就像存储设备与主机之间的"普通话",规定了双方如何高效沟通。我在实际项目中遇到过不少因为协议理解不到位导致的通信故障,今…...
3步解锁跨设备游戏自由:Sunshine串流技术重构娱乐体验
3步解锁跨设备游戏自由:Sunshine串流技术重构娱乐体验 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 在这个设备爆炸的时代,我们却被硬件束缚得越来越紧。…...
ai赋能centos7开发,用快马平台智能生成优化配置和部署流水线
最近在折腾CentOS7的开发环境配置,发现手动搭建Python/Java环境、调试服务编排特别耗时。后来尝试用InsCode(快马)平台的AI辅助功能,效率直接翻倍。分享下我的实践过程: 环境配置方案生成 输入"CentOS7 Python3.9Java11开发环境"后…...
Simulink新手必看:从零搭建四轴飞行器仿真模型(附完整代码)
Simulink实战:四轴飞行器仿真建模全流程解析 四轴飞行器作为无人机领域的经典构型,其控制系统的设计与验证一直是工程师和科研人员的重点课题。对于刚接触Simulink的开发者而言,如何将复杂的飞行动力学转化为可视化的仿真模型往往令人望而生畏…...
3步解锁魔兽争霸III最佳体验:WarcraftHelper全方位优化工具指南
3步解锁魔兽争霸III最佳体验:WarcraftHelper全方位优化工具指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper WarcraftHelper是一款专为…...
鸿蒙 ArkTS 高级样式复用:@Extend 装饰器完全解析(比 @Styles 更强大)
🔥前言:在上一篇文章《鸿蒙 ArkTS 样式复用:Styles 装饰器从入门到实战》中,我们学习了使用 Styles 实现基础样式复用。 但 Styles 不支持传参、不能使用组件专有属性,在复杂 UI 场景下能力有限。 📌 本文…...
EasyAnimateV5-7b-zh-InP效果对比:不同Sampling Method(Flow/Euler)画质差异
EasyAnimateV5-7b-zh-InP效果对比:不同Sampling Method(Flow/Euler)画质差异 你是不是也遇到过这样的困惑:用同一个图生视频模型,同样的图片和提示词,只是换了个采样方法,出来的视频效果就天差…...
