微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > LABVIEW深入探索之MDB数据库写入速度问题。

LABVIEW深入探索之MDB数据库写入速度问题。

时间:01-09 来源:互联网 点击:
近日在LABVIEW的群中,看到几次讨论利用队列把采集的数据写入到数据库的问题,讨论非常热烈,但是他们忽略了一个重要的问题,就是数据库的最大写入速度的问题。

一旦你每秒采样数超过一定限度时,无论你采用何种编程方式,如何优化你的程序,在超过一定限度后,都是不可能实现的,在这种情况下,讨论如何解决就毫无意义了。

队列主要有三方面的用途,并行、解除耦合和解决忙先不均。在高速采集时,队列只是起到了并行的作用。由于采集的速度远大于数据库的写入速度,这种情况下,使用数据库本身就是一个错误的选择,是不可能实现的。

下面我利用LABVIEW本身的数据库例程,稍微改动一下,测试数据库的写入速度。LABVIEW数据工具包提供三种不同的写入数据方式。

1、自动方式。利用“插入数据”VI。

2、利用SQL查询方式。

3、利用SQL参数化查询。

这三种方式中,SQL查询方式速度明显是最快的。SQL参数化查询和自动方式非常接近,SQL参数化查询比自动化方式略快一些。

在我的计算机中,写入10000条记录,SQL查询方式约为20秒,其它方式约为30秒。也就是说使用MDB数据库,每秒最快写入约500条记录。

我写入的记录数据量是很小的,如果记录中存储的数据量很大,速度还要慢。所以,使用数据库仅仅适合与低速采集,对中高速采集是不可能实现的。

LABVIEW的DSC工具包采用了通用数据库,因为常用的扫描周期为100MS,这是没有问题的。对于中高速采集,提供了TMDS存储方式。即使采用TDMS方式,也必须在一定限度之内,毕竟最终的速度还是取决于硬件设备。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top