面向大规模网络流量数据的实时汇聚查询关键技术研究

2020-06-05 12:18朱一凡谢莹莹陈小兵
小型微型计算机系统 2020年6期
关键词:网络流量报文分区

郭 庆,朱一凡,谢莹莹,张 榆,陈小兵

1(北京理工大学计算机学院,北京100081)

2(中科曙光大数据事业部,北京100193)

1 引 言

随着互联网的不断发展及移动互联网的出现,网民数量及网络流量快速的增长.此外,各种新的互联网应用,如微博、互联网金融、共享交通系列APP、微信、支付宝、在线短视频等等层出不穷,同时智能终端、人工智能、物联网、云计算等信息技术的快速发展和广泛应用,促使数据呈现爆炸式增长的态势,推动人类社会迈入大数据时代[1-3].与之相伴,大量的数据需要通过网络传输,进而产生了大规模的网络流量数据,企业级用户已有Gbps 级的数据规模,而在运营商骨干网、城域网等环境下更是已高达Tbps 级的超大规模[4].网络流量数据中包含了丰富的信息,包括时间戳、协议类型、源IP、目的IP、源端口、目的端口、数据报文等多维数据,可反映网络状态,发现网络事件,已广泛用于入侵检测、异常流量检测、溯源分析、态势感知、网络安全监控等多种场景[5].

随着大规模网络流量数据的发展,其在数据量、数据规模、处理速度、响应时间等方面的要求越来越高,因此大规模数据的实时汇聚处理等技术成为现在重要的研究热点之一[6].为此,业界相继出现了一系列分布式流处理系统,如Yahoo 推出的S4,Twitter 推出的Storm,有力的推动了流计算的广泛应用[7].而面向海量数据的实时分析,也取得了一定成果,以MapReduce、Spark 等为代表的离线计算、内存计算系统,在实践中获得了大量应用[8,9].Palacio 等针对企业网络流量监控的应用场景,提出了一个基于Spark 的系统框架,通过流处理和批处理的使用,监视网络活动,分析离线历史数据,实现对异常行为的识别检测[10].Qiao 等针对运营商的应用场景,提供了一套移动大数据框架,可用于对海量数据流量的采集存储和分析监控[11].

但是在面向大规模网络流量数据时,这些系统在数据吞吐量、分析查询性能、负载均衡、系统容错等诸多方面仍然存在着不足:在大规模Tbps 量级下,这些系统很难有效采集接收大规模的网络流量数据;在数据量累积到PB 量级时,有效组织数据存储并从中快速的查询检索数据仍很难直接支持;同时这些系统通常关注于某个环节的处理,没有可直接用于网络流量数据处理的整体系统.因此构建低延迟、高吞吐、高性能且持续可靠可扩展的网络流量大数据一体化系统,满足大规模、实时性的需求,仍是当前亟待解决的问题.

本文针对上述问题,基于业界已有的研究基础,提出一种面向大规模网络流量数据的实时汇聚查询平台,实现对大规模数据的汇聚采集、实时处理、存储组织以及快速查询分析.对平台中半同步半异步模式的分级数据采集、多分区队列的并行分布式数据流处理和基于属性划分的数据加载、基于抽象数据访问驱动的虚分区式数据存储、基于异步构建分级索引的数据检索查询等关键技术进行了深入研究并给出了实现方案.平台具有良好的数据读写并发度、计算并发度,以及良好的可扩展性和可维护性,能有效应对网络流量数据规模大和时效性高的需求.平台已在实际项目中应用实施,本文给出了用例测试以表明该平台的有效性和可用性.

2 平台架构

面向大规模网络流量数据的实时汇聚查询平台,是针对海量异构数据的汇聚采集、存储管理、查询分析的一体化实时处理平台,可对高速网络流量数据进行采集和预处理,并对流量数据的五元组信息(源IP 地址、目的IP 地址、协议、源端口、目的端口)进行提取,可对接入的网络流量数据进行合理存储,并对数据报文五元组信息构建索引,可对数据报文进行快速查询与检索,实现网络全流量的回溯.

图1 是平台的系统整体架构,从左往右主要包括数据采集、实时处理、存储计算、数据服务等模块,数据源中的数据通过各模块的协同处理,最终供用户使用.

图1 系统整体架构Fig.1 System overview architecture

