关于AJD数据库非JSON数据存储超容的影响及应对方案咨询
AJD非JSON存储相关问题解答
问题1:非JSON数据存储耗尽时,是否拒绝新的非JSON数据插入?
是的,当AJD的非JSON数据存储配额耗尽后,所有新的非JSON类型数据插入(包括更新操作中涉及非JSON数据的扩容)都会被数据库拒绝,系统会抛出存储配额不足的错误。AJD的设计初衷是优化JSON数据处理,因此对非JSON数据设置了严格的存储上限,超出后会直接限制非JSON数据的写入操作。
问题2:非JSON数据超20GB上限的影响与应对建议
生产中断风险
如果非JSON存储已超出Exadata允许的20GB上限,后续涉及非JSON数据的写入操作(插入、更新)会直接失败,但JSON数据的读写操作不受影响。是否导致生产中断取决于你的业务依赖:
- 若业务流程中存在必须的非JSON数据写入,这些操作会报错,进而引发对应业务环节中断;
- 若当前仅涉及非JSON数据的读取,暂时不会出现中断,但一旦有写入需求就会触发错误。
应对方案选择
- 若未出现业务中断:可以安排时间重新设计数据模型,优先考虑将非JSON数据转换为JSON格式存储(适配AJD的核心定位),或者将非JSON数据迁移至ATP(Autonomous Transaction Processing)。这个过程需要结合业务排期,确保数据迁移或结构调整不影响核心业务。
- 若已出现业务中断:必须紧急处理,二选一:
- 立即清理非必要的非JSON数据(比如历史归档数据、测试数据),快速释放存储配额;
- 紧急将非JSON数据迁移至ATP,恢复非JSON数据的写入能力。
内容的提问来源于stack exchange,提问作者Andy
相关产品推荐
相关产品推荐

