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

关于hbaseRegion和hbaseRowKey的一些处理

我遇到了什么问题?

我的habse一共有三台服务器,其中一台忙的要死,另外两台吃瓜看戏,我的业务都在其中一个服务器上,导致数据的读写瓶颈。

先说一下hbase的概况,有一个整体了解,我们再讲原因。

长话短说,hbase是列簇存储, 查询的时候需要根据rowkey进行数据的K-V检索。
为了管理数据,hbase构建了region记录当前region存储的rowkey的范围,及真实数据。
为了支持分布式,一个表会存在多个region,分布在不同的机器。

概况有了,讲一下我遇到的问题。

我司三台服务器,三条频繁使用hbase的业务线,平均一条业务线一台机器,虽然公司抠抠索索,但是这个资源也基本够用了啊!怎么导致数据写入瓶颈了呢?而且是突然不行了?

  1. 首先内部排查,突然不行了,是不是后台发版导致的。比如:上线了redis的keys,会把redis搞蹦,hbase是不是上线了类似的容易导致异常的指令。
  2. 再排查,仅仅是我的服务不行还是大家试用hbase的都不行,自己不行就先自己找原因。大家都不行就外部找原因。
  3. 外部排查,是不是服务器不行?比如:物理的宿主机异常。检测之后正常。
  4. 细节上排查,为什么慢,找到一个请求,看看服务器在干啥?服务器在进行fullGC,能否开启并行GC,(上次异常是fullGC的原因,已经开启了并行gc稳定运行了将近3年。)
  5. 根据服务器特性分析,一个服务器繁忙,两外两个服务器空闲,查看分析一下服务器的cpu使用差异。
    异常后的三个节点cpu使用:4:1:1。整体百分之60的压力给到了一个服务器。超出了设计的用量一倍。崩了,真的不稀奇。为啥流量差异这么大呢?继续定位。
    先看一下我的这个表的region数据,根据请求量排序查看。数量级是4百万,往下拖一下后面的数量级才4千,差了一千倍。而且恰恰这两个region,都恰好在我的繁忙机器上。
    在这里插入图片描述
    真相破案了。
    三条业务线的数据读写请求都集中在最近的几个region,当这几个region都集中在一台服务器上的时候,像级了三体描述的三日凌空。我的服务器瘫了,瘫了,了。
    请求集中到最近几个region这是病,要治, 刚好我有药,需要的划到底下。

问题定位到了,开始分析产生原因(不感兴趣的可以跳过,不影响后续阅读)

  1. habse怎么管理这些rowkey?
    hbase系统内部给了一个管理rowkey的东西. 它就是我们本期说的region.
    region存储了什么? 一张表对应多个region(详见:list_regions),region存储了自己所在的serverName节点信息. 存储了rowkey的startKey和endKey
    这个范围内的rowkey都会经过这个region统一进行调配.去哪个节点位置查数据, 去哪个节点位置改数据.
    哦,原来请求到达,我们要先根据rowkey去region列表(去匹配startkey和endKey)检索的数据所在region信息(详见:locate_region)。
    再去region对应的服务器,检索当前rowkey对应的文件存储信息。再去各个节点读取数据。
  2. region为什么会创建多个?
    每个region会对应一个具体的server服务器来帮助查询rowkey对应的文件信息。
    如果单个region那么压力都积压到一个server服务器了,没有充分利用起来分布式的优点 。
  3. region是需要我们手动创建拆分指定,还是自动指定?
    hbase的内置策略,当数据量超过阈值(10GB),会自动进行当前的region拆分。拆分为两个,这个过程资源消耗比较大。
    可以通过预生成的方式进行region的生成(有些场景有必要,有些场景没有必要)。
    比如0-100,再填充101的时候发现过大要拆分了,0-100拆分成了0-80, 80-160. 那么我们在创建region的时候就可以直接创建0-80,80-160.
    现在我们同一个表的不同rowkey查询的时候走不同的region, 不同的region可能分布在不同的server服务器。 nice。
  4. 为什么运行过程中为什么单个节点负载高,其它节点负载低?
    很多情况下rowkey设计不合理导致的。(嗯,我们现在就是直接copy了自增业务主键)。数据不断写,region到达顶峰,不断拆分。但是业务的增删改查,大部分都是发生在近期的数据。这就导致热数据比较集中。你会发现这会热数据的region在1号服务器,1号服务器忙的要死,其余服务器全在吃瓜看戏。一个表这样还好些,压力能扛住,但是当核心的3-5个服务的热数据同时在1号节点的时候,灾难真的来临了。