1)数据采集:平台支持对实时的网络原始流量数据的汇聚,也支持对日志类的安全数据采集.对于网络流量数据,通过分级专用的采集设备汇聚网络分流过来的流量,对于日志类的文本数据,通过日志采集软件增量汇聚.同时平台提供分布式消息中间件,可对接汇聚采集的流量数据和日志数据.

2)实时处理:平台提供分布式流式处理系统,可对消息系统中的实时数据进行预处理,并实时的持久化到存储平台.对于流量数据将进行基于安全规则的监测,同时为提升整个系统对大规模流量数据的存储量和查询分析性能,可通过会话合并、清洗去重等预处理技术手段压缩原始数据量;对于日志类安全数据,支持根据业务需求实现对数据去重清洗转换等各类预处理功能.

3)存储计算:提供对网络流量数据和日志类安全数据的存储和分析计算功能.结构化、半结构化数据由分布式数据库存储,非结构化数据由分布式文件系统存储,能够根据业务需求对数据进行划分,使得数据合理地写入到平台的各个节点上.并提供数据处理的计算和分析挖掘功能,包括离线计算、内存计算等,支持聚类分析、特征提取、关联分析、异常检测、深度神经网络等数据挖掘算法.具体应用包括为存储到分布式数据库中的流量数据根据查询需求建立索引;对存储在分布式文件系统中的非结构化数据进行统计分析等离线处理.

4)数据服务:提供数据接口服务和图形化的交互服务,对于数据报文提供图形化的数据检索和下载界面,对于挖掘分析提供图形化的分析统计、挖掘建模的交互分析界面.

3 关键技术

平台通过软硬设备一体化集成,采用分布式可扩展服务架构,利用增加节点扩大系统规模,可实现整体处理能力的增长,通过数据处理主要环节的技术优化,可达到对大规模网络流量数据的汇聚接入和实时处理的效果.为实现对大规模网络流量数据处理的实时性,平台采用了基于半同步半异步模式的分级数据采集、基于多分区队列的数据缓存和流处理、基于抽象数据访问驱动的数据虚分区式存储组织、基于批量构建模式的分级索引数据查询等关键技术方案,有效提升了整体处理能力.

3.1 半同步半异步模式分级数据采集

网络流量数据的采集,目前通用的服务器设备可以满足百兆到准万兆的环境.而在几十Gbps 以上数量级的网络流量数据下,因为通过网卡收进来的数据包,经过协议栈处理,缓存在内核态空间中,应用程序调用数据的时候,需要将内核态空间的数据拷贝到用户态中再使用,这样带来了CPU 的开销,而随着CPU 核数的增多,多个核之间交互协同的开销会成指数增长(如跨NUMA 内存访问),所以对于数据量规模较大的情况下,通过高端的设备(如四路、八路服务器)来增加CPU 数量,并不能带来流量数据收发解析等处理的整体性能的过多提升.因此针对大规模流量数据,需要采用分布式的软硬件架构[12].本平台采用了半同步半异步模式,利用Scaleout 方式设计了分级处理的可扩展技术架构,性能弹性灵活扩展,可支持几十Gbps 以上的大规模网络流量数据的实时接入.

半同步半异步模式的分级架构中前一级以异步模式向后一级分发数据,后一级以同步模式进行数据的任务处理,两者通过队列进行相关信息交互.异步模式可提升执行效率,同步模式可简化并行难度,半同步半异步整体提升了系统的并行度,可应对大规模数据处理并行的要求.

图2 是分级采集流量数据的架构图,首先一级处理主要通过专用的高性能汇聚分流设备,将多条双向链路流量接入,对数据包进行过滤,丢弃不需要分析的报文,并根据规则对流量进行负载均衡分流,保持会话.二级处理通过流量采集设备,利用协处理卡释放服务器计算资源,加速网络流量处理,实现零拷贝、无中断线速收发包.三级处理采用分布式消息系统,通过采集软件从二级处理设备中获取流量数据,将五元组数据和报文数据组成网络包结构体,序列化到消息系统中,以供后续流处理环节对数据进一步进行分析处理.

图2 分级数据采集架构Fig.2 Hierarchical data collect architecture

