Apache Iceberg 解析,一文了解Iceberg定义、应用及未来发展
什么是 Iceberg?
Apache Iceberg 是一种开源的 表格式(Table Format) ,专为超大规模数据分析场景设计,通过标准化数据存储规范与访问协议,解决了传统数据湖在元数据管理、事务控制、查询性能等方面的核心痛点。以下从六个维度全面解析其技术原理、应用场景与最佳实践。
一、为什么需要新的表格式?
传统数据湖面临的痛点
- 数据治理与管理能力不足:传统数据湖在数据治理和管理方面存在明显短板,缺乏严格的数据管理和治理能力,导致“数据沼泽”现象,即数据虽多但难以有效利用。此外,数据治理能力和全链路能力仍需进一步加强,客户方更需要智能化、一站式的解决方案。
- 性能瓶颈与实时性不足:传统数据湖的查询性能较低,难以支持实时数据分析的需求。在多源异构环境下,数据处理性能下降,影响企业应用效果。
- 存储成本与资源浪费:海量数据的存储和计算资源需求急剧上升,导致成本增加。同时,数据孤岛和重复存储问题进一步加剧了资源浪费。
- 技术架构与灵活性不足:传统数据湖架构复杂,难以适应快速变化的业务需求。例如,传统数据仓库强调结构化数据,而数据湖则对非结构化数据的支持有限。此外,传统数据湖的存储和计算耦合固定,缺乏弹性资源。
- 行业需求的多样化与复杂化:不同行业的应用场景对数据湖提出了更高的要求。例如,互联网、电信和金融行业需要更大的存储容量、更低的成本和更高的灵活性。游戏行业则面临数据存储难题、资源浪费和效率低下等问题。
行业需求演进
为应对上述痛点,行业逐步探索了湖仓一体化架构,结合了数据湖的低成本存储优势和数据仓库的数据处理功能。
- 实时数据湖:需支持 CDC(变更数据捕获)与增量更新,如金融风控场景要求分钟级延迟。
- 混合分析:OLAP 与事务处理融合,如电商需同时处理高并发订单写入与复杂分析查询。
- 跨引擎协作:统一存储层需兼容 Spark、Flink、StarRocks 等多引擎,避免数据孤岛。
传统数据湖的痛点主要集中在数据治理、性能、成本、安全和技术灵活性等方面。随着行业需求的不断演进,湖仓一体化架构成为解决这些问题的重要方向,能够更好地满足企业对高效、灵活和智能化的数据管理需求。
二、Iceberg 的核心设计理念
Iceberg 定义了数据文件、元数据、表结构的存储规范与访问协议,实现存储与计算解耦。Iceberg 的分层元数据架构是其核心设计之一,旨在高效管理大规模数据集并支持多种数据操作。
1. 元数据层次结构:
- 目录层:作为顶层组件,管理所有 Iceberg 表的元数据操作,提供创建、查询和修改表的接口。目录层通过目录文件保存每个表当前元数据文件的指针,并支持原子操作以确保事务的正确性和原子性。目录文件可以存储在 HDFS、Hive Metastore 和 Nessie 中。
- 元数据层:负责管理和存储表的关键信息,包括表的 schema、分区信息、快照和当前快照引用。元数据层通过清单文件(manifest file)管理数据文件,每个清单文件列出多个数据文件及其详细信息,如位置、快照 ID、分区范围和列信息。这种分层结构使得数据文件的并行读取和高效管理成为可能。
- 数据层:存储实际的数据文件,如 Parquet 或 ORC 格式。这些文件通过目录和元数据层的引用进行组织。
2. 元数据管理:
- Iceberg 的元数据管理包括元数据文件、快照和清单文件。元数据文件记录表的 schema、分区信息和快照引用,而清单文件则详细列出每个数据文件的位置和状态。这种分层设计确保了数据的一致性和事务的一致性。
- 元数据层支持版本控制和事务性写入,通过原子操作更新元数据,避免对实时表的影响。
3. 存储与兼容性:
- Iceberg 支持多种存储介质,包括 HDFS、S3、COS 等,并兼容多种文件格式(如 Parquet、ORC 和 AVRO)。用户可以通过配置外部卷来指定存储位置。
- 其分层元数据架构屏蔽了底层存储的差异,使得用户无需关心底层实现细节。
关键技术创新
- 时间旅行:通过快照机制,Iceberg 支持时间旅行功能,允许用户回溯到历史版本的数据。
- 架构演变:支持表结构的动态变更,如添加或删除列、重命名列等,而无需重新写入整个表。
- 一致性保证:通过 MVCC(多版本并发控制)机制,确保在并发写入时的数据一致性。
Iceberg 的分层元数据架构通过目录、元数据层和数据层的协同工作,实现了高效的数据管理和高性能的查询能力,同时支持事务一致性、时间旅行和架构演变等功能,为大规模数据湖提供了强大的技术支持。
三、主流生态集成与同类技术对比
同类技术对比(Iceberg vs Delta vs Hudi)
从最新 GitHub 数据来看,Iceberg 拥有 7000+星标和 2400+fork,社区活跃度和生态支持度持续增长。最新发布的 1.8.1 版本(2025 年 2 月)进一步增强了性能和兼容性。
维度 | Iceberg | Delta Lake | Apache Hudi |
开发厂商 | Netflix/Apache | Databricks | Uber/Apache |
流式支持 | 基于批次模拟 | 原生流式处理 | 增量拉取优化 |
模式演化 | 列级原子变更 | 受限模式修改 | 需要重写数据 |
查询优化 | 动态分区裁剪 | 数据跳过索引 | 全局索引系统 |
事务控制 | 乐观并发控制 | 表锁机制 | 基于时间线 |
生态兼容性 | 多引擎支持 | 深度绑定 Spark | 侧重 Spark 生态 |
适用场景 | 大规模分析型负载 | Databricks 生态 | 增量数据处理 |
主流生态集成
计算引擎 | 集成方式 | 版本要求 |
Apache Spark | spark.sql.catalog 实现 | Spark 3.x |
Apache Flink | Flink Catalog API | Flink 1.14+ |
StarRocks | Iceberg catalog | StarRocks 2.4+ |
Trino/Presto | Iceberg Connector | 需独立配置 |
Hive | Hive Metastore | Hive 4.0+ |
ClickHouse | 原生集成 | 最新版本 |
Dremio | 原生支持 | 企业版 |
Amazon Athena | 托管服务 | AWS 集成 |
此外,Iceberg 还提供了多语言 API 支持,包括 Java、Python (PyIceberg)、Rust、Go 和 C++,为不同开发环境提供灵活选择。
四、外部集成实践(以 StarRocks 为例)
StarRocks 从 2.4 版本开始支持 Iceberg 格式,允许用户直接查询和操作 Iceberg 表数据,无需手动创建表。用户可以通过 INSERT INTO 或异步物化视图将数据加工建模并导入 StarRocks,同时也可以从 StarRocks 侧创建或删除 Iceberg 库表。
StarRocks 支持读取 Iceberg v1 和 v2 格式的表(包括 pos-delete 和 eq-delete),并支持回写到 Iceberg。
集成方案
在配置 StarRocks 与 Iceberg 集成时,需确保 StarRocks 集群能够访问 Iceberg 的存储系统和元数据服务。支持的存储系统包括 HDFS、分布式文件系统(如 OSS)、Amazon S3 等,元数据服务包括 Hive Metastore、Hive AWS Glue 等。
创建 Iceberg 资源时,需要指定相关属性,如资源类型、存储位置、访问密钥等。例如,通过 MySQL 命令行工具连接到 StarRocks 集群后,可以使用 CREATE EXTERNAL CATALOG 语句创建 Iceberg 资源,并配置 AWS S3 的访问凭证。
另外,StarRocks 3.3 版本对 Iceberg 元数据查询模块进行了重构,提升了 Avro 格式文件解析性能,并通过 manifest 缓存减少了重复 I/O,显著提高了元数据访问性能。同时,支持对 Parquet 格式的 Iceberg v2 表进行 equality delete 操作,进一步优化了查询效率。
StarRocks 还支持对 Iceberg Catalog 的并行 Scan 逻辑重构,解决了原生 SDK 在处理大量元数据文件时的瓶颈问题。
StarRocks 与 Iceberg 的集成方案不仅提供了强大的数据查询和管理能力,还通过优化存储和计算架构显著提升了性能。相关技术文档可参考 StarRocks 官方发布的技术指南和社区讨论。
腾讯微信基于 StarRocks + Iceberg 的湖仓一体实践
背景与挑战:微信数据分析面临的挑战包含了海量数据的处理、要求极速的查询响应(TP90 在 5 秒内),以及需要实现计算和存储的统一
湖仓一体架构探索
1. 湖上建仓
从 Presto + Hive 演变为 StarRocks + Iceberg,实现了查询效率和数据时效性的显著提升:数据时效性从小时/天级提升至分钟级,查询效率从分钟级提升至秒级/分钟级。80%的大查询通过 StarRocks 秒级返回,剩余的超大查询通过 Spark 处理。
2. 仓湖融合
结合数仓和数据湖,通过跨源融合联邦查询的方式实现存储的一体化,无需 ETL 即可直接分析数据湖中的数据。数据实时接入数仓,冷存数据转移到数据湖,通过 Meta Server 实现仓湖元数据的统一管理。结合冷热数据读取和通用离线计算的支持,提升了数据查询响应速度和实时性。
3. 应用成效
- 湖仓一体架构已在微信的多个业务场景中实施,如视频号直播、微信键盘等,集群规模达数百台机器,数据接入量近千亿。
- 在直播业务场景中,数据开发任务数减半,存储成本降低 65%以上,离线任务产出时间缩短两小时。
五、未来演进方向
作为 Apache 基金会下的顶级项目,Iceberg 近年来在数据湖和数据工程领域展现出显著的技术前沿和生态发展趋势。
1. 技术优势与创新:
Iceberg 通过其开放的表格式标准,解决了传统数据湖在事务处理、实时性和数据一致性方面的痛点,支持 ACID 事务和流批一体的处理能力。
其设计允许高效的数据查询和管理,特别是通过 manifest 和 snapshot 机制实现高效的变更隔离和数据存储。
Iceberg 还引入了物化视图、时间旅行等新功能,进一步提升了数据湖的灵活性和扩展性。
2. 生态扩展与兼容性:
Iceberg 与多种主流计算引擎(如 Apache Spark、StarRocks、Amazon Athena、Snowflake 等)具有良好的兼容性,推动了数据湖技术的广泛应用。
3. 未来发展方向:
- 到 2025 年,Iceberg 将继续优化性能,提升用户体验,并致力于成为数据工程领域的开放表格式标准。
- 随着湖仓一体化趋势的推进,Iceberg 将进一步整合计算和存储资源,支持更复杂的数据分析场景。
参考文档与资料
官方文档:https://iceberg.apache.org
GitHub 仓库:apache/iceberg
最新动态:即将举办的 Iceberg Summit 2025(4 月 8-9 日)
Iceberg 凭借其技术创新、生态扩展和社区支持,在数据湖和数据工程领域展现出强大的生命力和发展潜力。未来,随着更多企业采用湖仓一体化架构,Iceberg 有望进一步巩固其在数据工程领域的核心地位。
相关文章:
Apache Iceberg 解析,一文了解Iceberg定义、应用及未来发展
什么是 Iceberg? Apache Iceberg 是一种开源的 表格式(Table Format) ,专为超大规模数据分析场景设计,通过标准化数据存储规范与访问协议,解决了传统数据湖在元数据管理、事务控制、查询性能等方面的核心痛…...
Ubuntu 优化启动时间优化
优化 Ubuntu 20.04 的启动时间可以从多个方面入手,以下是详细的步骤和建议: 一、分析启动耗时 首先检查系统启动各阶段的耗时: systemd-analyze time # 查看整体启动时间 systemd-analyze blame # 列出各服务/进程的启动耗时 …...
【Git 常用指令速查表】
Git 常用指令速查表 Git 常用指令速查表目录1. 初始化仓库2. 提交代码流程3. 分支管理4. 远程仓库操作5. 撤销操作6. 查看状态与日志7. 其他实用指令完整操作示例常用场景速查表 Git 常用指令速查表 目录 初始化仓库提交代码流程分支管理远程仓库操作撤销操作查看状态与日志其…...
Linux实用操作及命令
一、各类小技巧(快捷键) 1、强制停止(ctrlc) Linux某些程序的运行,如果想要强制停止它,可以使用快捷键ctrl c 命令输入错误,也可以通过快捷键ctrl c,退出当前输入,重…...
洛谷 P10516 数据结构 Solution
Description 给定序列 a ( a 1 , a 2 , ⋯ , a n ) a(a_1,a_2,\cdots,a_n) a(a1,a2,⋯,an) 和 b ( b 1 , b 2 , ⋯ , b n ) b(b_1,b_2,\cdots,b_n) b(b1,b2,⋯,bn),有 m m m 个操作分三种: add ( l , r , k , t ) \operatorname{ad…...
在IDEA中使用TortoiseSVN
一、前言 原版SVN由于下载路径中没有svn.exe文件,导致IDEA中无法使用命令行提交项目代码,因此,现在卸载旧版本TortoiseSVN,下载附有svn.exe的新版TortoiseSVN,下载使用过程记录如下 二、下载过程 卸载就在 控制面板…...
基于 ffmpeg 实现合并视频
ffmpeg是一个强大的多媒体处理工具,支持视频文件的合并。 列出目录下所有MP4文件 import os import glob# 当前目录 directory os.getcwd() directory "/directory/to/mp4/*"# 列出目录下所有MP4文件 files glob.glob(directory)# 排序 files.sort(…...
如何在 HTML 中嵌入外部字体,有哪些注意事项?
大白话如何在 HTML 中嵌入外部字体,有哪些注意事项? 在 HTML 里嵌入外部字体,能让网页文字更有个性,瞬间提升页面的吸引力。下面就来详细说说怎么嵌入外部字体,以及其中的注意事项。 嵌入外部字体的方法 1. 使用 fo…...
三极管原理及应用
一、结构 基极(Base,符号:B) 基极是三极管的控制端,用于输入控制信号。通过基极电流的大小,可以控制集电极与发射极之间的电流导通程度,实现电流放大或开关功能。 发射极(Emitter&…...
三个串口同时打开并指定数据包控制指令思想
可以对嵌入式串口数据包指令设置做一次总结: 首先确定你的数据包大小,传统的接收串口数据到数组存储会出现需要循环遍历数组去读取数据的弊端,所以我设计了一个机制,只有当你想要读取外界指令时,才开始读取外界发过来…...
“征服HTML引号恶魔:“完全解析手册”!!!(quot;表示双引号)
🚨📢 "征服HTML引号恶魔:“完全解析手册” 📢🚨 🎯 博客引言:当引号变成"恶魔" 😱 是否遇到过这种情况: 写HTML时满心欢喜输入<div title"他…...
MQL5教程 04 脚本开发实战、指标开发基础
文章目录 一、脚本开发实战1、给脚本设置快捷键2、运行时显示输入参数界面3、开市价单4、一键平仓5、修改止盈止损6、一键删除当前图表所有挂单 二、指标开发基础 一、脚本开发实战 1、给脚本设置快捷键 在MT5导航栏中,选定脚本,鼠标右击 → 设置热键 …...
【Qt】Ubuntu22.04使用命令安装Qt5和Qt6
1、安装Qt5 注意:Ubuntu22.04已经没有 qt5-default ,因此不能一键安装啦 1)安装核心组件 sudo apt install qtbase5-dev qtchooser qt5-qmake qtcreator2)安装QtCreator sudo apt install qtcreator3)安装工具包、Qt Quick 开发的核心库(qtdeclarative5-dev) sudo a…...
海康设备http监听接收报警事件数据
http监听接收报警事件数据 海康获取设备报警事件数据两种方式: 1、sdk 布防监听报警事件数据(前面文章有示例) 2、http监听接收报警事件数据 http监听接收报警事件数据,服务端可以使用netty通过端口来监听获取事件数据。 WEB 端…...
【MVCC快照如何实现】
MVCC(多版本并发控制)快照的实现原理 MVCC(Multi-Version Concurrency Control)是现代数据库实现事务隔离级别的核心技术,它通过数据多版本和快照机制来实现高效的并发控制。下面我将详细解析MVCC快照的实现机制。 一、MVCC核心组件 1. 版本链结构 MVCC通过以下…...
STM32中不同FLASH的芯片启动文件选择规则
F103ZET6的FLASH大小是512K,所以选择startup_stm32f10x_hd.s F103C8T6的FLASH大小是64K,所以选择startup_stm32f10x_md.s 移植需要注意的事项: 从ZET6到C8T6,需要更改 1)启动文件 2)C/C选项卡...
树莓集团商业模式解析:树莓集团是国企吗?
树莓集团作为中国市场的重要企业实体,其所有制性质一直受到业界关注。从公开资料显示,树莓集团并非传统意义上的国有企业,而是一家具有混合所有制特征的现代化企业集团。其股权结构中既包含国有资本成分,也吸纳了社会资本和民营投…...
mock.js模拟数据
MOCK模拟后端数据 1.按照mock.js npm install mockjs2.在src目录下建立mock目录,在该目录下建立index.js文件,该文件中写上你所需要的数据,示例如下: import Mock from mockjs let data Mock.mock("/data/person",&…...
如何自动规整化(格式化)HTML
如果你想要自动规整化(格式化)HTML,可以使用以下方法: 方法 1:使用 VS Code 进行 HTML 格式化(推荐) 步骤 安装 Visual Studio Code打开你的 HTML 文件按下 Shift Alt F(Windows…...
MySQL数据库入门
目录 前言 一、安装软件 二、普通指令使用 三、MySQL接口API相关函数 1、API函数使用步骤 2、mysql_init-MYSQL对象初始化 3、mysql_real_connect()——数据库引擎建立连接 4、mysql_close()——关闭数据库连接 5、mysql_query()——查询数据库某表内容 6、mysql_stor…...
SpringBoot集成Couchbase开发与实践
1 前言 1.1 什么是Couchbase Couchbase 是一个高性能的 NoSQL 数据库,支持文档存储、内存缓存和分布式计算。它结合了内存数据库的速度和灵活性与传统数据库的持久性和查询能力。 1.2 Couchbase的特点与优势 高性能:利用内存缓存加速数据访问。可扩展性:支持水平扩展,能…...
一周掌握Flutter开发--8. 调试与性能优化(上)
文章目录 8. 调试与性能优化核心技能8.1 使用 Flutter DevTools 分析性能8.2 检查 Widget 重绘(debugPaintSizeEnabled)8.3 解决 ListView 卡顿(ListView.builder itemExtent) 其他性能优化技巧8.4 减少 build 方法的调用8.5 使用…...
动态路由机制MoE专家库架构在多医疗AI专家协同会诊中的应用探析
随着医疗人工智能技术的飞速进步,AI在医学领域的应用日益增多,尤其是在复杂疾病的诊断和治疗中,AI技术的应用带来了巨大的潜力。特别是动态路由机制混合专家(Mixture of Experts,MoE)架构,因其灵活、高效的特点,正逐渐成为实现多AI专家协同会诊的关键技术。通过将多个不…...
Linux上位机开发实践(开源框架和开源算法)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 做嵌入式软件开发,如果软件本身比较简单,只是图形界面显示,那么相关的开发工作并不难。最主要的内容也就是数据…...
算法时间复杂度分析
1. 基本概念 大 O 符号 O(f(n)) 表示算法的最坏情况复杂度,即算法在最不利情况下所需的基本操作数不会超过 O(f(n))的级别。例如,表示当输入规模 n 增大时,算法运行时间上界是某个常数乘以 。 Ω 符号 Ω(f(n)) 表示算法的下界,即…...
数据库基础知识点(系列五)
创建表,设置约束,修改表,删除表,表中数据的操作(insert,修改,删除) 1.在第5章习题创建的 “仓库库存”数据库中完成下列操作。 (1)创建“商品”表,表结构如表6-4: 表6-4 “goods”…...
C++中使用ShellExecute函数调用其他窗口程序时,参数设置为隐藏,后续能通过发消息给这个被调用程序显示,能显示出来窗口吗
文章目录 一、可行性分析二、实现步骤1. 启动程序并隐藏窗口2. 获取目标窗口句柄3. 发送消息显示窗口方法1:发送WM_SHOWWINDOW方法2:发送WM_SYSCOMMAND恢复窗口方法3:直接调用ShowWindow(推荐) 三、代码示例四、关键注…...
使用 AI 生成 页面
当前使用的是 火山引擎 提供的 deepseek-v3-241226 思考 如何让AI可以按自己的想法一步步生成页面? 我们要把要生成的内容分段的给到它,让它按步聚完成。 如生成一个列表页 依据所定义的接口。生成API依赖定义接口 生成 状态管理模块依赖上状态管理…...
【人工智能】机器学习中的评价指标
机器学习中的评价指标 在机器学习中,评估指标(Evaluation Metrics)是衡量模型性能的工具。选择合适的评估指标能够帮助我们更好地理解模型的效果以及它在实际应用中的表现。 一般来说,评估指标主要分为三大类:分类、…...
shell脚本运行方式 bash 和./区别
在 Linux 或 macOS 这类基于 Unix 的系统里,使用 ./ 运行脚本和使用 bash 运行脚本存在一些差异,下面为你详细说明: 1. 语法与使用方式 使用 ./ 运行脚本: 若要使用 ./ 来运行脚本,需要确保脚本文件具备可执行权限&a…...
ShardingSphere+达梦数据库分表操作
背景 随着数字经济时代的全面到来,数据量呈现爆炸式增长,传统单机数据库在性能、扩展性和可用性方面面临严峻挑战。分布式数据库技术应运而生,成为解决海量数据存储与处理的关键方案。在这一背景下,Apache ShardingSphere作为一款…...
WordPress上传图片时显示“未提供数据”错误
在WordPress中上传图片时显示“未提供数据”的错误,通常是由多种原因引起的,以下是一些常见的问题及其解决方法: 1. 文件权限问题 WordPress需要正确的文件和目录权限才能正常上传图片。如果权限设置不正确,可能会导致无法上传图…...
AP CSA FRQ Q2 Past Paper 五年真题汇总 2023-2019
Author(wechat): bigshuang2020 ap csa tutor, providing 1-on-1 tutoring. 国际教育计算机老师, 擅长答疑讲解,带学生实践学习。 热爱创作,作品:ap csa原创双语教案,真题梳理汇总, AP CSA FRQ专题冲刺, AP CSA MCQ小题…...
海量数据场景题--查找两个大文件的URL
查找两个大文件共同的URL 给定 a、b 两个文件,各存放 50 亿个 URL,每个 URL 各占 64B,找出 a、b 两个文件共同的 URL。内存限制是 4G。 操作逻辑: 使用哈希函数 hash(URL) % 1000 将每个URL映射到0-999的编号 文件A切割为a0, a1…...
Spring AI Alibaba 工具(Function Calling)使用
一、工具(Function Calling)简介 Spring AI Alibaba工具(Function Calling):https://java2ai.com/docs/1.0.0-M6.1/tutorials/function-calling/ 1、工具(Function Calling) “工具(Tool)”或“功能调用(Function Calling…...
汽车方向盘开关功能测试的技术解析
随着汽车智能化与电动化的发展,方向盘开关的功能日益复杂化,从传统的灯光、雨刷控制到智能语音、自动驾驶辅助等功能的集成,对开关的可靠性、耐久性及安全性提出了更高要求。本文结合北京沃华慧通测控技术有限公司(以下简称“慧通…...
9-100V输入替代CYT5030/LM5030高压双路电流模式PWM控制器
产品描述: PC3530高压 PWM 控制器包含实现推挽和桥式拓扑所需的所有功能,采用电流模式控制,提供两个交替栅极驱动器输出。PC3530内置高压启动稳压器,可在 9V~100V 的宽输入电压范围内工作。芯片内部还集成有误差放大器、精密基准、两级过流保…...
详细讲解c++中线程类thread的实现,stl源码讲解之thread
Thread 本节我们来详细介绍一下c中的线程类thread,在讲解的过程中会用到大量模板的知识,可以去看c详解模板泛型编程,详解类模板的实现为什么不能放在cpp文件_泛型函数 cpo-CSDN博客 源码: template <class _Fn, class... _Args, enable_…...
PostgreSQL详解
第一章:环境部署与基础操作 1.1 多平台安装详解 Windows环境 图形化安装 下载EnterpriseDB安装包(含pgAdmin) 关键配置项说明: # postgresql.conf优化项 max_connections 200 shared_buffers 4GB work_mem 32MB 服务管理命…...
系统思考—第五项修炼
感谢【汇丰】邀请,为其高阶管理者交付系统思考系列项目。这不仅是一次知识的传递,更是一次认知的升级。 系统思考,作为《第五项修炼》的核心能力,正在帮助越来越多的管理者突破碎片化决策的困局,建立看见全貌的智慧与…...
如何使用QuickAPI生成带参数的数据API(基于原生SQL)
目录 一、示例表结构 二、准备工作 三、创建带参数的数据API 步骤 1:登录 QuickAPI 平台 步骤 2:连接数据库 步骤 3:配置基础信息 步骤 4:编写 SQL 并添加参数 步骤 5:测试并发布API 步骤 6:验证A…...
RHINO 转 STL,解锁 3D 打印与工业应用新通道
一、RHINO 格式介绍 RHINO 是一款功能强大的三维建模软件,其对应的文件格式(.3dm)能够精确地存储复杂的三维模型数据。它支持多种几何类型,包括 NURBS(非均匀有理 B 样条曲线)、多边形网格等。这种格式的优…...
PySide6属性选择器设置样式避坑
总所周知,Qt中qss语法支持属性选择器,通过setProperty设置key和value,支持在多种样式之前切换。今天使用了一下PySide6的属性选择器,发现了一个问题。完整代码见最后。 首先,先写一段qss样式,用来设置按键样…...
BKA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN四模型多变量时序光伏功率预测,附模型报告
BKA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN四模型多变量时序光伏功率预测,附模型报告 目录 BKA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN四模型多变量时序光伏功率预测,附模型报告预测效果基本介绍程序设计参考资料 预测效果 基本介绍 BKA-CNN-BiLSTM、CNN-…...
ADS 学习和培训资源 - Keysight ADS
在 Signal Edge Solutions,我们是 Keysight ADS 的忠实用户,因此我们明白,使用和学习这款强大的仿真工具有时可能非常困难。 因此,我们编制了一份清单,列出了一些我们最喜欢的 ADS 学习和培训资源,以帮助您…...
【leetcode刷题记录】(java)数组 链表 哈希表
文章目录 四、题目之:代码随想录(1) 代码随想录:数组[704. 二分查找](https://leetcode.cn/problems/binary-search/)[27. 移除元素](https://leetcode.cn/problems/remove-element/)暴力解:双指针: [977. 有序数组的平方](https://leetcode.…...
ngx_http_core_root
定义在 src\http\ngx_http_core_module.c static char * ngx_http_core_root(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) {ngx_http_core_loc_conf_t *clcf conf;ngx_str_t *value;ngx_int_t alias;ngx_uint_t …...
大模型在支气管肺癌预测及临床决策中的应用研究报告
目录 一、引言 1.1 研究背景与意义 1.2 研究目的 二、大模型预测支气管肺癌的原理与技术基础 2.1 大模型简介 2.2 数据收集与预处理 2.3 模型训练与优化 三、术前预测 3.1 病情评估 3.1.1 肿瘤大小、位置及分期预测 3.1.2 转移风险预测 3.2 手术风险预测 3.2.1 患…...
机器人原点丢失后找回原点的解决方案与步骤
机器人原点丢失后找回原点的解决方案与步骤 在机器人运行过程中,原点丢失可能导致定位错误、运动失控等问题,常见于机械臂、AGV(自动导引车)、3D打印机等设备。以下是针对原点丢失问题的系统性解决方案及详细步骤,涵盖…...
CSS SEO、网页布局、媒体查询
目录 一、SEO 头部三大标签 1. Title 标签(标题) 核心作用 优化规范 示例 2. Meta Description(描述) 核心作用 优化规范 示例 3. Viewport 标签(视口) 核心作用 优化规范 4. 完整 SEO 头部模…...