原因找到了,看一下改正方案吧!

RowKey的三大设计原则

region能不能均衡分布。取决于rowkey.

1、散列原则,不要用类似于时间戳这样的不断增大的数据直接作为RowKey,如果确实需要用时间戳,可以把它放在低位,高位用散列来占位。
2、长度原则,其实总结就一句话,rowkey只是一个唯一标识符,并没有更多的实际意义,所以不要搞得太长(16字节),
3、唯一性原则,这一点没什么好说的,RowKey需要唯一确定一条数据,所以必须唯一。

咱们说一下散列的常用方式。常见的有hash(md5生成)/加盐(加用户id等)/反转(逆序)
个人推荐用逆序,好处及具体实现方式见后附。

rowkey的散列处理方式反转具体如何做

在网上看了一下大神们的反转策略,感觉和我的业务场景不太一样。
我现在的方案是反转,然后末尾补0,到我的预测数量级比如我预测数量级是最大百亿数据,那么我补0补齐至10位。
优点: 当时数量级跃迁时,不会产生数据倾斜(热数据集中)
缺点:rowKey的长度比常规更大,占用更多资源。

我现在的反转方案是这样的。

1 反转为 1000000000(1后补0至10位)
2 反转为 2000000000(5后补0至10位)
5 反转为 5000000000(5后补0至10位)
10 反转为 0100000000(01后补0至10位)
50 反转为 0500000000(05后补0至10位)
100 反转为 0010000000(001后补0至10位)
500 反转为 0050000000(005后补0至10位)
1000反转为 0001000000(0001后补0至10位)
5000反转为 0005000000(0005后补0至10位)
正常反转之后末尾补0凑够指定位数。(rowkey的长度可能比较长)。
只要没有超过我们的预期数据量,那么这个rowkey在哪个位置就由原始数据的末尾几位决定的(反转之后成为了首位)。如果拆了10个region.
结尾为1的落在了1000000-2000000区间,结尾为2 的落在了2000000-3000000区间。。。。
数量级从十万级别升级到了百万级别。热数据还是根据结尾的值均匀分布。
如果随着时间的增加,新数据来了,老数据走了。来的数据末位数有1有2,走的数据末位数有1有2.
基本能保持平衡,很难会出现某些region里面没有数据的情况。

为什么数据跃迁之后不补零会导致热点数据集中。

假如跃迁之前我的数据量级是不足百万,99万的数据拆分了99个region(1万一个)。
产生第1000001数据时反转=1000001 比百万数据多了一个量级。

原始数量为123456位,最新的为1234567位。
1000002—>2000001
1000003–>3000001
1000004–>4000001
1001004–>4001001

1百万之后的数据都会分配到。起止点最大的region, 并且已有的其他region,因为数量级较小,不会被分配新的数据,热点数据集中在某几个region,发生了数据倾斜。
即便后续新节点拆分,那么热数据也是集中在新拆分的几个节点里面,前面的99个节点基本被废弃了。

我们数据不单单填充啊!还是存在删除的情况。但是数据删除之后即便region里面没有数据了,region的这个拆分还是依然保留的。如果随着时间的增加,新数据来了,老数据走了,前面的这个99个region里面没有数据了,但是region依然存在。

指标不治本的临时解决方案。

你说“我现在服务器都崩了,你给我讲rowkey怎么改,改完规则,测试,上线。3天出去了。咋整?”
不慌哈!指标不治本的解决方案咱也有。
现在数据倾斜,热点数据集中到某几个region,我们把他迁移走不就成了吗?
在这里插入图片描述
hbase 有一个move指令,迁移region到其它的服务器,可以指定服务器,也可以让hbase根据自己的规则选择最优服务器。

encodedRegionName 是region名称的hash后缀。 如果region名称是:TestTable,0094429456,1289497600452.527db22f95c8a9e0116f0cc13c680396. 那么endodeedRegionName是527db22f95c8a9e0116f0cc13c680396
我们的命令就是
move ‘527db22f95c8a9e0116f0cc13c680396’

热点的region移动出去,服务的cpu就降下来了。

根治方法