一级处理通常应对上百Gbps 的数据规模,一般存在于骨干网或核心网出口.目前主要使用大型的高端汇聚分流设备,将通过分光方式获取的多条链路的双向流量全部汇聚下来,可采用设备堆叠或者集群的方式来支持超大规模的网络环境.在对流量汇聚后,将根据五元组信息,通过Hash 运算把数据转发到后端的二级处理集群,并使得同一个流的数据转到同一个节点之上[13].

二级处理接收一级汇聚分流设备转发过来的流量数据,通常在几十Gbps 的数据规模.目前单个节点的处理能力远不能支持,因此面对规模较大的流量数据,平台采用了Scale-out和Scale-up 结合的方式,通过可扩展的分布式集群来支持大流量处理.在集群的节点分布上,根据流量数据的不同类型,用不同的节点处理不同类型的流量,比如根据协议类型,有HTTP、DNS、FTP 等协议的流量数据;根据后期分析的业务类型,有DDoS 攻击检测、入侵检测、邮件监测等不同业务的流量数据,因此在一级分流时就将根据数据内容,过滤出对应的数据并分发到相应二级节点进行处理,可通过增加节点来支持不同内容的流量数据,并扩大系统支持的数据规模[13].同时平台设计中也考虑到集群规模大带来的能耗和成本,可通过增强单节点能力降低节点数量,来提升整个系统的投资回报率.鉴于现在的CPU 计算能力已经较强,所以对于网络流量数据处理的主要瓶颈是在数据收发包环节.通用网卡在数据处理时需发起CPU 中断,数据包需在内核空间和用户空间之间转换,此过程会占用大量的系统资源.平台为了优化性能,设计支持了零拷贝和专用网卡两种方式.零拷贝通过Intel的DPDK 技术,网卡在收到数据包时,直接把数据存入到用户态空间中,以供应用程序调用,从而减少从内核态空间拷贝的开销;DPDK 提供指定NUMA 号来申请内存接口,用户可以通过指定NUMA 号申请内存来保证CPU 使用就近内存,以降低访存的消耗;同时DPDK 可利用CPU 的亲和性将线程与CPU 绑定,避免运行过程中被随意调度而带来的频繁切换开销,综上整体可有数倍性能的提升[14].专用网卡通过专用芯片(如FPGA、ASIC)来加速数据包的处理,首先与零拷贝一样,其避免了内核态到用户态的拷贝,降低了开销,同时作为专用协处理卡,可根据分析需求对高负载应用进行负载卸载.包括数据过滤,通过五元组、特征码规则等过滤不需分析的流量,以减少CPU 处理的数据量;数据匹配,对于报文内容的关键字/正则表达式匹配等高消耗CPU 的任务,将其卸载到专用网卡上实现,可有效降低CPU 的资源消耗;同时专用网卡可与CPU 配合,CPU 在对一条流内前部数据包分析得出结论后,即可下发规则,让专用网卡对该流后续数据包直接转发或丢弃,无需再经CPU 处理,综上专用网卡可对高负载应用卸载,过滤或降低需CPU 处理的数据,进而带来处理能力的提升.

三级处理支持接入二级流量采集设备中的实时流量,也支持批量的日志类数据,并通过分布式消息系统缓存数据.此级处理主要包括原始网络流量数据、批量数据的采集和序列化数据到消息系统两个过程.原始网络流量数据的采集与专用设备对接,可以多个节点并行以提高传输速度.获取流量数据过程中,可通过基于协议的单独和组合规则对流量数据进行过滤以减少吞吐数据量,并打上精确到纳秒级别的时间戳,为后续分析提供精确的时间索引.采集到的网络报文解析后,对IP 报文获得IP 地址,对TCP 或者UDP 数据包则进一步获取通信端口,进而将五元组数据和实际报文数据组成一个含时间戳的网络包结构体,并将该结构体序列化到消息系统中.

3.2 多分区队列的并行分布式数据流处理和基于属性划分的数据加载

面对网络流量数据的大规模,在采集接入后,还需要解决数据实时处理的可靠性、时效性和数据加载持久化的可扩展性,从而实现对数据的及时处理和合理存储,并为后续的挖掘分析和检索查询垫定基础.

3.2.1 基于多分区队列的数据缓存

