数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)
数据库管理287期 2025-01-24
- 数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)
- 1 AI向量搜索:算术和聚合运算
- 2 更改Compatible至23.6.0,以使用23.6或更高版本中的新AI向量搜索功能
- 3 Cloud Developer包
- 4 DBMS_DEVELOPER.GET_METADATA:用于检索数据库对象元数据的API
- 5 PL/SQL中的维度算法支持
- 6 二元性视图放宽
- 7 JavaScript调用PL/SQL代码单元的外部函数接口
- 8 JSON的混合向量索引
- 9 数据库内算法支持VECTOR数据类型预测器
- 10 相邻分区向量索引中的包含列
- 11 JSON类型修饰符增强功能:Limit子句
- 12 JSON到二元性迁移:多集合导入API
- 13 JSON到二元性迁移:架构和数据的验证
- 14 物化表达式列
- 15 在分片空间之间移动数据块(chunk)
- 16 PL/SQL BINARY向量支持
- 17 PL/SQL JACCARD距离支持
- 18 SQL时间分通
- 19 AI向量搜索的分片支持
- 20 小文件表空间缩小
- 21 使用数据库内ONNX运行时支持具有AI向量搜索的图像转换模型
- 22 外部表中的向量数据类型支持
- 总结
数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)
作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database
PostgreSQL ACE Partner10年数据库行业经验
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP,ITPUB认证专家
圈内拥有“总监”称号,非著名社恐(社交恐怖分子)公众号:胖头鱼的鱼缸
CSDN:胖头鱼的鱼缸(尹海文)
墨天轮:胖头鱼的鱼缸
ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭

