【技术实现步骤摘要】
基于pandas接口的分布式计算方法和系统
[0001]本专利技术涉及数据库技术应用领域,尤其涉及一种基于pandas接口的分布式计算方法和系统。
技术介绍
[0002]传统的pandas框架无法进行并行化处理数据,因此无法充分利用多核CPU和集群计算资源来加速数据处理。并且,随着数据规模的不断增加,越来越多的数据分析人员选择将数据存储在多台机器上,但是传统的pandas只能处理单台机器上的数据。以及,传统的pandas框架只支持有限的数据存储格式,如CSV、Excel等。
[0003]在相关技术中通过一种开源的分布式计算框架,可以将pandas的数据结构分割成多个块,然后并行计算从而处理大规模数据,但是Vaex只支持数值和字符串类型的数据,并且数据必须以HDF5(Hierarchical Data Format 5)的格式存储。
[0004]针对由于现有技术中传统的pandas框架的性能特性,导致的pandas框架在数据库应用受限的问题,目前尚未提出有效的解决方案。
技术实现思路
[0005 ...
【技术保护点】
【技术特征摘要】
1.一种基于pandas接口的分布式系统,其特征在于,包括:解析层、存储层、转换层和数据库,其中,所述解析层,用于接收用户请求消息,解析所述用户请求消息,得到解析结果;所述存储层,与所述解析层连接,用于在所述解析结果为读操作的情况下,执行读操作,确定所述用户请求消息的数据读取格式,依据所述数据读取格式读数据;所述转换层,与所述解析层连接,用于在所述结果为计算操作的情况下,对所述用户请求消息的操作类型转换为所述数据库的操作类型;所述数据库,分别与所述存储层和所述转换层连接,用于在所述读操作的情况下,将所述数据读取格式转换为表存储于所述数据库;在所述计算操作的情况下,获取所述用户请求消息对应的执行计划,依据所述执行计划调用计算引擎,通过所述计算引擎调用至少一台计算机进行分布式计算。2.根据权利要求1所述的基于pandas接口的分布式系统,其特征在于,所述存储层,还用于判断所述用户请求消息的数据读取格式是否为所述数据库中的表,在判断结果为是的情况下,将所述数据读取格式转换为pandas的数据格式,其中,所述表的数据库对象的集合和存储位置与所述pandas的数据格式对应;在判断结果为否的情况下,将所述数据读取格式转换为表存储在数据库中。3.根据权利要求1所述的基于pandas接口的分布式系统,其特征在于,所述转换层,还用于对所述用户请求消息的操作类型转换为所述数据库执行的SQL。4.根据权利要求1所述的基于pandas接口的分布式系统,其特征在于,所述数据库,还用于在所述计算操作的情况下,依据所述执行计划调用计算引擎,所述计算引擎依据所述执行计划进行计算,当存在所述多台计算机时,通过分布式进行计算;当存在单个计算机时,通过所述计算引擎利用多线程进行并行计算。5.根据权利要求4所述的基于pandas接口的分布式系统,其特征在于,所述数据库,还用于将计算结果转换为pandas数据格式的计算结果,输出数据格式为所述pandas数据格式的计算结果。6.一种基于pandas接口的分布式计算方法...
【专利技术属性】
技术研发人员:周小华,马骥鹏,胡津铭,
申请(专利权)人:浙江智臾科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。