You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle千万级分组数据分块查询方案咨询(避免全量读取)

分块查询优化需求

我们需要将实体按组存储,每组约含1000万条实体。因单次查询需获取数百万条实体的操作不被允许,现寻求分块查询方案,使每次查询仅获取约1000条记录,无需访问全量数据。

示例表结构

IDGROUP_IDDATAIS_ACTIVE.......TIME_CREATEDTIME_UPDATED
11011.......12121212
21011.......12121212
..............................
78978971011.......16161616

曾提出的分块查询SQL

select
    trunc(rn/1000) chunk_id,
    group_id,
    min(id) as startKey,
    max(id) as endKey,
    count(1) as chunk_count
from
    (
        select
            group_id, id, rownum as rn
        from
            (
                select group_id, id from entity_data where group_id = '101' order by id
            )
    )
group by trunc(rn/1000), group_id order by 1

该方案因需访问全量记录计算分块,且受Oracle内存限制被否决。

补充说明

我们使用的数据库为多用户共享模式,数据量持续增长。当执行特定查询时,需从约1亿条总数据中提取500-1000万条记录,单次查询数据量达3-5GB,会导致数据库性能下降并影响其他用户,因此需优化数据获取方式。

内容的提问来源于stack exchange,提问作者Rishabh Goel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 16:42:16