又到了一季度一次的Oracle DB 23ai新特性更新时间,前面的可以查看:
数据库管理-第225期 Oracle DB 23.5新特性一览(20240730)
数据库管理-第256期 Oracle DB 23.6新特性一览(20241031)
1 AI向量搜索:算术和聚合运算
就像您可以对日期、时间戳、间隔和数字进行加(+)、减(-) 或乘(*) 一样,您现在可以将这些算术运算符应用于向量。算术运算在向量的每个维元素上执行。还可以计算一组向量的SUM或AVG。
向量上的算术运算使AI系统能够操纵和组合抽象概念,从而增强它们以更复杂的方式理解和处理语言或数据的能力。
2 更改Compatible至23.6.0,以使用23.6或更高版本中的新AI向量搜索功能
从Oracle Database 23ai(23.6)开始,在版本更新(RU)23.6或更高版本中引入了使用新AI向量搜索功能的能力。
RU 23.6中的 COMPATIBLE 参数:
- 直接安装Oracle Database 23ai Release Update 23.6的新用户:
- 23.6 RU全新安装并使用db create时,COMPATIBLE参数默认设置为23.6.0。
- 安装后,您将无法将COMPATIBLE参数降级为较低的值。
- 使用Oracle Database 23ai Release Update 23.4 和 23.5的客户:
- 修补之前,COMPATIBLE参数可以是 23.0.0、23.4.0 或 23.5.0。
- 安装23.6版本更新时(即修补到 RU 23.6 时),要访问新的Vector DB功能,您必须手动将COMPATIBLE参数设置为23.6.0。
- 注意:在RU 23.6.0中,更新COMPATIBLE参数需要停机。它不会在修补过程中自动完成。您必须选择更新数据库COMPATIBLE设置。
- 使用Oracle Database 19c或21c的客户:
- 将数据库升级到 Oracle Database 23ai 时,COMPATIBLE参数仍与源数据库中的先前设置相同。
- 如果要使用新的 Vector DB 功能,则必须手动将COMPATIBLE参数设置为23.6.0。
- 注意:升级到23ai允许的最低COMPATIBLE为19.0.0。换句话说,您不能直接从Oracle Database 12c或18c升级到Oracle Database 23ai。
3 Cloud Developer包
Cloud Developer包提供内置工具,可无缝连接、处理和集成云服务。这些软件包(即DBMS_CLOUD、DBMS_CLOUD_PIPELINE、DBMS_CLOUD_REPO、DBMS_CLOUD_NOTIFICATION和DBMS_CLOUD_AI)可轻松访问云存储数据、通过管道自动化工作流、触发事件通知,并将AI/ML功能直接集成到数据库中。它们共同为现代云就绪数据库应用程序提供支持,同时简化复杂的云交互。
Cloud Developer包使企业能够处理存储在云中的数据、处理实时数据并使用AI/ML等高级工具,从而受益于云功能。这种方法有助于简化操作,并特别支持本地和云系统的混合。
4 DBMS_DEVELOPER.GET_METADATA:用于检索数据库对象元数据的API
这个API提供了一种开发人员友好的方式来检索数据库对象(例如表、视图和索引)的元数据。API检索每个数据库对象的数据字典中存在的大多数(如果不是全部)信息。它支持多个详细级别,BASIC、TYPICAL和ALL,使客户能够仅获取所需的信息。
截至目前,客户使用DBMS_METADATA+不同字典表和视图查询的组合来构建对象信息。但是,DBMS_METADATA会显示大量不合逻辑的信息,这些信息对于应用程序开发和低代码来说毫无用处。DBMS_METADATA 非常慢(需要几秒钟)并且面向XML,这对开发人员来说并不友好。DBMS_DEVELOPER.GET_METADATA解决了这个问题。
该API的主要优点是:
- 性能:我们期望大多数查询的解析时间在几毫秒内。这对于基于Oracle数据库构建的开发人员工具(例如 VSCode扩展和SQLcl)非常有利,因为这些工具会重复检索对象信息,从而导致糟糕的用户体验。
- 简单性:API以JSON格式返回元数据,这种格式具有自描述性且易于理解。使用JSON作为返回格式可使此 API 轻松与开发人员工具和服务集成。
5 PL/SQL中的维度算法支持
现在,PL/SQL中的向量可以采用加法(+)、减法(-)和乘法(*)。算术运算在向量的每个维元素上执行。
向量上的算术运算使 AI 系统能够操纵和组合抽象概念,从而增强其以更复杂的方式理解和处理语言或数据的能力。PL/SQL对向量算术的支持为开发人员提供了一种在PL/SQL块和函数中应用这些运算的方法,而无需调用SQL。
6 二元性视图放宽
在 JSON 关系二元性视图 DDL 中,用户可以执行以下操作:
- 在子对象中使用字段名称“_id”来标识选择要更新的行的列(即使它没有UK或PK约束)
- 使用标识列作为标识列
额外的DDL可能性允许JSON关系二元性视图支持更多用例。
7 JavaScript调用PL/SQL代码单元的外部函数接口
外部函数接口(Foreign Function Interface,FFI)允许JavaScript开发人员使用更熟悉的语法来调用用PL/SQL编写的代码单元。可以使用本机JavaScript构造与大多数用PL/SQL编写的代码进行交互,而不是使用PL/SQL块。
使用FFI可以简化将PL/SQL代码集成到JavaScript函数的过程,从而为JavaScript开发人员提供更好的体验。
8 JSON的混合向量索引
混合向量索引允许用户使用全文搜索和语义向量搜索的组合轻松地索引和查询其文档,以获得更高质量的搜索结果。现在可以在JSON列上构建混合向量索引。
在JSON列上创建混合向量索引可提供统一的查询API,允许用户运行利用这两种方法的文本查询、向量相似性查询或混合查询。这让用户可以轻松自定义搜索体验并增强搜索结果。
9 数据库内算法支持VECTOR数据类型预测器
此功能使用户能够将一个或多个VECTOR数据类型的列作为预测因子以及结构化企业数据添加到数据库内的机器学习算法中。
非结构化数据的向量表示可以成为传统机器学习算法的强大输入。它们可以对文本和图像数据进行高效的数据处理,有助于加快数据驱动的决策。将向量作为机器学习模型的输入可以处理更广泛的用例。
10 相邻分区向量索引中的包含列
包含列(Included Columns)是指存储在相邻分区向量索引中的附加表列,用于通过消除从基表访问这些列的需要来优化查询执行。
复杂的工作负载通常将关系列上的业务数据搜索与向量相似性搜索相结合。通过将属性过滤器与基于向量的相似性搜索集成在一起,在相邻分区向量索引中包含列可显著增强企业搜索功能。这种集成允许通过直接评估属性过滤器和向量搜索来高效执行复杂查询,从而消除了通过昂贵的连接访问基表的需要。此外,当索引将查询所需的所有列作为覆盖列包含时,可以直接从索引中检索数据,从而加快查询性能。
11 JSON类型修饰符增强功能:Limit子句
JSON类型的Limit子句允许限制可插入JSON类型列的JSON数据的大小。其思想类似于指定varchar2字节存储大小。
如果已知JSON数据不超过一定量,则可以优化执行以提高效率。
12 JSON到二元性迁移:多集合导入API
PL/SQL过程DBMS_JSON_DUALITY.IMPORT_ALL用于将多个文档集合导入JSON关系二元性视图。
在单个PL/SQL调用中导入多个集合使导入过程更简单,并避免了约束违规错误。
13 JSON到二元性迁移:架构和数据的验证
PL/SQL函数DBMS_JSON_DUALITY.VALIDATE_SCHEMA_REPORT和VALIDATE_IMPORT_REPORT用于验证JSON-To-Duality Migrator创建和导入的关系模式和数据。
验证API可帮助用户在将文档集合迁移到二元性视图时验证推荐的关系模式是否正确且没有数据丢失。
14 物化表达式列
表达式列(Expression columns,也称为虚拟列)是从现有列派生(计算)的附加列。它们可以保留(具体化)在磁盘上,补充仅在运行时计算结果的现有默认功能。
在表达式列的运行时计算和DML时计算之间进行选择,可以更灵活地为应用程序选择正确的方法。
具体化表达式列以磁盘存储换取反复计算相同表达式的需要。
15 在分片空间之间移动数据块(chunk)
使用Oracle全球分布式数据库复合分片方法,数据被组织到不同的分片空间中,允许您区分数据子集;但是,任何用于负载平衡的自动块移动都发生在分片空间内。在此版本中,Oracl 全球分布式数据库为您提供了将数据块从现有分片空间移动到另一个分片空间的能力。
此功能使您能够在现有分片空间之间移动数据,或将某些数据移动到新添加的分片空间。您可以根据新的业务需求安排分片数据,例如为某些客户提供新级别的服务或资源,或者将客户从一类服务转移到另一类服务,同时保持区域数据主权。
16 PL/SQL BINARY向量支持
PL/SQL支持BINARY作为向量类型的新维度格式,与SQL一致。BINARY向量经常用于表示某个实体(例如文本文档)是否包含某些特征、列表词或术语。
BINAR 格式的优势有两方面。与默认的FLOAT32向量相比,向量的存储空间可以减少3倍。BINARY向量上的距离计算速度最高可提高40倍。
支持BINARY向量意味着 PL/SQL 将能够以与支持任何其他维度格式的向量相同的方式处理二进制向量。
17 PL/SQL JACCARD距离支持
PL/SQL现在支持JACCARD距离度量,它提供两个BINARY向量之间的相似度度量,其值为0到1。
Jaccard距离是二元向量的常见相似度度量。PL/SQL VECTOR_DISTANCE运算符支持Jaccard作为新度量,这意味着 PL/SQL代码可以在PL/SQL中使用JACCARD距离度量,而不必调用 SQL。
18 SQL时间分通
时间分桶是处理时间序列或事件流数据时的一种常见操作,其中任意定义的时间窗口内的一系列数据点需要映射到特定的固定时间间隔(桶)以进行聚合分析。
借助新的 SQL 运算符 TIME_BUCKET,Oracle为DATETIMES的时间数据时间分桶提供了本机和高性能支持。
为时间序列数据的常见固定时间间隔分桶提供本机SQL运算符可显著简化此类信息的应用程序开发和数据分析。除了更简单、更不容易出错的代码之外,本机运算符还提高了时间序列分析的性能。
19 AI向量搜索的分片支持
借助对向量搜索的分片支持,包含向量的表会自动分布和复制到不共享硬件的Oracle数据库池中。相似性搜索会自动在分片之间并行化,或者如果提供了分片键,则指向特定分片。
分片AI向量搜索提供了几个关键优势,包括通过允许向量分布在多台机器上来提高可扩展性,通过跨分片并行化向量搜索来提高性能,以及提高数据弹性,因为如果一个分片出现故障,其他分片可以继续运行。它还允许将向量搜索部署为全局数据库的一部分,其中单个逻辑数据库分布在多个地理位置。
20 小文件表空间缩小
此功能提供了可靠地缩小小文件表空间的能力。
在早期版本中,组织可能会发现小文件表空间的数据文件变大,尽管实际使用的空间要小得多。 这可能发生在用户删除表空间中的段或对象之后,但根据数据在数据文件中的位置,用户并不总是能够使用数据文件调整大小来恢复释放的空间。
通过使用小文件表空间缩小,您现在可以预期小文件表空间大小接近该表空间中所有段和对象的大小总和。您现在可以可靠地缩小小文件表空间,这意味着改进存储优化并降低存储成本。
21 使用数据库内ONNX运行时支持具有AI向量搜索的图像转换模型
此功能支持导入和使用图像转换模型,以使用23ai中提供的数据库内ONNX运行时引擎。图像转换器模型必须采用 ONNX格式,并包含所需的图像解码和预处理作为ONNX管道的一部分。
Oracle Database 23ai最初支持句子转换器,用于数据库内ONNX运行时和AI向量搜索。这仅支持为文本生成向量。借助对图像转换模型的支持,用户现在可以使用AI向量搜索进行涉及图像的语义相似性搜索,以支持更广泛的用例。
22 外部表中的向量数据类型支持
现在可以轻松访问存储在数据库外部(在文件系统或云对象存储中)的向量数据,以使用外部表执行相似性搜索。只需在存储向量嵌入的外部文件上创建一个带有VECTO 数据类型列的外部表即可。创建后,即可使用标准SQL执行相似性搜索。
可以使用外部表和标准SQL快速轻松地加载在数据库外部创建的向量嵌入。还可以对存储在数据库外部的向量嵌入运行相似性搜索,并将这些搜索与存储在数据库内的数据无缝结合。
总结
Oracle DB 23.7带来了不少传统功能以及AI Vector DB/Search相关功能的增强。
老规矩,知道写了些啥。
相关文章:
数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)
数据库管理287期 2025-01-24 数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)1 AI向量搜索:算术和聚合运算2 更改Compatible至23.6.0,以使用23.6或更高版本中的新AI向量搜索功能3 Cloud Developer包4 DBMS_DEVELOPER.GET_…...
LruCache实现
LRU最近最少使用算法 一、LRU算法 1.简介 LRU(Least Recently Used,最近最少使用)算法是一种常用的缓存淘汰策略,当缓存达到其容量上限时,它会移除那些最久没有被访问的数据项。这种策略基于这样一个假设࿱…...
DDD架构实战第五讲总结:将领域模型转化为代码
云架构师系列课程之DDD架构实战第五讲总结:将领域模型转化为代码 一、引言 在前几讲中,我们讨论了领域模型的重要性及其在业务分析中的渐进获得方法。本讲将聚焦于如何将领域模型转化为代码,使得开发人员能够更轻松地实现用户的领域模型。 二、从模型到代码:领域驱动设计…...
【MySQL】MySQL客户端连接用 localhost和127.0.0.1的区别
# systemctl status mysqld # ss -tan | grep 3306 # mysql -V localhost与127.0.0.1的区别是什么? 相信有人会说是本地IP,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。 看来这个入门问题还有人不清楚,其实…...
蓝桥杯例题五
无论你面对多大的困难和挑战,都要保持坚定的信念和积极的态度。相信自己的能力和潜力,努力不懈地追求自己的目标和梦想。不要害怕失败,因为失败是成功的垫脚石。相信自己的选择和决策,不要被他人的意见和批评左右。坚持不懈地努力…...
DeepSeek R1本地部署详细指南
DeepSeek R1 是由中国 AI 初创公司深度求索开发的先进推理模型,其性能在数学、编码和逻辑推理等任务上表现出色。在本地部署该模型可以带来更低的延迟、更高的隐私性以及对 AI 应用的更大控制权。本文将详细介绍如何在本地环境中部署 DeepSeek R1 模型。 前提条件 …...
MySQL(高级特性篇) 14 章——MySQL事务日志
事务有4种特性:原子性、一致性、隔离性和持久性 事务的隔离性由锁机制实现事务的原子性、一致性和持久性由事务的redo日志和undo日志来保证(1)REDO LOG称为重做日志,用来保证事务的持久性(2)UNDO LOG称为回…...
爬虫基础(五)爬虫基本原理
目录 一、爬虫是什么 二、爬虫过程 (1)获取网页 (2)提取信息 (3)保存数据 三、爬虫可爬的数据 四、爬虫问题 一、爬虫是什么 互联网,后面有个网字,我们可以把它看成一张蜘蛛网…...
【Block总结】HWD,小波下采样,适用分类、分割、目标检测等任务|即插即用
论文信息 Haar wavelet downsampling (HWD) 是一项针对语义分割的创新模块,旨在通过减少特征图的空间分辨率来提高深度卷积神经网络(DCNNs)的性能。该论文的主要贡献在于提出了一种新的下采样方法,能够在下采样阶段有效地减少信息…...
【解决方案】MuMu模拟器移植系统进度条卡住98%无法打开
之前在Vmware虚拟机里配置了mumu模拟器,现在想要移植到宿主机中 1、虚拟机中的MuMu模拟器12-1是目标系统,对应的目录如下 C:\Program Files\Netease\MuMu Player 12\vms\MuMuPlayer-12.0-1 2、Vmware-虚拟机-设置-选项,启用共享文件夹 3、复…...
力扣面试150 快乐数 循环链表找环 链表抽象 哈希
Problem: 202. 快乐数 👩🏫 参考题解 Code public class Solution {public int squareSum(int n) {int sum 0;while(n > 0){int digit n % 10;sum digit * digit;n / 10;}return sum;}public boolean isHappy(int n) {int slow n, fast squa…...
安卓(android)实现注册界面【Android移动开发基础案例教程(第2版)黑马程序员】
一、实验目的(如果代码有错漏,可查看源码) 1.掌握LinearLayout、RelativeLayout、FrameLayout等布局的综合使用。 2.掌握ImageView、TextView、EditText、CheckBox、Button、RadioGroup、RadioButton、ListView、RecyclerView等控件在项目中的…...
SpringSecurity:There is no PasswordEncoder mapped for the id “null“
文章目录 一、情景说明二、分析三、解决 一、情景说明 在整合SpringSecurity功能的时候 我先是去实现认证功能 也就是,去数据库比对用户名和密码 相关的类: UserDetailsServiceImpl implements UserDetailsService 用于SpringSecurity查询数据库 Logi…...
微服务入门(go)
微服务入门(go) 和单体服务对比:里面的服务仅仅用于某个特定的业务 一、领域驱动设计(DDD) 基本概念 领域和子域 领域:有范围的界限(边界) 子域:划分的小范围 核心域…...
996引擎 - NPC-动态创建NPC
996引擎 - NPC-动态创建NPC 创建脚本服务端脚本客户端脚本添加自定义音效添加音效文件修改配置参考资料有个小问题,创建NPC时没有控制朝向的参数。所以。。。自己考虑怎么找补吧。 多重影分身 创建脚本 服务端脚本 Mir200\Envir\Market_Def\test\test001-3.lua -- NPC八门名…...
使用 MySQL JSON 查询筛选嵌套字段的值
在日常开发中,随着项目需求的不断复杂化,许多表字段可能会存储 JSON 格式的数据。例如,我们有一张 site_device 表,其中有一个名为 detail 的字段,保存了设备的详细信息。这些信息存储为 JSON 数据,如下所示…...
go-zero学习笔记(一)
基础环境搭建 安装go环境 网上文章比较多,不在赘述,我当时参考的文章是:https://blog.csdn.net/weixin_41287260/article/details/143661816 记得修改go env 中的环境变量, 主要是goproxy 改成七牛云的,这样下载代码库…...
maven、npm、pip、yum官方镜像修改文档
文章目录 Maven阿里云网易华为腾讯云 Npm淘宝腾讯云 pip清华源阿里中科大华科 Yum 由于各博客繁杂,本文旨在记录各常见镜像官网,及其配置文档。常用镜像及配置可评论后加入 Maven 阿里云 官方文档 setting.xml <mirror><id>aliyunmaven&l…...
【Docker】私有Docker仓库的搭建
一、准备工作 确保您的系统已安装Docker。如果没有安装,请参考Docker官方文档进行安装。 准备一个用于存储仓库数据的目录,例如/registry_data/。 二、拉取官方registry镜像 首先,我们需要从Docker Hub拉取官方的registry镜像。执行以下命…...
基于MinIO的对象存储增删改查
MinIO是一个高性能的分布式对象存储服务。Python的minio库可操作MinIO,包括创建/列出存储桶、上传/下载/删除文件及列出文件。 查看帮助信息 minio.exe --help minio.exe server --help …...
观察者模式和订阅发布模式的关系
有人把观察者模式等同于发布订阅模式,也有人认为这两种模式存在差异,本质上就是调度的方法不同。 发布订阅模式: 观察者模式: 相比较,发布订阅将发布者和观察者之间解耦。(发布订阅有调度中心处理)...
(2025 年最新)MacOS Redis Desktop Manager中文版下载,附详细图文
MacOS Redis Desktop Manager中文版下载 大家好,今天给大家带来一款非常实用的 Redis 可视化工具——Redis Desktop Manager(简称 RDM)。相信很多开发者都用过 Redis 数据库,但如果你想要更高效、更方便地管理 Redis 数据&#x…...
Baklib引领内容管理平台新时代优化创作流程与团队协作
内容概要 在迅速变化的数字化时代,内容管理平台已成为各种行业中不可或缺的工具。通过系统化的管理,用户能够有效地组织、存储和共享信息,从而提升工作效率和创意表达。Baklib作为一款新兴的内容管理平台,以其独特的优势和创新功…...
Java实现.env文件读取敏感数据
文章目录 1.common-env-starter模块1.目录结构2.DotenvEnvironmentPostProcessor.java 在${xxx}解析之前执行,提前读取配置3.EnvProperties.java 这里的path只是为了代码提示4.EnvAutoConfiguration.java Env模块自动配置类5.spring.factories 自动配置和注册Enviro…...
房屋租赁系统在数字化时代中如何重塑租赁服务与提升市场竞争力
内容概要 在当今快速发展的数字化时代,房屋租赁系统的作用愈发重要。随着市场需求的变化,租赁服务正面临着新的挑战与机遇。房屋租赁系统不仅仅是一个简单的管理工具,更是一个能够提升用户体验和市场竞争力的重要平台。其核心功能包括合同管…...
C++ ——— 学习并使用 priority_queue 类
目录 何为 priority_queue 类 学习并使用 priority_queue 类 实例化一个 priority_queue 类对象 插入数据 遍历堆(默认是大堆) 通过改变实例化的模板参数修改为小堆 何为 priority_queue 类 priority_queue 类为 优先级队列,其本质就是…...
【踩坑】解决Hugging-face下载问题
解决Hugging-face下载问题 问题1:couldnt connect to https://huggingface.co问题2:HTTPSConnectionPool(hostcdn-lfs-us-1.hf-mirror.com, port443)设置hf_transfer加快速度 问题3:requests.exceptions.ChunkedEncodingError: (Connection b…...
DeepSeek 模型全览:探索不同类别的模型
DeepSeek 是近年来备受关注的 AI 研究团队,推出了一系列先进的深度学习模型,涵盖了大语言模型(LLM)、代码生成模型、多模态模型等多个领域。本文将大概介绍 DeepSeek 旗下的不同类别的模型,帮助你更好地理解它们的特点…...
智能家居监控系统数据收集积压优化
亮点:RocketMQ 消息大量积压问题的解决 假设我们正在开发一个智能家居监控系统。该系统从数百万个智能设备(如温度传感器、安全摄像头、烟雾探测器等)收集数据,并通过 RocketMQ 将这些数据传输到后端进行处理和分析。 在某些情况下…...
Three.js实现3D动态心形与粒子背景的数学与代码映射解析
一、效果概述 本文通过Three.js构建了一个具有科技感的3D场景,主要包含两大视觉元素: 动态心形模型:采用数学函数生成基础形状,通过顶点操作实现表面弧度。星空粒子背景:随机分布的粒子群组形成空间层次感。复合动画…...
