小伙伴们在日常的操作中,使用LOB对象会很多么,工业的附件、医疗的图像、电子病历的长长的几千上万字的描述和图像等,这些在查询和使用过程中都是极度折磨,第一速度慢、第二是占用超大空间,且业务需要从这些字段中拆解信息,统计、上传等。
Oracle的大对象(LOB)存储技术经历了从BasicFile到SecureFile的革新,在23 ai默认用SecureFile带来性能与智能管理的提升。
一、LOB技术原理与架构解析
LOB(Large Object) 是Oracle处理大文件(如图片、视频、文档)的核心数据类型,分为:
- BLOB:二进制数据(如图像)
- CLOB:字符数据(如日志文件)
- NCLOB:Unicode字符数据
- BFILE:指向外部文件的指针
存储架构核心机制
- 行内/行外存储
- 小LOB(≤4000B)直接存储在表行中
- 大LOB使用“LOB定位器”指向外部LOB段
- 分块存储(Chunking)
- LOB数据被拆分为多个块(Chunk)
- 每个Chunk包含Header(元数据)和Body(实际数据)
- 大块(如32KB)减少I/O操作,提升大文件读写效率
- LOB索引机制
- SYS_LOB$$对象管理LOB块的物理地址
- 索引结构优化大文件随机访问性能
实践脚本:创建含LOB列的表
SYS@CDB$ROOT>
cr

最低0.47元/天 解锁文章
1683

被折叠的 条评论
为什么被折叠?