更改rowkey的生成规则, 如果是因为rowkey生成规则不合适导致的热点数据集中的数据倾斜,就需要更改rowKey的生成规则(强推逆序简单可靠), 更改rowKey的生成规则后记得同时更改,读和写,并且要考虑历史已经写入数据的兼容性。

  1. 考虑新的规则写入数据是否和历史数据重合。
  2. 程序如何能设置分割线,同时读取新的规则写入的key和老的规则写入的key。

其他问题。

hbase的region会自动删除吗?

有些业务可能只保留近期几年的数据,hbase可以通过ttl来进行设置。hbase内置的检索规则会最终删除这些数据。如果一个region内部对应的rowkey数据都删除了, 我的region会自动删除吗?不会!
我们前面也讲过,region可以进行预生成。都能预生成了。预生成的就是没有对应数据的region.所以系统上是默认支持这样的。 我的数据不断存储,不断ttl删除,region也不断增大,有什么解决方案吗?使用现有的命令行进行merge(详见merge_region)

查看单个表的region信息

help list_regions
hbase> list_regions 'table_name'
hbase> list_regions 'table_name', 'server_name'
hbase> list_regions 'table_name', {SERVER_NAME => 'server_name', LOCALITY_THRESHOLD => 0.8}
hbase> list_regions 'table_name', {SERVER_NAME => 'server_name', LOCALITY_THRESHOLD => 0.8}, ['SERVER_NAME']
hbase> list_regions 'table_name', {}, ['SERVER_NAME', 'start_key']
hbase> list_regions 'table_name', '', ['SERVER_NAME', 'start_key']

相关文章:

关于hbaseRegion和hbaseRowKey的一些处理

我遇到了什么问题? 我的habse一共有三台服务器,其中一台忙的要死,另外两台吃瓜看戏,我的业务都在其中一个服务器上,导致数据的读写瓶颈。 先说一下hbase的概况,有一个整体了解,我们再讲原因。…...

exec和spawn

