OceanBase社区版单节点安装搭建(Docker)
OceanBase社区版单节点安装搭建(Docker)
文章目录
- OceanBase社区版单节点安装搭建(Docker)
- 一、环境检查及Docker配置
- 1.1 安装docker
- 1.2 配置docker镜像源
- 二、OB镜像下载
- 三、obd部署单节点数据库
- 四、创建业务租户、数据库、表
- 4.1 创建租户
- 4.2 创建数据库、表
- 五、参考链接
一、环境检查及Docker配置
本文采用redhat7.9作为测试环境,虚拟机安装操作系统的步骤不再列出。
官方的docker镜像要求主机资源至少为2C10G。本机主机资源配置(4c16G,磁盘100G)
[root@rac04 ~]# lscpu
CPU(s): 4
[root@rac04 ~]# free -mtotal used free shared buff/cache available
Mem: 15866 981 14534 12 350 14606
Swap: 8063 0 8063
[root@rac04 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 13M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/rhel-root 92G 4.2G 87G 5% /
/dev/sda1 1014M 183M 832M 19% /boot
tmpfs 1.6G 8.0K 1.6G 1% /run/user/42
tmpfs 1.6G 0 1.6G 0% /run/user/0
1.1 安装docker
#内核版本不低于3.10。
uname -a#设置docker源仓库
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo#安装docker
yum install -y docker-ce docker-ce-cli containerd.io#启动docker服务
systemctl start docker
#激活docker服务开机自启动
systemctl enable docker.service#校验
[root@rac04 ~]# docker version
Client: Docker Engine - CommunityVersion: 25.0.3API version: 1.44Go version: go1.21.6Git commit: 4debf41Built: Tue Feb 6 21:17:10 2024OS/Arch: linux/amd64Context: defaultServer: Docker Engine - CommunityEngine:Version: 25.0.3API version: 1.44 (minimum version 1.24)Go version: go1.21.6Git commit: f417435Built: Tue Feb 6 21:16:08 2024OS/Arch: linux/amd64Experimental: falsecontainerd:Version: 1.6.28GitCommit: ae07eda36dd25f8a1b98dfbf587313b99c0190bbrunc:Version: 1.1.12GitCommit: v1.1.12-0-g51d5e94docker-init:Version: 0.19.0GitCommit: de40ad0
1.2 配置docker镜像源
国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,参考Docker Hub 镜像源 - 掘金 (juejin.cn)
vi /etc/docker/daemon.json{"registry-mirrors": ["https://dockerproxy.com","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://ccr.ccs.tencentyun.com"]
}#重启docker服务
systemctl restart docker.service #校验镜像源
[root@rac04 ~]# docker info |grep Mirrors -A 5Registry Mirrors:https://dockerproxy.com/https://hub-mirror.c.163.com/https://mirror.baidubce.com/https://ccr.ccs.tencentyun.com/Live Restore Enabled: false
二、OB镜像下载
下载地址:https://hub.docker.com/r/oceanbase/oceanbase-ce/tags,该地址可能需要使用代理访问。这里直接贴出来docker pull oceanbase/oceanbase-ce:3.1.3
找到3.1.3版本,复制拉取命令
[root@rac04 ~]# docker pull oceanbase/oceanbase-ce:3.1.3
3.1.3: Pulling from oceanbase/oceanbase-ce
13add961a70d: Pull complete
1cf396138e36: Pull complete
de207e7387d3: Pull complete
Digest: sha256:22c2d82e5e7223ee510b1c53400edd05e622d9a09bc33987bd85ce560bb0781a
Status: Downloaded newer image for oceanbase/oceanbase-ce:3.1.3
docker.io/oceanbase/oceanbase-ce:3.1.3
[root@rac04 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oceanbase/oceanbase-ce 3.1.3 66c986c2d478 23 months ago 783MB
三、obd部署单节点数据库
运行docker容器
[root@rac04 ~]# docker run -d -m 12G --cpus 4 --name oceanbase-ce oceanbase/oceanbase-ce:3.1.3
61d0ccd3ea95e36938527701c07d85f89fe950921004c4b133302dd32051dc5c[root@rac04 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
61d0ccd3ea95 oceanbase/oceanbase-ce:3.1.3 "/bin/sh -c _boot" 8 seconds ago Up 8 seconds oceanbase-ce
检查docker日志
[root@rac04 ~]# docker logs oceanbase-ce
generate boot.yaml ...
create boot dirs and deploy ob cluster ...
Package oceanbase-ce-3.1.3 is available.
install oceanbase-ce-3.1.3 for local ok
Cluster param config check ok
Open ssh connection ok
Generate observer configuration ok
oceanbase-ce-3.1.3 already installed.
+-------------------------------------------------------------------------------------------+
| Packages |
+--------------+---------+-----------------------+------------------------------------------+
| Repository | Version | Release | Md5 |
+--------------+---------+-----------------------+------------------------------------------+
| oceanbase-ce | 3.1.3 | 10000292022032916.el7 | eab08e5d473bd4884fdf2ac4d7dff6a329b68abe |
+--------------+---------+-----------------------+------------------------------------------+
Repository integrity check ok
Parameter check ok
Open ssh connection ok
Remote oceanbase-ce-3.1.3-eab08e5d473bd4884fdf2ac4d7dff6a329b68abe repository install ok
Remote oceanbase-ce-3.1.3-eab08e5d473bd4884fdf2ac4d7dff6a329b68abe repository lib check !!
[WARN] 127.0.0.1 oceanbase-ce-3.1.3-eab08e5d473bd4884fdf2ac4d7dff6a329b68abe require: libmariadb.so.3Try to get lib-repository
Package oceanbase-ce-libs-3.1.3 is available.
install oceanbase-ce-libs-3.1.3 for local ok
Use oceanbase-ce-libs-3.1.3-c68c3aca8a1329a360fe5d65e1c3d4fa0f93f2d5 for oceanbase-ce-3.1.3-eab08e5d473bd4884fdf2ac4d7dff6a329b68abe
Remote oceanbase-ce-libs-3.1.3-c68c3aca8a1329a360fe5d65e1c3d4fa0f93f2d5 repository install ok
Remote oceanbase-ce-3.1.3-eab08e5d473bd4884fdf2ac4d7dff6a329b68abe repository lib check ok
Cluster status check ok
Initializes observer work home ok
obcluster deployed
Get local repositories and plugins ok
Open ssh connection ok
Load cluster param plugin ok
Check before start observer ok
[WARN] (127.0.0.1) clog and data use the same disk (/)Start observer ok
observer program health check ok
Connect to observer ok
Initialize cluster
Cluster bootstrap ok
Wait for observer init ok
+---------------------------------------------+
| observer |
+-----------+---------+------+-------+--------+
| ip | version | port | zone | status |
+-----------+---------+------+-------+--------+
| 127.0.0.1 | 3.1.3 | 2881 | zone1 | active |
+-----------+---------+------+-------+--------+obcluster running
Get local repositories and plugins ok
Open ssh connection ok
Connect to observer ok
Create tenant test ok
start ob cluster ...
Get local repositories and plugins ok
Open ssh connection ok
Load cluster param plugin ok
Cluster status check ok
Deploy "obcluster" is running
boot success!
#切换终端到docker容器
[root@rac04 ~]# docker exec -it oceanbase-ce bash
#检查集群状态
[root@61d0ccd3ea95 /]# obd cluster list
+------------------------------------------------------------+
| Cluster List |
+-----------+------------------------------+-----------------+
| Name | Configuration Path | Status (Cached) |
+-----------+------------------------------+-----------------+
| obcluster | /root/.obd/cluster/obcluster | running |
docker镜像已经部署好了一个集群——obcluster,这里不再部署。附上obd操作集群的常用命令
#启动集群
obd cluster start 集群名
#停止集群
obd cluster stop 集群名
#重启集群
obd cluster restart 集群名
#查看集群状况
obd cluster list
obd cluster display 集群名
#查看集群配置,也可以根据模板,重新建一个配置文件,重新部署新集群
obd cluster edit-config 集群名
四、创建业务租户、数据库、表
连接数据库,默认root密码为空
obclient -h127.0.0.1 -P2881 -uroot@sys -p -c -A -Doceanbase
-- 修改root密码
alter user root identified by 'root';
4.1 创建租户
检查资源状况
select zone,
concat(svr_ip, ':', svr_port) observer,
cpu_capacity,
cpu_total,
cpu_assigned,
cpu_assigned_percent,
mem_capacity/1024/1024,
mem_total/1024/1024,
mem_assigned/1024/1024,
mem_assigned_percent,
disk_total/1024/1024,
disk_assigned/1024/1024,
disk_assigned_percent,
unit_Num,
round('load', 2) 'load',
round('cpu_weight', 2) 'cpu_weight',
round('memory_weight', 2) 'mem_weight',
leader_count
from __all_virtual_server_stat
order by zone, svr_ip\G*************************** 1. row ***************************zone: zone1observer: 127.0.0.1:2882cpu_capacity: 14cpu_total: 14cpu_assigned: 11.5cpu_assigned_percent: 82mem_capacity/1024/1024: 4096.00000000mem_total/1024/1024: 4096.00000000mem_assigned/1024/1024: 3891.20000076mem_assigned_percent: 95disk_total/1024/1024: 27648.00000000
disk_assigned/1024/1024: 55296.00000000disk_assigned_percent: 200unit_Num: 2load: 0.00cpu_weight: 0.00mem_weight: 0.00leader_count: 1318
1 row in set, 3 warnings (0.001 sec)MySQL [oceanbase]> show parameters like 'system_memory'\G
*************************** 1. row ***************************zone: zone1svr_type: observersvr_ip: 127.0.0.1svr_port: 2882name: system_memorydata_type: NULLvalue: 4Ginfo: the memory reserved for internal use which cannot be allocated to any outer-tenant, and should be determined to guarantee every server functions normally. Range: [0M,)section: OBSERVERscope: CLUSTERsource: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
1 row in set (0.002 sec)MySQL [oceanbase]> select * from __all_unit_config;
+----------------------------+----------------------------+----------------+-----------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
| gmt_create | gmt_modified | unit_config_id | name | max_cpu | min_cpu | max_memory | min_memory | max_iops | min_iops | max_disk_size | max_session_num |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
| 2024-03-07 14:35:29.704258 | 2024-03-07 14:35:29.704258 | 1 | sys_unit_config | 5 | 2.5 | 1288490188 | 1073741824 | 10000 | 5000 | 28991029248 | 9223372036854775807 |
| 2024-03-07 14:35:40.537529 | 2024-03-07 14:35:40.537529 | 1001 | test_unit | 9 | 9 | 3006477108 | 3006477108 | 128 | 128 | 28991029248 | 64 |
+----------------------------+----------------------------+----------------+-----------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
2 rows in set (0.001 sec)MySQL [oceanbase]> select * from gv$unit;
+---------+----------------+------------------+------------------+--------------------+-------+-----------+-------------+-----------+----------+---------------------+-----------------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
| unit_id | unit_config_id | unit_config_name | resource_pool_id | resource_pool_name | zone | tenant_id | tenant_name | svr_ip | svr_port | migrate_from_svr_ip | migrate_from_svr_port | max_cpu | min_cpu | max_memory | min_memory | max_iops | min_iops | max_disk_size | max_session_num |
+---------+----------------+------------------+------------------+--------------------+-------+-----------+-------------+-----------+----------+---------------------+-----------------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
| 1 | 1 | sys_unit_config | 1 | sys_pool | zone1 | 1 | sys | 127.0.0.1 | 2882 | | 0 | 5 | 2.5 | 1288490188 | 1073741824 | 10000 | 5000 | 28991029248 | 9223372036854775807 |
| 1001 | 1001 | test_unit | 1001 | test_pool | zone1 | 1001 | test | 127.0.0.1 | 2882 | | 0 | 9 | 9 | 3006477108 | 3006477108 | 128 | 128 | 28991029248 | 64 |
+---------+----------------+------------------+------------------+--------------------+-------+-----------+-------------+-----------+----------+---------------------+-----------------------+---------+---------+------------+------------+----------+----------+---------------+---------------------+
2 rows in set (0.001 sec)-- 剩余的资源已经不足,修改system_memory参数为2G,调小test租户的资源占用
alter system set system_memory='2G';
alter resource unit test_unit min_cpu=1,max_cpu=2,min_memory='1G',max_memory='1G';-- 再次检查资源
*************************** 1. row ***************************zone: zone1observer: 127.0.0.1:2882cpu_capacity: 14cpu_total: 14cpu_assigned: 3.5cpu_assigned_percent: 25mem_capacity/1024/1024: 6144.00000000mem_total/1024/1024: 6144.00000000mem_assigned/1024/1024: 2048.00000000mem_assigned_percent: 33disk_total/1024/1024: 27648.00000000
disk_assigned/1024/1024: 55296.00000000disk_assigned_percent: 200unit_Num: 2load: 0.00cpu_weight: 0.00mem_weight: 0.00leader_count: 1318
创建资源单元
CREATE resource unit u1 max_cpu=1, min_cpu=1, max_memory='1G', min_memory='1G', max_iops=10000,
min_iops=1000, max_session_num=1000000, max_disk_size='5G';
创建资源池
create resource pool pool1 unit='u1', unit_num=1, zone_list=('zone1') ;
创建mysql类型业务租户,允许所有连接,关闭回收站
create tenant yw charset='utf8mb4',zone_list=('zone1'),resource_pool_list=('pool1'),comment='业务租户1'
set ob_compatibility_mode=mysql,ob_tcp_invited_nodes='%',recyclebin = off;
检查
MySQL [oceanbase]> select * from __all_tenant where tenant_name='yw'\G
*************************** 1. row ***************************gmt_create: 2024-03-07 15:50:54.994276gmt_modified: 2024-03-07 15:50:54.994276tenant_id: 1002tenant_name: ywreplica_num: -1zone_list: zone1primary_zone: RANDOMlocked: 0collation_type: 0info: 业务租户1read_only: 0rewrite_merge_version: 0locality: FULL{1}@zone1logonly_replica_num: 0previous_locality: storage_format_version: 0
storage_format_work_version: 0default_tablegroup_id: -1compatibility_mode: 0drop_tenant_time: -1status: TENANT_STATUS_NORMALin_recyclebin: 0
1 row in set (0.002 sec)
4.2 创建数据库、表
连接业务租户yw
obclient -h127.0.0.1 -P2881 -uroot@yw -p -c -A -Doceanbase
alter user root identified by 'root';-- 创建数据库
MySQL [oceanbase]> create database ywdb charset='utf8mb4' read write;
Query OK, 1 row affected (0.013 sec)
MySQL [oceanbase]> use ywdb
Database changed
MySQL [ywdb]> create table t1(name char(20));
Query OK, 0 rows affected (0.072 sec)
-- 创建分区表
MySQL [ywdb]> create table t3(id int(10),t3name char(20)) partition by hash(id) partitions 5;
Query OK, 0 rows affected (0.058 sec)
-- 创建表组
MySQL [ywdb]> create tablegroup tbgroup1 partition by hash partitions 5;
Query OK, 0 rows affected (0.019 sec)
-- 创建分区表并加入表组
MySQL [ywdb]> create table t4(t4id int(10)) tablegroup=tbgroup1 partition by hash(t4id) partitions 5;
Query OK, 0 rows affected (0.033 sec)
-- 将表加入表组
MySQL [ywdb]> alter table t3 tablegroup=tbgroup1;
Query OK, 0 rows affected (0.021 sec)
-- 查看表的创建语句
MySQL [ywdb]> SHOW CREATE TABLE t3;
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| t3 | CREATE TABLE `t3` (`id` int(10) DEFAULT NULL,`t3name` char(20) DEFAULT NULL
) DEFAULT CHARSET = utf8mb4 ROW_FORMAT = COMPACT COMPRESSION = 'zstd_1.3.8' REPLICA_NUM = 1 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0 TABLEGROUP = 'tbgroup1'partition by hash(id)
(partition p0,
partition p1,
partition p2,
partition p3,
partition p4) |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.027 sec)
五、参考链接
Linux安装Docker完整教程 - 哈哈哈嗝 - 博客园 (cnblogs.com)
Docker Hub 镜像源 - 掘金 (juejin.cn)
快速体验 OceanBase-OceanBase 数据库-OceanBase文档中心-分布式数据库使用文档
相关文章:
OceanBase社区版单节点安装搭建(Docker)
OceanBase社区版单节点安装搭建(Docker) 文章目录 OceanBase社区版单节点安装搭建(Docker)一、环境检查及Docker配置1.1 安装docker1.2 配置docker镜像源 二、OB镜像下载三、obd部署单节点数据库四、创建业务租户、数据库、表4.1 …...
Unity 关节:铰链、弹簧、固定、物理材质:摩檫力、 特效:拖尾、
组件-物理-关节:铰链(类似门轴) 自动动作、多少力可以将其断开、 弹簧可以连接另一个刚体(拖动即可) 固定一般是等待一个断裂力,造成四分五裂的效果。 物理材质 设置摩檫力,则可以创造冰面的…...
RIPEMD算法:多功能哈希算法的瑰宝
title: RIPEMD算法:多功能哈希算法的瑰宝 date: 2024/3/10 17:31:17 updated: 2024/3/10 17:31:17 tags: RIPEMD起源算法优势安全风险对比SHA优于MD5应用领域工作原理 一、RIPEMD算法的起源与历程 RIPEMD(RACE Integrity Primitives Evaluation Messag…...
如何学习ChatGPT?从入门到精通(附资料下载)
2023 ChatGPT从入门到精通视频教程(共30课).zip 学习ChatGPT需要涉及多个层面,包括理解其基本原理、掌握相关技术、以及进行实际的项目应用。以下是一些具体的学习步骤和建议: 理解ChatGPT的基本原理: 深入了解ChatGP…...
Linux安装MeterSphere并结合内网穿透实现公网远程访问本地服务
文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…...
【 React 】state和props有什么区别?
1. state 一个组件的显示形态可以由数据状态和外部参数所决定,而数据状态就是state,一般在constructor中初始化 当需要修改里面的值的状态需要通过调用setState来改变,从而达到更新组件内部数据的作用,并且重新调用组件render方法…...
So you think you understand IP fragmentation?
文章目录 前言一、Why care?二、Prevention三、Well-understood?四、Introducing fragquiz五、A novel (?) algorithm六、Reader challenge七、traceroute八、ICMP参考资料 前言 本文来自:https://lwn.net/Articles/960913/ February 7, 2024This article was …...
为什么main方法在Java中代表主线程?
main 方法在 Java 等编程语言中确实代表着程序的入口点,也就是程序开始执行的地方。当我们启动一个 Java 应用程序时,JVM(Java 虚拟机)会首先查找 main 方法,并从那里开始执行程序。 关于为什么 main 方法代表主线程&a…...
腾讯 后端 一面(115min)
> 3.3投递 3.5测评 3.7约面 > 03.07 技术架构团队 一. 面试官介绍部门 二. 自我介绍 三. 拷打项目 1. 为什么、怎么用微服务架构改写 2. token无感刷新 3. ipfs用来干什么 为什么又用了minio 4. 怎么用redis做缓存的,缓…...
Python错题集-8:AttributeError(找不到对应的对象的属性)
1问题描述 AttributeError: AxesSubplot object has no attribute arc 2代码详情 import matplotlib.pyplot as plt# 创建一个新的图形和坐标轴 fig, ax plt.subplots()# 定义弧线的参数 center (0.5, 0.5) # 圆心坐标 (x, y) width 1.0 # 半径 height 0.5 # 半径 ang…...
针对娃哈哈和农夫山泉,AI是如何看待的
娃哈哈和农夫山泉事件是中国饮料行业的两个重要事件。娃哈哈和农夫山泉都是中国知名的饮料品牌,两者之间的竞争一直存在。以下是对这两个事件的介绍: 1. 娃哈哈事件:娃哈哈是中国最大的饮料生产企业之一,也是中国最具影响力的品牌…...
Linux篇面试题 2024
目录 Java全技术栈面试题合集地址Linux篇1.绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令?2.怎么查看当前进程?怎么执行退出?怎么查看当前路径?3.怎么清屏&…...
Vue 监听器:让你的应用实时响应变化
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...
复制表
目录 复制表 将部门 30 的所有员工信息保存在 emp30 表中 将复杂查询结果创建为表 只将 emp 表的结构复制为 empnull 表 从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 复制表 严格来说,复制表不是复制操作&am…...
Kafka 面试题及答案整理,最新面试题
Kafka中的Producer API是如何工作的? Kafka中的Producer API允许应用程序发布一流的数据到一个或多个Kafka主题。它的工作原理包括: 1、创建Producer实例: 通过配置Producer的各种属性(如服务器地址、序列化方式等)来…...
qt带后缀单位的QLineEdit
QLineEditUnit.h #pragma once #include <QLineEdit> #include <QPushButton>class QLineEditUnit : public QLineEdit {Q_OBJECT public:QLineEditUnit(QWidget* parent Q_NULLPTR);~QLineEditUnit();//获取编辑框单位QString UnitText()const;//设置编辑框单位…...
堆宝塔(Python)
作者 陈越 单位 浙江大学 堆宝塔游戏是让小朋友根据抓到的彩虹圈的直径大小,按照从大到小的顺序堆起宝塔。但彩虹圈不一定是按照直径的大小顺序抓到的。聪明宝宝采取的策略如下: 首先准备两根柱子,一根 A 柱串宝塔,一根 B 柱用于…...
采用 Amazon DocumentDB 和 Amazon Bedrock 上的 Claude 3 构建游戏行业产品推荐
前言 大语言模型(LLM)自面世以来即展示了其创新能力,但 LLM 面临着幻觉等挑战。如何通过整合外部数据库的知识,检索增强生成(RAG)已成为通用和可行的解决方案。这提高了模型的准确性和可信度,特…...
论文阅读:Diffusion Model-Based Image Editing: A Survey
Diffusion Model-Based Image Editing: A Survey 论文链接 GitHub仓库 摘要 这篇文章是一篇基于扩散模型(Diffusion Model)的图片编辑(image editing)方法综述。作者从多个方面对当前的方法进行分类和分析,包括学习…...
数据结构:顺序表的奥秘
🎉个人名片: 🐼作者简介:一名乐于分享在学习道路上收获的大二在校生🐻❄个人主页🎉:GOTXX 🐼个人WeChat:ILXOXVJE🐼本文由GOTXX原创,首发CSDN&a…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...
消防一体化安全管控平台:构建消防“一张图”和APP统一管理
在城市的某个角落,一场突如其来的火灾打破了平静。熊熊烈火迅速蔓延,滚滚浓烟弥漫开来,周围群众的生命财产安全受到严重威胁。就在这千钧一发之际,消防救援队伍迅速行动,而豪越科技消防一体化安全管控平台构建的消防“…...