为了保障数据采集后的可靠性和吞吐量,平台在架构设计中引入了分布式消息系统对数据缓存,实现多点采集的统一维护与管理.缓存系统使用本地磁盘对收到的消息进行持久化,克服传统内存瓶颈实现数据的高可靠性,并设置消息的副本数大于1,从而有效保障缓存数据的可靠.为了提高吞吐量,将消息队列拆分为多个分区,并将每个分区位于不同的机器或者不同的磁盘上,以保证磁盘读写的连续性.在大数据量的情况下,可通过加大缓存系统主题的分区数,使得采集数据分散到消息系统的各个节点的各个磁盘上,增加处理的数据量,也提升后续消息订阅处理时的并行度.

3.2.2 并行分布式的数据流处理

采集的数据进入缓存系统后,通常需根据业务需求进行预处理并进行数据持久化操作,此过程中因节点宕机或存储系统响应慢,就会出现大面积的数据丢失.因此,平台设计采用了并行的分布式流式处理技术,统一从缓存系统中获取数据,根据预处理的规则和不同的持久化目标,构建作业级容错的实时处理拓扑[15].通过配置每个拓扑节点的并行数,充分利用集群计算资源达到较高的并行度,大幅度提高数据预处理和持久化的时效性;同时通过捕获错误信息,对数据进行回滚,可以保证有节点故障时不会出现数据未被执行的情况.图3 展示了流式处理的过程.

图3 流式处理过程Fig.3 Streaming process

3.2.3 基于属性划分的数据加载

针对网络流量数据,有五元组等结构化数据,也有原始报文等非结构化数据,平台支持分布式数据库和分布式文件系统来满足不同类型的数据存储,在流式处理环节会根据数据的特性加载到相应的存储系统中.为了适应数据规模的扩展,数据存储分布策略按照各个数据对象的属性值进行划分[16].在数据加载时,需按照数据的关键字,即划分属性,将数据写入到相应的存储节点中.而在分布式文件系统中,由于文件是按照块的方式分布在多个节点上,因此采用文件夹的方式,对分区进行管理,每个分区可以表示一个文件夹.

3.3 基于抽象数据访问驱动的虚分区式数据存储

网络流量数据涉及结构化数据和非结构化数据,因此平台设计提供不同类型的存储,采用基于抽象数据访问驱动的虚分区进行数据组织,用于支持不同场景的存储需求,底层存储包括关系型数据库、分布式NoSQL 数据库、分布式文件系统和文本检索系统等以及这些数据存储和处理系统的复合[17].平台采用软件中间件的架构方式,将底层的存储系统组织管理起来,对外提供统一的数据存储服务,并实现对各种类型数据的统一处理[18].架构如图4 所示.

图4 数据统一存储处理架构Fig.4 Architecture of unified data storage and process

架构中的抽象数据访问驱动,是对底层各种类型数据访问的统一接口,采用Portable 的设计,针对不同的数据类型,可添加或者装载新的驱动.目前支持数据库访问接口、文件系统接口、文本检索接口,并可通过添加新的驱动库来扩展其它数据访问接口.通过抽象的数据访问驱动层,可以屏蔽数据访问的差异细节,将对不同类型存储数据的访问统一起来,简化了系统的设计和实现,同时也对不同数据的联合查询分析提供了支撑基础,可实现不同类型数据的通用处理[19].比如将文本检索和数据库查询相结合进行数据分析,在网络流量数据基于五元组查询数据报文的场景中,就可以先通过关键字检索到五元组信息,再根据五元组进行数据库查询得到所需数据报文.

平台对数据的统一存储组织,提供对数据的逻辑划分功能,支持按照数据语义的 hash、range、list 和 round-robin 的数据划分策略[20].针对结构化数据处理的数据库系统,每个数据节点保存整个数据集的一部分.针对非结构化数据处理的分布式文件系统或者文本检索系统,则可以划分到不同的文件或者文件夹,每个文件或文件夹保存数据集的一部分.

为了适应节点数的动态扩展,平台设计了一种虚分区的技术,即分区和节点是多对一的关系,每个节点包含多个虚分区.每个表定义时需要指定一个节点组,包含若干数据节点.分区表进行存储划分时,每个节点包含若干分区(也叫虚分区),因此采用数据划分的数据表的存储可以分为分区、节点和节点组的三层包含关系.为了充分利用系统的计算资源,在多分区时对读写等负载进行有效调度,分区数量可以设定为CPU 的核数×2,或者更多,这样使得CPU 的每个核能对应一个以上分区,避免分区过少造成的计算资源空闲,从而可以在运行过程中根据不同的负载模式做相应的调度策略,使得每个CPU核都能分配到对应任务,从而充分发挥出节点的计算能力.

