论文部分内容阅读
随着网络的发展,网络信息安全管理迫切需要存储和管理海量的文本数据,需要高性能的海量文本数据加载和组织管理,因此,研究高性能的海量文本数据加载技术具有重要的理论意义和应用价值!网络信息安全管理中的海量文本数据具有如下特点:数据产生速度高、密度大、规模大且每天24小时不间断,其应用要求支持高效的全文检索。针对以上数据特点和应用需求,本文在以下几个方面对海量文本数据的加载技术进行了研究:1.研究了多流水线并行加载技术。首先,将需要加载的海量文本数据均衡划分为多个独立的数据集合,实现多个数据集合的并行加载。其次,对于每一个数据集合,充分挖掘其流水并行,将加载过程划分为多个可以流水并行执行的加载阶段,从而实现了高性能的多流水线并行加载。2.在流水线内部,利用Oracle10g提供的分区交换技术,在每一个分区的加载上进一步挖掘并行性,将加载划分为多个可以并行执行的子任务。针对这些子任务之间存在的约束关系以及多个分区可以并行加载的特点,提出了带约束关系的多任务并行调度算法,从而保障了细粒度并行化后的并行效果。3.针对计算资源、I/O资源分布不均衡以及服务器节点存在异构性的特点,提出了一种虚拟资源池技术,将每一个服务器按照其处理能力计算资源数量,并将计算出的资源加入资源池中,进行统一的分配与调度,从而实现异构环境下混合负载的均衡分布,达到资源的最大利用率。基于以上技术,研制了海量文本数据的多任务并行加载系统,第三方测试表明,该系统达到了极高的加载性能(加载峰值达200亿条记录/24小时,每条记录0.5KB)。目前该系统已经上线稳定运行了3个多月。