专利名称:一种分布式文件系统上基于硬件加速卡的压缩解压缩方法
技术领域:
本发明涉及分布式文件系统技术领域,尤其涉及ー种分布式文件系统上基于硬件加速卡的压缩解压缩方法。
背景技术:
随着数据时代的到来,互联网所要处理的数据量日益増大,为了保证数据的高可靠性,当前的分布式文件系统一般采用多副本策略。但是,在大規模机群中这将会带来不可忽略的巨额存储开销,同时对于分布式文件系统之上的系统或应用,如分布式数据库、分布式数据仓库、MapReduce框架或其它应用,也有可能会产生冗余数据,使得数据的膨胀率更高,I/O性能成为系统的瓶颈日益明显,现有的分布式文件系统难以同时满足高性能、高可靠性和低存储开销的需求。通过对分布式文件系统之上应用的类型进行分析可以得知,这些应用使用或产生的大部分数据是文本信息,特别是离线或在线分析系统中的数据基本都是文本,而文本本身是ー种高度可压缩的数据,因此通过引入ー种快速的数据压缩方法,可以有效降低数据的存储开销,提高磁盘和网络I/O的有效带宽,从而提高应用的呑吐量。对于传统的采用软件方式实现数据压缩或解压缩方法,如GZip,该方式虽然能使系统的存储开销减小,但是在压缩或解压缩过程中会占用大量的CPU资源,有可能导致系统的处理能力下降。
发明内容
本发明的目的在于提出ー种分布式文件系统上基于硬件加速卡的压缩解压缩方法,能够使得在占用少量系统资源的情况下,完成对用户透明的压缩和解压缩过程,降低系统的存储开销,并且具有良好的容错机制。为达此目的,本发明采用以下技术方案—种分布式文件系统上基于硬件加速卡的压缩解压缩方法,所述方法包括分布式文件系统中的客户端向数据节点写入数据时所述客户端将文件块分成多个分片,调用硬件加速卡对各分片进行压缩,再将压缩后的各分片发送至所述数据节点;所述数据节点将所述压缩后的各分片存储至压缩块文件中,并更新所述数据节点中的索引文件;分布式文件系统中的客户端从数据节点读取数据时所述数据节点找到保存读取数据的压缩块文件;所述客户端取回包含所述读取数据的各分片,调用所述硬件加速卡对所述各分片进行解压缩,并组合解压缩后的各分片,将组合后的解压缩数据发送至上层应用。优选地,所述各分片为64KB大小的数据。 进ー步地,所述硬件加速卡采用PCI接ロ;所述硬件加速卡利用一个压缩方法库,实现对特定内存缓冲区中的数据进行压缩或解压缩的功能;所述硬件加速卡上配备有多个处理芯片,每个芯片可单独进行压缩或解压缩操作,所述芯片由可编程逻辑器件构成;其中,所述压缩方法库包括各种压缩解压缩算法和驱动程序,具有压缩和解压缩两个接ロ,两个接ロ的參数均包括输入缓冲区和输出缓冲区;进ー步地,所述硬件加速卡利用一个压缩方法库,实现对特定内存缓冲区中的数据进行压缩或解压缩的功能包括所述压缩方法库将压缩或解压缩算法经所述用户层编程接ロ接入;调用驱动程序,经所述用户层编程接ロ驱动硬件加速卡,完成对特定内存缓冲区中的数据压缩或解压缩功能。进ー步地,所述调用所述硬件加速卡对各分片进行压缩包括所述客户端将所述各分片送入所述压缩方法库压缩接ロ的输入缓冲区,所述压缩方法库驱动所述硬件加速卡,所述硬件加速卡完成对所述各分片的压缩过程,并将压缩后的所述各分片送入所述压缩方法库压缩接ロ的输出缓冲区。进ー步地,所述调用所述硬件加速卡对所述各分片进行解压缩包括所述客户端将所述各分片送入所述压缩方法库解压缩接ロ的输入缓冲区,所述压缩方法库驱动所述硬件加速卡,所述硬件加速卡完成对所述各分片的解压缩过程,并将解压缩后的所述各分片送入所述压缩方法库解压缩接ロ的输出缓冲区。进ー步地,所述压缩方法库在对数据进行压缩或解压缩时,如果发现所述硬件加速卡出现故障,将采用软件方式对数据进行压缩或解压缩。进ー步地,所述压缩后的分片信息包括头部信息和压缩数据,所述头部信息包括原始数据大小、压缩数据大小、压缩算法类型。进ー步地,所述数据节点将所述压缩后的各分片存储至压缩块文件中,并更新所述数据节点的索引文件包括所述数据节点按顺序将所述压缩后的各分片写到压缩块文件中,并另外维护ー个索引文件;其中所述索引文件按所述各分片在文件块原始文件中的顺序,记录所述各分片在压缩块文件中的位置偏移量和长度。进ー步地,所述数据节点找到保存读取数据的压缩块文件包括所述数据节点根据所述读取数据在文件块原始文件中的偏移位置和长度,在所述索引文件中找到所述读取数据在压缩块文件中的位置。进ー步地,所述分布式文件系统的上层应用可独立使用所述硬件加速卡以数据流的形式对数据进行压缩或解压缩。进ー步地,所述上层应用使用所述硬件加速卡向数据流中写入数据的过程包括所述上层应用先对需要写入的数据进行缓存,如果缓存数据的大小超过预设值,将所述预设值大小的数据作为ー个压缩块,调用所述硬件加速卡对所述压缩块进行压缩,并将压缩后的数据写到数据流中。优选地,所述预设值取64KB。进ー步地,所述上层应用使用所述硬件加速卡从数据流中读取数据的过程包括所述数据流内部有一个缓冲区,用于缓存已解压缩数据,如果所述缓冲区不为空,将所述已解压缩数据发送至所述上层应用,如果所述缓冲区为空,则从所述数据流中读取ー个压缩数据块,调用所述硬件加速卡对所述压缩数据块进行解压缩,并将解压缩后的数据存至所述缓冲区中。本发明技术方案的优势在于在大型分布式文件系统上采用PCI接ロ的硬件加速卡来完成数据压缩或解压缩,过程中只消耗少量系统资源,可以卸载传统压缩方法所消耗的大量CPU资源;数据的压缩或解压缩对于用户是完全透明的,上层应用无需做任何改动,并且无论是写入或读取数据,都可以提高磁盘和网络I/o的有效带宽;采用分片式压缩格式,将文件分成大小为64KB的分片,能达到较好的压缩效果,而且对于硬件加速卡只需要很小的缓存就能实现压缩;在硬件加速卡出现故障时,压缩方法库能够切换到软件方式进行压缩或解压缩, 具有良好的容错机制;分布式文件系统的上层应用可独立使用硬件加速卡创建输入流或输出流,用以封装原有的输入流或输出流,能方便地对数据进行压缩或解压缩。
图1是本发明具体实施例一提供的ー种分布式文件系统上基于硬件加速卡的压缩解压缩方法的系统结构示意图;图2是本发明具体实施例一提供的分布式文件系统上基于硬件加速卡的压缩解压缩方法的数据写入流程示意图;图3是本发明具体实施例一提供的客户端调用硬件加速卡压缩数据流程示意图;图4是本发明具体实施例一提供的分布式文件系统上基于硬件加速卡的压缩解压缩方法的文件块格式示意图;图5是本发明具体实施例一提供的分布式文件系统上基于硬件加速卡的压缩解压缩方法的数据读取流程示意图;图6是本发明具体实施例ニ提供的另ー种分布式文件系统上基于硬件加速卡的压缩解压缩方法的系统结构示意图;图7是本发明具体实施例ニ提供的上层应用压缩数据流程示意图;图8是本发明具体实施例ニ提供的上层应用解压缩数据流程示意图。
具体实施例方式下面结合附图并通过具体实施方式
来进ー步说明本发明的技术方案。实施例一本实施例基于Apache HDFSCHadoop DistributedFile System,分布式文件系统)实现基于硬件加速卡的压缩原型,HDFS为Google GFS的开源实现,是Hadoop生态圈各项目的基础。HDFS上层应用使用客户端来写入或读取文件。HDFS中一个文件会被分成多个大小相同的文件,最后ー个文件块的大小可能比其它的文件块小。属于同一个文件的不同文件块可能存储在不同的数据节点上,且每个数据块在数据节点中共有3个副本。參见图1,ー种分布式文件系统上基于硬件加速卡的压缩解压缩方法的系统结构示意图。本实施例提供的压缩解压缩方法是通过调用硬件加速卡,来完成对文件块的压缩或解压缩,其压缩或解压缩过程工作在客户端与数据节点。该方法在硬件加速卡之上实现了一个压缩方法库。压缩方法库包括各种压缩解压缩算法和驱动程序,具有压缩和解压缩两个接ロ,两个接ロ的參数均包括输入缓冲区和输出缓冲区,方便应用使用硬件加速卡。压缩方法库将压缩或解压缩算法经所述用户层编程接ロ接入,调用驱动程序,经所述用户层编程接ロ驱动硬件加速卡,将数据送往硬件加速卡的缓存,由硬件加速卡完成对数据的压缩或解压缩,操作完成后再从硬件加速卡的缓存读回数据。由此可见,压缩方法库通过调用驱动程序来驱动硬件加速卡,完成数据的压缩或解压缩。硬件加速卡米用PCI(Peripheral ComponentInterconnect,外设互联接ロ)接ロ,能在普通的商用机器上使用,通过将压缩方法库中的压缩算法经用户层编程接ロ接入,以硬件的方式实现对特定内存缓冲区中的数据进行压缩或解压缩的功能。硬件加速卡上配备有多个处理芯片,每个芯片可以单独进行压缩或解压缩操作,因此支持同时执行多个操作。各芯片由可编程逻辑器件构成。參见图2,分布式文件系统上基于硬件加速卡的压缩解压缩方法的数据写入流程示意图。当客户端向数据节点写入数据的过程如下101 :客户端调用硬件加速卡对用户数据进行压缩,生成压缩后的多个分片。102 :客户端将压缩后的各分片发送至第一数据节点。103:第一数据节点更新块文件和索引文件,并复制压缩后的各分片,将其发送至第二数据节点。104:第二数据节点更新块文件和索引文件,并复制压缩后的各分片,将其发送至第三数据节点。105 :第三数据节点更新块文件和索引文件。其中,步骤101中客户端调用硬件加速卡对用户数据进行压缩的过程,參见图3,具体步骤如下201 :当客户端缓存的用户数据大小达到ー个文件块大小时,客户端将用户数据进行分片,各分片大小要适中,以便能够达到较好的压缩效果,而且对于硬件加速卡只需要很小的缓存就能实现压缩或解压缩。优选的各分片大小采用64KB。202:客户端将各分片送入压缩方法库压缩接ロ的输入缓冲区,压缩方法库调用驱动程序来驱动硬件加速卡,硬件加速卡完成对各分片的压缩过程,并将压缩后的各分片送入压缩方法库压缩接ロ的输出缓冲区。203 :客户端从压缩方法库压缩接ロ的输出缓冲区读回压缩后的各分片。另外,步骤103、104、105中数据节点更新块文件和索引文件,具体的过程为数据节点顺序存储压缩后的各分片至压缩块文件中,在维护原有索引的基础上另外维护ー个索引文件,新维护的索引文件按各分片在文件块原始文件中的顺序,记录各分片在压缩块文件中的位置,根据索引文件能够快速定位特定分片。图4是本实施例提供的分布式文件系统上基于硬件加速卡的压缩解压缩方法的文件块格式示意图。当客户端未对用户数据进行压缩吋,HDFS数据节点保存的是未压缩块,包括块文件和元文件。元文件是用于描述要素、数据集或数据集系列的内容、覆盖范围、管理方式等有关信息。当客户端使用硬件加速卡对用户数据进行压缩时,HDFS数据节点保存的是压缩块,压缩块包括压缩块文件、索引文件、元文件。压缩块文件由顺序存储的压缩分片构成,每个压缩分片包括头部信息和压缩数据,头部信息包括原始数据大小、压缩数据大小、压缩算法类型。根据各压缩分片的头部信息,可以按压缩算法类型对数据进行解压缩。根据原始数据大小这个信息,很容易计算出当前分片在文件块原始文件中的起始位置。索引文件由各分片索引构成,所述各分片索引记录着各压缩分片在压缩块文件中的偏移量和长度。參见图5,分布式文件系统上基于硬件加速卡的压缩解压缩方法的数据读取流程示意图。当客户端从数据节点读取数据时,具体过程如下301 :在数据节点上寻找保存读取数据的压缩块文件,并将找到的读取数据压缩块文件中的各分片发送至客户端。其中,数据节点根据读取数据在文件块原始文件中的偏移位置和长度,在新维护的索引文件中找到读取数据在压缩块文件中的起始位置,最終寻找到保存读取数据的各分片。例如现有ー个IMB大小的原始文件,要读取从256KB位置开始的16KB数据,由于每个未压缩分片大小为64KB,可知要读取的数据在第5个分片中。在压缩块文件中首先读出第I个压缩分片的头部信息,然后跳过压缩数据部分,定位到第2个分片的起始位置,依此类推,直到定位到第5个分片,读出第5个分片的压缩数据,将数据解压缩后从中读出16KB的数据。302:客户端接收读取数据压缩块文件中的各分片,并将各分片送入压缩方法库解压缩接ロ的输入缓冲区,压缩方法库调用驱动程序来驱动硬件加速卡,驱动硬件加速卡完成对各分片的解压缩过程,并将解压缩后的各分片送入压缩方法库解压缩接ロ的输出缓冲区。303:客户端从解压缩接ロ的输出缓冲区读回解压缩后的各分片,并对各解分片按顺序组合成完整的请求数据文件块,将其发送至上层应用。上述基于分片的头部信息,能够有效完成ー些操作。在分布式文件系统中,经常会遇到需要把一个大文件分割成多个小文件或在一个大文件中随机读取一部分数据的情況。在对大文件进行数据切分或随机读操作时,只需读取压缩分片的头部信息,获取分片压缩后的数据大小,然后跳过压缩数据部分,经过多次重复操作,定位到大文件指定位置。在此过程中,不必读取压缩数据,也不需要解压缩数据,減少了很多I/O操作,増加了灵活性。当压缩方法库通过驱动程序驱动硬件加速卡,以硬件的方式对数据进行压缩或解压缩时,如果发现所述硬件加速卡出现故障,压缩方法库将采用软件方式对数据进行压缩和解压缩,完成与硬件加速卡同样的处理結果。本实施例基于硬件加速卡的压缩原型采用hadoop-0. 20. 2作为代码基础,采用Java语言实现。本实施例的优势在于1、借助硬件加速卡,压缩或解压缩过程只占用少量CPU资源,压缩处理吞吐率高于磁盘I/O带宽,相比传统采用软件方式的压缩解压缩方法所节省的系统资源可用于其它处理过程。2、于目前测试效果看来,对于真实的数据,压缩比大约为25%左右,有效降低了存储开销,将磁盘的有效带宽提高了 4到5倍;3、压缩解压缩工作在HDFS的客户端和数据节点,对上层应用完全透明,因此基于HDFS的在线或离线数据分析系统,例如HBase、Hive等,均可方便使用数据压缩,无需做任何改动,并且可以减少客户端与数据节点、数据节点之间的数据传输量。4、在HDFS中对压缩后的分片进行切分或随机读操作时,只需要读出压缩分片的头部信息,跳过真实的压缩数据部分,从而減少IO操作。5、在硬件加速卡出现故障不能使用时,压缩方法库采用软件方式来完成同样的处理过程,形成了良好的容错机制。实施例ニ·
參见图6,另ー种分布式系统上基于硬件加速卡的压缩解压缩方法的系统结构示意图。本实施例是对实施例一的进ー步延伸,硬件加速卡除了用于HDFS的客户端与数据节点上之外,还可用于上层应用。对于HDFS上层应用,例如分布式数据库、分布式数据仓库、MapReduce框架及其它需要数据存储的应用,可独立的调用硬件加速卡,以数据流的形式对数据进行压缩或解压缩,然后将处理后的数据存储在分布式文件系统、本地文件系统、在网络上进行传输或用于其它用途。压缩方法库通过驱动程序驱动硬件加速卡进行压缩或解压缩,可以创建数据输入流和输出流,数据的流式写入具有只追加数据、没有随机写的特征,该特征有利于简化数据压縮。上层应用在调用硬件加速卡压缩数据时会创建ー个数据输出流,该流封装了原来的输出流。參见图7,上层应用压缩数据流程示意图。上层应用往数据流中写压缩数据时,具体过程如下401 :上层应用缓存数据,如果缓存数据的大小超过64KB,每64KB大小的数据作为ー个数据块;402:上层应用将各数据块送入压缩方法库压缩接ロ的输入缓冲区,压缩方法库调用驱动程序来驱动硬件加速卡,驱动硬件加速卡完成对各数据块的压缩过程,生成各压缩分块;403 :上层应用将各压缩分块写到原来的输出流;上层应用在使用硬件加速卡解压缩数据时会创建ー个数据输入流,该流封装了原来的输入流。參见图8,上层应用解压缩数据流程示意图。上层应用从数据流中读取压缩数据时,具体过程如下501 :原来输入流内部的缓冲区缓存已解压缩的数据。502 :上层应用从数据输入流读取数据时,判断缓冲区是否为空。503 :如果缓冲区不为空,将缓冲区中的数据返回至上层应用。504:如果缓冲区为空,则上层应用从原来的输入流中读取ー个压缩块,压缩方法库通过驱动程序驱动硬件加速卡,对压缩块进行解压缩,并将解压缩后的数据存在缓冲区中,返回步骤502。关于硬件加速卡、压缩方法库更加详细的描述,可以參见实施例一,这里不再赘述。对于原来就启用压缩的上层应用,只需做出少量改动,使用硬件加速卡替换原来的压缩器,即可完成压缩算法的切換。在应用中根据配置来选择对应的压缩方式,可以避免切换压缩方式时重新编译代码。本实施例提供的压缩解压缩方法除在分布式系统上使用硬件加速卡外,对上层应用还提供了 一个硬件加速卡,上层应用可调用硬件加速卡,创建输入流或输出流,用以封装原有的输入流或输出流,能方便地对数据进行压缩或解压缩。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于ー种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述方法包括 分布式文件系统中的客户端向数据节点写入数据时所述客户端将文件块分成多个分片,调用硬件加速卡对各分片进行压缩,再将压缩后的各分片发送至所述数据节点;所述数据节点将所述压缩后的各分片存储至压缩块文件中,并更新所述数据节点中的索引文件; 分布式文件系统中的客户端从数据节点读取数据时所述数据节点找到保存读取数据的压缩块文件;所述客户端取回包含所述读取数据的各分片,调用所述硬件加速卡对所述各分片进行解压缩,并组合解压缩后的各分片,将组合后的解压缩数据发送至上层应用。
2.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述各分片为64KB大小的数据。
3.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述硬件加速卡采用PCI接口; 所述硬件加速卡利用一个压缩方法库,实现对特定内存缓冲区中的数据进行压缩或解压缩的功能; 所述硬件加速卡上配备有多个处理芯片,每个芯片可单独进行压缩或解压缩操作,所述芯片由可编程逻辑器件构成; 其中,所述压缩方法库包括各种压缩解压缩算法和驱动程序,具有压缩和解压缩两个接口,两个接口的参数均包括输入缓冲区和输出缓冲区。
4.根据权利要求3所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述硬件加速卡利用一个压缩方法库,实现对特定内存缓冲区中的数据进行压缩或解压缩的功能包括所述压缩方法库将压缩或解压缩算法经所述用户层编程接口接入;调用驱动程序,经所述用户层编程接口驱动硬件加速卡,完成对特定内存缓冲区中的数据压缩或解压缩功能。
5.根据权利要求4所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述调用所述硬件加速卡对各分片进行压缩包括所述客户端将所述各分片送入所述压缩方法库压缩接口的输入缓冲区,所述压缩方法库驱动所述硬件加速卡,所述硬件加速卡完成对所述各分片的压缩过程,并将压缩后的所述各分片送入所述压缩方法库压缩接口的输出缓冲区。
6.根据权利要求4所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述调用所述硬件加速卡对所述各分片进行解压缩包括所述客户端将所述各分片送入所述压缩方法库解压缩接口的输入缓冲区,所述压缩方法库驱动所述硬件加速卡,所述硬件加速卡完成对所述各分片的解压缩过程,并将解压缩后的所述各分片送入所述压缩方法库解压缩接口的输出缓冲区。
7.根据权利要求3-6任一所述的,分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述压缩方法库在对数据进行压缩或解压缩时,如果发现所述硬件加速卡出现故障,将采用软件方式对数据进行压缩或解压缩。
8.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述压缩后的分片信息包括头部信息和压缩数据,所述头部信息包括原始数据大小、压缩数据大小、压缩算法类型。
9.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述数据节点将所述压缩后的各分片存储至压缩块文件中,并更新所述数据节点的索引文件包括所述数据节点按顺序将所述压缩后的各分片写到压缩块文件中,并另外维护一个索引文件; 其中所述索引文件按所述各分片在文件块原始文件中的顺序,记录所述各分片在压缩块文件中的位置偏移量和长度。
10.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述数据节点找到保存读取数据的压缩块文件包括所述数据节点根据所述读取数据在文件块原始文件中的偏移位置和长度,在所述索引文件中找到所述读取数据在压缩块文件中的位置。
11.根据权利要求1所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述分布式文件系统的上层应用可独立使用所述硬件加速卡以数据流的形式对数据进行压缩或解压缩。
12.根据权利要求11所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述上层应用使用所述硬件加速卡向数据流中写入数据的过程包括所述上层应用先对需要写入的数据进行缓存,如果缓存数据的大小超过预设值,将所述预设值大小的数据作为一个压缩块,调用所述硬件加速卡对所述压缩块进行压缩,并将压缩后的数据写到数据流中。
13.根据权利要求11所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述预设值取64KB。
14.根据权利要求11所述的分布式文件系统上基于硬件加速卡的压缩解压缩方法,其特征在于,所述上层应用使用所述硬件加速卡从数据流中读取数据的过程包括所述数据流内部有一个缓冲区,用于缓存已解压缩数据,如果所述缓冲区不为空,将所述已解压缩数据发送至所述上层应用,如果所述缓冲区为空,则从所述数据流中读取一个压缩数据块,调用所述硬件加速卡对所述压缩数据块进行解压缩,并将解压缩后的数据存至所述缓冲区中。
全文摘要
本发明公开了一种分布式文件系统上基于硬件加速卡的压缩解压缩方法,属于分布式文件系统技术领域。该技术包括客户端向数据节点写数据时,先将文件块进行分片,再经硬件加速卡对分片进行压缩,将压缩后的分片发送至数据节点;客户端从数据节点读取数据时,先从数据节点取回包含读取数据的各分片,调用硬件加速卡对各分片解压缩并组合,将组合后的数据发送至上层应用。上层应用可独立使用硬件加速卡以数据流的形式对数据进行压缩或解压缩。本发明提出的技术在分布式文件系统和上层应用中使用硬件加速卡,只需要很小的缓存就能实现数据压缩或解压缩,可以卸载传统压缩方法所消耗的大量CPU资源,并且对系统的用户而言完全透明。
文档编号G06F17/30GK103020205SQ201210518038
公开日2013年4月3日 申请日期2012年12月5日 优先权日2012年12月5日
发明者刘佳, 胡肖, 查礼 申请人:北京普泽天玑数据技术有限公司