当系统规模扩大时,比如往节点组中增加新节点时,需要对在线数据进行迁移,以保证节点组内各节点间的数据均衡.采用虚分区技术,数据迁移时只需将一定数量的分区整体迁移到新增节点,避免了重新分区的开销,同时也保证节点间的最小数据迁移量.

3.4 基于异步构建分级索引的数据检索查询

在网络流量数据分析的需求中,其中典型的应用场景是根据需求检索查询出原始数据报文,以进行溯源和深入的内容分析,在大规模数据存储量的环境下,需要提供从中快速检索查询的技术方案.为此平台设计了以分布式列式数据库为存储载体,利用全文搜索引擎为数据建立二级索引,通过异步批处理进行数据的会话合并和索引构建的整体方案,来应对网络流量大数据量的查询挑战.

数据存储使用典型的NoSQL 非关系数据库系统,采用key-value 模式的数据模型,在主键上建立索引,可以高效地支持基于主键的数据查询[21].为了支持流量数据的快速查询,平台设计了以源 IP 地址+目的 IP 地址+协议+源端口+目的端口+时间戳为组合的rowkey.根据实际数据量,对表进行周期性切分,如按天、周进行分表;对表进行预分区,确保数据能够均匀的写入每个节点,提高系统的吞吐量,降低热点节点出现的概率.并通过启用数据压缩、增加处理线程数、调整块缓存大小、增加阻塞时存储文件数目等多种手段进行整体优化.

为实现对报文数据的快速检索,利用分布式搜索引擎对五元组等关键字段构建二级索引.数据报文的ID 为唯一字段,可与rowkey 一致,源IP 地址、目的IP 地址、协议、源端口、目的端口、时间为索引字段,查询时可根据任意条件组合的索引字段查询到ID,再根据ID 从数据库中获取报文内容.考虑网络流量的数据规模,容易形成数据积压,平台采用了异步批处理模式来创建索引.批处理主要实现将文件系统中数据包结构的rcfile 文件合并为会话结构的avro 文件,并根据索引字段对avro 文件生成搜索引擎的索引文件,直接导入搜索引擎,从而绕过原生的导数据建索引同步接口,性能可大幅提升.在对数据报文建立索引的过程中,基于时间窗口将五元组相同的报文合并成一条会话,会话记录报文的五元组信息、起始时间、结束时间、报文数量,也可以有效减少数据量,提升检索效率.

4 测试结果

本文所设计提出的面向大规模网络流量数据的实时汇聚查询平台,可应对网络流量数据的采集、实时处理、存储组织和检索查询的需求,为了检验本文中关键技术和整体系统的实际性能,我们选取了主要环节进行性能验证.

表1 节点配置信息和角色Table 1 Node config information and role

测试环境中接入20Gbps 网络流量数据,测试服务器集群共有30 个节点,节点硬件配置和角色分布参见表1.

实验采用发包仪构造网络流量包,持续发送20Gbps 的流量数据进行采集性能、数据写入性能、数据查询性能、构建索引性能和可扩展性的测试.

1)采集性能

针对采集性能实验,分别通过发包仪构造64b/512b/1024b 的小包,经分流设备向每路采集节点发送网络数据包,最终我们测试的单节点采集性能大于4200Mbps,峰值可达到4900Mbps,且数据包越大,单节点采集性能越高,具体实验结果详见图5.由于各个采集节点是独立处理分流的数据,相互可并行工作,因此整体采集能力可随节点线性扩展,5 个节点即可处理20Gbps 的流量数据,通过增加节点数量可以处理更大规模的流量数据.

图5 单节点采集性能对比Fig.5 Single node collect performance comparison

2)数据写入性能

采集的数据经过实时处理并入库存储,以大小为1024b的包为例,如图6 所示,整体数据解析及入库能力不低于350万条/s,稳定在370 万条/s,峰值可达390 万条/s.实验表明通过多分区队列的数据缓存、并行分布式的数据流处理和基于属性划分的数据加载等构建的整体流程,可以快速的处理解析流量数据,并根据数据特征有效的完成数据入库加载,具备对大数据量的实时处理能力.

