DolphinDB与pandas读取csv文件速度对比测试

2024-03-30 09:38

本文主要是介绍DolphinDB与pandas读取csv文件速度对比测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 速度

    DolphinDB一直说自己速度快,前面使用中并没有遇到实际场景,今天需要读取一个800M的csv文件,特地测试一下。

  • 测试方式有三种

    1. pandas的pd.read_csv()
    2. DolphinDB的loadText()
    3. DolphinDB的ploadText()
  • 测试文件

    1990年到2018年的所有A股日K线数据,总共840M。数据格式为[9930906 rows x 13 columns]

    在这里插入图片描述

    在这里插入图片描述

  • pandas.read_csv()

    >> t = datetime.now()
    >> trade = pd.read_csv('D:\DolphinDB\Python\CHstock1990_2018.csv')
    >> print(datetime.now() - t)
    
    次数时间
    125.765263
    221.028936
    320.476992
    421.289992
    520.709985
    621.352990

    去除第一次的异常值,取剩余五次计算平均值:20.971779

  • loadText()

    >> t = datetime.now()
    >> trade = s.loadText('D:/DolphinDB/Python/CHstock1990_2018.csv')
    >> print(datetime.now() - t)
    
    次数时间
    133.008495
    232.152022
    333.735014
    431.155987
    533.996996
    632.901004

    取六次均值:32.824919

  • ploadText()

    >> t = datetime.now()
    >> trade = s.ploadText('D:/DolphinDB/Python/CHstock1990_2018.csv')
    >> print(datetime.now() - t)
    
    次数时间
    118.863003
    219.764002
    318.942235
    419.214004
    519.554998
    619.845996

    取六次均值:19.364106

  • 结果分析

    用电脑在常规工作环境中载入,先载入六次read_csv,再载入六次ploadText,再载入六次loadText,得到上述结果。

    我不是专业测试,不清楚业内正经测试应该是怎么个流程与环境,然,这就是我正常使用时候得到的结果。

    ploadText() > pd.read_csv() > loadText()

    但是有几个要点:

    1. 首次使用read_csv,经常是比较慢的;
    2. 对于他们各自的底层逻辑并不清楚,所以这个测试可能缺乏理论依据,等后续懂的更多之后再来修补

这篇关于DolphinDB与pandas读取csv文件速度对比测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/861140

相关文章

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

SpringBoot利用树形结构优化查询速度

《SpringBoot利用树形结构优化查询速度》这篇文章主要为大家详细介绍了SpringBoot利用树形结构优化查询速度,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一个真实的性能灾难传统方案为什么这么慢N+1查询灾难性能测试数据对比核心解决方案:一次查询 + O(n)算法解决

MySQL中读写分离方案对比分析与选型建议

《MySQL中读写分离方案对比分析与选型建议》MySQL读写分离是提升数据库可用性和性能的常见手段,本文将围绕现实生产环境中常见的几种读写分离模式进行系统对比,希望对大家有所帮助... 目录一、问题背景介绍二、多种解决方案对比2.1 原生mysql主从复制2.2 Proxy层中间件:ProxySQL2.3

基于Python Playwright进行前端性能测试的脚本实现

《基于PythonPlaywright进行前端性能测试的脚本实现》在当今Web应用开发中,性能优化是提升用户体验的关键因素之一,本文将介绍如何使用Playwright构建一个自动化性能测试工具,希望... 目录引言工具概述整体架构核心实现解析1. 浏览器初始化2. 性能数据收集3. 资源分析4. 关键性能指

pandas数据的合并concat()和merge()方式

《pandas数据的合并concat()和merge()方式》Pandas中concat沿轴合并数据框(行或列),merge基于键连接(内/外/左/右),concat用于纵向或横向拼接,merge用于... 目录concat() 轴向连接合并(1) join='outer',axis=0(2)join='o

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安