前言 需求:做一个electron应用,用node打开exe软件,打开后返回成功与否,打开的软件不会随electron应用的关闭而关闭 exec exec 第一个参数为要运行的command命令,参数以空格分隔。 child_process.exec(command[, opti…...

【C到Java的深度跃迁:从指针到对象,从过程到生态】第四模块·Java特性专精 —— 第十三章 异常处理:超越C错误码的文明时代

一、错误处理的范式革命 1.1 C错误处理的黑暗时代 C语言通过返回值传递错误状态,存在系统性缺陷: 典型错误处理模式: FILE* open_file(const char* path) { FILE* f fopen(path, "r"); if (!f) { return NULL; // 错误信息…...

AD相同网络的铜皮和导线连接不上

出现这样的情况是不是很烦恼,明明是相同的网络连接不上????? 直接修改铜皮属性(选择所有相同这个选项) 这样就可以连接上了...

驱动开发硬核特训 · Day 21(下篇): 深入剖析 PCA9450 驱动如何接入 regulator 子系统

&#x1f4d8; 一、设备树视角&#xff1a;PCA9450 是如何声明的&#xff1f; 设备树中定义了 PCA9450 芯片通过 I2C 总线挂载&#xff0c;并描述了多个 regulator 通道&#xff1a; &i2c1 {pmic25 {compatible "nxp,pca9450c";reg <0x25>;regulators …...

消息队列mq在Mlivus Cloud向量数据库中的关键配置与最佳实践

作为《向量数据库指南》的作者和大禹智库高级研究员,我在30多年的向量数据库实战中深刻认识到:消息队列(MQ)作为现代向量数据库架构的"神经系统",其配置优化直接决定了系统的吞吐量、稳定性和扩展性。本文将基于Mlivus Cloud这一领先的向量数据库平台,深入剖析…...

常见网络安全攻击类型深度剖析(四):跨站脚本攻击(XSS)——分类、漏洞利用与前端安全防护

常见网络安全攻击类型深度剖析&#xff08;四&#xff09;&#xff1a;跨站脚本攻击&#xff08;XSS&#xff09;——分类、漏洞利用与前端安全防护 在Web应用安全中&#xff0c;跨站脚本攻击&#xff08;Cross-Site Scripting, XSS&#xff09;是攻击者利用浏览器漏洞&#x…...

临床试验中安全性估计策略与应用

1. 安全性估计概述 1.1 安全性估计的定义与重要性 1.1.1 安全性估计的定义 安全性估计旨在准确评估药物或干预措施的安全性特征,涵盖不良事件的发生率、严重程度及与治疗的因果关系等关键要素。 依据 ICH E9(R1) 指南,需明确定义目标人群、伴发事件处理方式及分析策略,为药…...

2025年GPLT团体程序设计天梯赛L1-L2

目录 1.珍惜生命 2.偷感好重 3.高温补贴 4.零头就抹了吧 5.这是字符串题 6.这不是字符串题 7.大幂数​编辑 8.现代战争​编辑 9.算式拆解 10.三点共线 11.胖达的山头 12.被n整除的n位数 1.珍惜生命 【解析】直接输出即可 #include<bits/stdc.h> using namespace…...

AI 场景落地:API 接口服务 VS 本地部署,哪种更适合?

在当前 AI 技术迅猛发展的背景下&#xff0c;企业在实现 AI 场景落地时&#xff0c;面临着一个关键抉择&#xff1a;是选择各大厂商提供的 API 接口服务&#xff0c;还是进行本地化部署&#xff1f;这不仅关乎成本、性能和安全性&#xff0c;还涉及到技术架构、数据治理和长期战…...

cdh平台管理与运维最佳实践

一、容量规划&#xff1a;构建可持续扩展的数据湖底座 1.1 资源评估三维模型 #mermaid-svg-f455GhWoSD6qmLzX {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-f455GhWoSD6qmLzX .error-icon{fill:#552222;}#mermaid…...

未来乘用车电气/电子(E/E)架构与商用车电气/电子架构有何不同?

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 钝感力的“钝”,不是木讷、迟钝,而是直面困境的韧劲和耐力,是面对外界噪音的通透淡然。 生活中有两种人,一种人格外在意别人的眼光;另一种人无论…...

第25周:DenseNet+SE-Net实战

目录 前言 1.准备工作 2.查看数据 3.划分数据集 4.创建模型 5.编译及训练模型 6.结果可视化 7.总结 前言 &#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 1.准备工作 import torch import torch.nn as nn imp…...

【ESP32-IDF笔记】20-配置以太网网络(W5500)

环境配置 Visual Studio Code &#xff1a;版本1.98.2 ESP32&#xff1a;ESP32-S3 ESP-IDF&#xff1a;V5.4 模块&#xff1a;W5500&#xff0c;SPI通讯协议 组件支持&#xff1a;esp_eth 官方的ethernet 以太网组件 W5500介绍 介绍 W5500 是一款全硬件 TCP/IP 嵌入式以太网…...

python源码打包为可执行的exe文件

文章目录 简单的方式&#xff08;PyInstaller&#xff09;特点步骤安装 PyInstaller打包脚本得到.exe文件 简单的方式&#xff08;PyInstaller&#xff09; 特点 支持 Python 3.6打包为单文件&#xff08;–onefile&#xff09;或文件夹形式自动处理依赖项 步骤 安装 PyIns…...

在vscode终端中运行npm命令报错

解决方案 这个错误信息表明&#xff0c;你的系统&#xff08;可能是 Windows&#xff09;阻止了 PowerShell 执行脚本&#xff0c;这是由于 PowerShell 的执行策略导致的。PowerShell 的执行策略控制着在系统上运行哪些 PowerShell 脚本。默认情况下&#xff0c;Windows 可能…...

Canvas入门教程!!【Canvas篇二】

没有一朵花&#xff0c;从一开始就是花。 目录 translate() 方法&#xff1a;rotate() 方法&#xff1a;scale() 方法&#xff1a; translate() 方法&#xff1a; Canvas 2D API 的 CanvasRenderingContext2D.translate() 方法用于对当前网格添加平移变换。 translate() 方法通…...

windows服务器及网络:搭建FTP服务器

前言&#xff1a;&#xff08;各位大佬们&#xff0c;昨天太忙了&#xff0c;整得没有发布昨天那该写的那一篇&#xff0c;属实有点可惜的说QAQ&#xff0c;不过问题已经解决&#xff0c;我又回来啦&#xff09; 今天我要介绍的是在Windows中关于搭建FTP服务器的流程与方法 注…...

[4A/OP]

2.2 安装程序 2.2.1 解压缩.tar.gz文件 调用UNIX命令tar会在当前目录下创建4A/OP子例程主目录4AOP-1.5/&#xff0c;包括所有必要的子目录。只需键入以下命令即可解压缩和“untar”4AOP-1.5.tar.gz&#xff1a; tar -xzvf 4AOP-1.5.tar.gz4AOP-1.5/目录现在应该已经创建&…...

C++学习之网络攻防以及信息搜索

目录 1.课程安排 2.课程介绍 3.渗透测试 4.ptes渗透测试执行标准的介绍 5.网络攻防环境的介绍 6.kali系统的介绍和调整 7.搜索引擎踩点 8.dnsenum和nslookup 9.whois命令 10.traceroute命令 11.复习 12.traceroute原理 13.telnet命令 14.在线存货ping 15.nmap扫描…...

4.5/Q1,GBD数据库最新文章解读

文章题目&#xff1a;Cross-Country Inequalities in Disease Burden and Quality of Care of Stroke, 1990-2021: A Systematic Analysis of the Global Burden of Disease Study 2021 DOI&#xff1a;10.1111/ene.70050 中文标题&#xff1a;1990 年至 2021 年中风疾病负担和…...

py语法基础理解

条件判断 只有if-else等我语句,Python不支持switch语句 单if语句 if 条件语句: 条件为真时执行的内容 if-else语句 if 条件语句: 条件为真时执行的内容 else: 条件为假时执行的内容 if-elif语句 else if if 条件语句1: 条件语句1为真时执行的内容 elif 条件语句…...

python——异常

1、定义 异常是在代码执行过程中发生的&#xff0c;它会影响到程序的正常运行。python程序不会自动来进行异常处理。python中常见异常父类&#xff1a;Exception。 2、常见异常 TypeError&#xff1a;类型错误异常。ValueError&#xff1a;值的异常。KeyError&#xff1a;键…...

深入理解指针(4)

1.二级指针 如何理解呢&#xff1f; 1.pp的类型是int * * ——二级指针类型 2.p指向a&#xff0c;a的类型是int 3.int * * pp 其中 int * 在说明 pp 是指向 p 的类型 int * ,第二个 * 说明 pp 是指针变量 4.p 1 跳过 4 个字节 &#xff0c; pp 1 跳过 4 或者 8 个字节&am…...

Apipost免费版、企业版和私有化部署详解

Apipost是企业级的 API 研发协作一体化平台&#xff0c;为企业提供 API研发测试管理全链路解决方案&#xff0c;不止于API研发场景&#xff0c;增强企业API资产管理。 Apipost 基于同一份数据源&#xff0c;同时提供给后端开发、前端开发、测试人员使用的接口调试、Mock、自动化…...

小火电视桌面 TV版 老旧历史版本安装包 官方免费下载

如果你还在为小火桌面tv版无法使用而烦恼&#xff0c;四处寻找其他新老版本安装包&#xff0c;那么不妨试试乐看家桌面&#xff0c;它能为你带来全新的电视使用体验。 乐看家桌面的界面简洁纯净&#xff0c;没有繁琐的层级和恼人的广告&#xff0c;大字体、大图标设计&#xff…...

Java常用API详解

本文将系统讲解Java开发中高频使用的工具类API&#xff0c;涵盖数学计算、系统操作、对象处理和大数运算等场景。ps:本文是免费的,如果被csdn锁了,请联系我.如果需要查看更详细的说明,可以查阅javaAPI帮助文档.我本来想直接把API文档整合到文章中方便大家下载,结果csdn这货直接…...

jdk-8u202-linux-x64.tar.gz官方下载地址

https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html 点击下载&#xff0c;需要先注册oracle账号&#xff0c;很好注册随便写&#xff0c;注册完登录就可以下载了。目前就Oracle JDK 8u201/202 是最后两个可免费用于商业用途的公开版本...

内联函数(c++)

预处理&#xff1a;优点&#xff1a;内嵌到目标代码&#xff0c;减少函数的调用。 缺点&#xff1a;在预处理阶段完成替换&#xff0c;避免了语义上的差错。 egg&#xff1a; #define SQR(X) ((X)*(X)) 函数&#xff1a;优点&#xff1a;完成了某一类操作的抽象&#xff0c;…...

Python 基础语法与数据类型(四) - 布尔类型 (bool) 与逻辑运算符 (and, or, not) 和类型转换

文章目录 布尔类型 (bool)逻辑运算符 (and, or, not)布尔值的“真值”判断 (Truthiness / Falsiness)类型转换 (Type Casting)总结 在前面的文章中&#xff0c;我们学习了数字类型&#xff08;整型、浮点型&#xff09;和字符串。今天&#xff0c;我们要介绍另一种非常基础且极…...

WebUI可视化:第7章:系统优化与部署实战

第7章:系统优化与部署实战 学习目标 ✅ 掌握Web应用的性能优化技巧 ✅ 实现安全可靠的线上部署 ✅ 配置监控与日志系统 ✅ 了解云服务成本控制方法 7.1 性能优化策略 7.1.1 前端优化 python # 示例:Gradio异步处理 demo.queue(concurrency_count=5) # 控制并发数 de…...

79. 单词搜索

题目 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格是那些水平相邻或…...

Spring @Transactional 自调用问题深度解析

Spring Transactional 自调用问题深度解析 问题本质&#xff1a;自调用事务失效 当类内部的方法A调用同一个类的另一个带有Transactional注解的方法B时&#xff0c;事务注解不会生效。这是因为Spring的事务管理是基于AOP代理实现的&#xff0c;而自调用会绕过代理机制。 原理…...

支付宝小程序组件与页面构造器使用指南:从页面到组件的正确迁移

引言 在支付宝小程序开发中&#xff0c;我们经常会遇到需要将页面组件化的情况。本文将通过一个实际案例&#xff08;将 /pages/plugin/device 从页面迁移到组件&#xff09;&#xff0c;深入分析支付宝小程序中页面和组件的区别&#xff0c;以及正确的迁移方式。我们将从问题…...

version `GLIBCXX_3.4.32‘ not found 解决方法

环境&#xff1a;Ubuntu 24.04 报错&#xff1a;ImportError: /home/ge/opt/anaconda3/envs/roboTwin/bin/../lib/libstdc.so.6: version GLIBCXX_3.4.32 not found (required by /home/ge/Desktop/RoboTwin/third_party/pytorch3d_simplified/pytorch3d/_C.cpython-310-x86_6…...

vue3中nextTick的作用及示例

在Vue 3中&#xff0c;nextTick是一个用于处理DOM异步更新的工具函数&#xff0c;确保在数据变化后操作最新的DOM。以下是其作用的详细解析&#xff1a; 核心作用 延迟回调到DOM更新后&#xff1a;Vue的响应式系统会将数据变更批量处理&#xff0c;异步更新DOM。nextTick允许你…...

WHAT - 《成为技术领导者》思考题(第一章)

文章目录 思考题思路与示例框架1. 观察一位你心目中的领导者2. 若要提升自己的领导技能&#xff0c;你期望哪些方面得到提高&#xff1f;3. 如果领导技能提高&#xff0c;哪些生活层面可能恶化&#xff1f;值得吗&#xff1f;如何缓解&#xff1f;4. 列“提升他人生产效率” vs…...

今日行情明日机会——20250425

指数依然在震荡&#xff0c;等待方向选择&#xff0c;整体量能不搞但个股红多绿少。 2025年4月25日涨停板行业方向分析如下&#xff1a; 一、核心行业方向及驱动逻辑 一季报增长&#xff08;17家涨停&#xff09; 核心个股&#xff1a;惠而浦、鸿博股份、卫星化学驱动逻辑&am…...

数据库-子查询、关联查询 和 TCL 语言

标题目录 子查询使用场景子查询分类在 DQL 中使用子查询单行单列子查询多行单列子查询 在 DML 中使用子查询在 DDL 中使用子查询视图 关联查询关联关系的分类连接条件主外键关联N 表关联查询关联查询中使用聚合函数 TCL 语言事务的特性&#xff08;ACID&#xff09;在事务中控制…...

精华贴分享|【牛马课题】可转债多策略研究-1【基础篇】

本文来源于量化小论坛策略分享会板块精华帖&#xff0c;作者为Mc&#xff0c;发布于2025年3月19日。 以下为精华帖正文&#xff1a; 01 背景 本次牛马主题是可转债的多策略研究。在第一次牛马线上会议讨论时&#xff0c;我曾表达对今年转债市场的看好。 原因在于&#xff1a…...

精读27页健康医疗大数据安全管控分类分级实施指南

这篇文档是一份关于健康医疗大数据安全管控分类分级实施指南的文档。该指南的主要内容包括数据分类、数据分级、数据开放形式、数据对外开放分级管控、数据模糊化与标签化、数据对外开放典型场景、数据内部分级安全管控和IS&ITS管理手册等内容。 具体来说&#xff0c;该指南…...

Spring MVC 数据绑定利器:深入理解 @InitBinder

在使用 Spring MVC 开发 Web 应用时&#xff0c;我们经常需要处理从 HTTP 请求&#xff08;如 URL 参数、表单数据&#xff09;到 Controller 方法参数的自动转换。这就是 Spring 的数据绑定 (Data Binding) 机制。虽然 Spring 提供了很多默认的类型转换器&#xff08;比如字符…...

【HTTP/2:信息高速公路的革命】

HTTP/2&#xff1a;信息高速公路的革命 想象一下&#xff0c;如果说HTTP/1.1是一条繁忙的双向马路&#xff0c;那么HTTP/2就是一座现代化的高速公路网络系统&#xff0c;彻底改变了数据传输的方式。让我们通过生动的比喻和图表&#xff0c;深入了解这场网络通信的革命。 HTTP…...

PMIC PCA9450 硬件原理全解析:为 i.MX 8M 平台供电的“大脑”

在嵌入式 Linux 系统中&#xff0c;电源设计是构建稳定系统的基础。PCA9450 是 NXP 推出的一款高度集成的 电源管理芯片&#xff08;PMIC&#xff09;&#xff0c;专为 i.MX 8M 系列处理器设计。它不仅提供多路电压输出&#xff0c;还具备可编程启动顺序、动态电压调节、低功耗…...

【计算机视觉】CV实战项目 - 深入解析基于HOG+SVM的行人检测系统:Pedestrian Detection

深入解析基于HOGSVM的行人检测系统&#xff1a;从理论到实践 技术核心&#xff1a;HOGSVM检测框架HOG特征原理SVM分类器 项目架构与数据准备INRIA Person数据集目录结构 实战指南&#xff1a;从零构建检测系统环境配置完整训练流程检测应用 关键技术问题与解决方案1. 难例挖掘不…...

巴西kwai短视频推广旅游广告获客营销策略

巴西kwai短视频平台作为一种新兴的推广渠道&#xff0c;可以为旅游广告带来新的营销机遇。以下是一些针对利用kwai短视频平台推广旅游广告的获客营销策略&#xff1a; 制作吸引人的内容&#xff1a;在kwai平台上发布具有吸引力的短视频内容&#xff0c;包括美丽的风景、当地文化…...

智慧医疗领域TMI期刊2025年3月研究热点解析

本推文对2025年3月《IEEE Transactions on Medical Imaging》&#xff08;TMI&#xff09;期刊论文的研究热点进行了深入分析。本期TMI涵盖了多模态图像融合、深度学习在医学诊断中的应用、三维重建与分割、图像引导治疗等关键方向&#xff0c;呈现出智慧医疗与人工智能深度融合…...

系统思考:看清问题背后的结构

组织的挑战&#xff0c;往往不是因为不努力&#xff0c;而是“看不清” 结束了为期两天系统思考课程的第一天&#xff0c;被学员的全情投入深深打动。我们用系统结构图&#xff0c;一步步揭示那些表面看起来“习以为常”的问题&#xff1a; 什么原因跨部门协作总是磕磕绊绊&am…...

计算机组成原理实验(1) 算术逻辑运算单元实验

实验一 算术逻辑运算单元实验 一、实验目的 1、掌握简单运算器的数据传输方式 2、掌握74LS181的功能和应用 二、实验内容 1、不带进位位逻辑或运算实验 2、不带进位位加法运算实验 3、实验指导书2.15实验思考 三、实验步骤和结果 实验内容一&#xff1a;不带进位…...

网络安全概述:定义、重要性与发展历程

网络安全概述&#xff1a;定义、重要性与发展历程 在互联网深度融入生活与工作的今天&#xff0c;网络安全已成为不可忽视的关键领域。从个人隐私泄露到企业数据失窃&#xff0c;再到国家关键基础设施遭受攻击&#xff0c;网络安全事件频发&#xff0c;深刻影响着个人、组织乃…...