图6 数据解析入库性能Fig.6 Data parsing and writing performance

3)数据查询性能

为了提高数据查询性能,在本系统中,我们通过对分布式数据库中存储的原始数据建立二级索引实现数据的快速查询响应.在1PB 数据量下,分别对本系统查询响应时间和直接查询原生分布式数据库HBase 的响应时间进行了多种场景的测试,包括双向源IP 精确查询、单向源IP模糊查询、双向源IP 模糊查询源、双向双端口精确查询和双向源IP 模糊+双端口精确查询.在本系统下精确查询响应时间<1s,复杂查询时间秒级返回,比直接从分布式数据库查询性能提升30 倍以上,部分场景可达80 倍的效果,具体测试数据参见表2.结果表明通过二级索引的构建,可以大幅提升查询数据的寻址时间,同时结合五元组数据特征构建合理的键值结构,整体可实现对流量数据查询场景的快速响应.

表2 数据查询性能对比Table 2 Data querying performance comparison

4)构建索引性能

为了提高建索引的速度和存储空间利用率,平台采用了异步模式来批量建立索引并进行数据的会话合并,规避同步模式构建索引的时间消耗,并利用会话合并来减少处理的数据量.实验过程中我们以小时的数据为单位周期建立索引,索引数18 亿条左右,实测每次建立索引10 分钟内完成,系统整体构建索引速度平均329 万条/s.如图7 所示对比,检索系统Elasticsearch 的原生索引构建速度平均91 万条/s,性能优化提升 3.5 倍以上.

图7 构建索引速度Fig.7 Build index speed

5)扩展性测试

为了支持大规模,系统需要具有良好的扩展性,我们选择了数据采集和数据写入,通过对不同集群规模的压力测试来验证系统的可扩展性.

数据采集性能如图8 所示,以1024b 大小的包为例,由于各个采集节点的并行工作,可以看到随着采集节点数的增加,采集性能保持线性增长,验证了数据采集的架构在可扩展性方面有着良好的表现.

图8 数据采集性能Fig.8 Data collect performance

数据写入性能如图9 所示,以1024b 大小的包为例,由于系统整体采用分布式的服务架构,当节点从5 个扩展到25个,数据写入性能从80 万条/s 提升到370 万条/s,基本保持近线性增长,验证了存储计算节点在扩展性方面同样具备良好表现.

受限于硬件条件的限制,测试没有针对更大规模的数据进行验证,但通过实验可以表明,系统整体具备高吞吐量高性能的处理能力,系统中的模块采用分布式可扩展服务架构,通过扩大集群规模即可实现系统处理能力的增长,从而支持更大规模流量数据处理的需求.

图9 数据写入性能Fig.9 Data write performance

目前系统已在用户项目中使用,实时处理20Gbps 的网络流量,数据存储量5PB,持续稳定运行一年以上,具有很好的应用价值.

5 结束语

本文阐述了面向超大规模网络流量数据的实时汇聚查询平台的系统架构、关键技术以及相关测试.结果表明平台通过半同步半异步模式的分级架构,能够接入采集大规模的网络实时流量;通过多分区队列的消息缓存、并行分布式流处理和基于属性划分的数据加载等手段的优化组合能够对流量数据进行可靠高效的实时处理;采用基于抽象数据访问驱动的虚分区式数据存储可对异构数据进行统一的管理,并具备良好的扩展性;通过异步构建的分级索引架构,实现对海量数据报文的快速查询检索,最终为用户提供数据汇聚查询的一体化平台,并达到支撑超大规模和高实时性的目标,可广泛应用于网络流量数据的各类使用场景.下一步,我们会针对五元组信息外的条件检索查询场景进行研究并提出更高效的数据存储、索引和查询优化方法,并针对更为复杂的流量数据分析挖掘需求提供解决方案.

猜你喜欢
网络流量报文分区
基于J1939 协议多包报文的时序研究及应用
以太网QoS技术研究及实践
大数据驱动和分析的舰船通信网络流量智能估计
贵州省地质灾害易发分区图
上海实施“分区封控”
基于双向长短期记忆循环神经网络的网络流量预测
基于报文类型的限速值动态调整
浅析反驳类报文要点
一种用于敏感图像快速加密的图像注入技术仿真
大型数据库分区表研究