- 博客(36)
- 收藏
- 关注
原创 正弦实时数据库(SinRTDB)的使用(4)-快照查询
正弦实时数据库的快照查询,快照能应用于SCADA系统的实时监控或数字孪生的实时位置、实时状态等功能。
2024-03-28 09:47:20 605
原创 正弦实时数据库(SinRTDB)简单使用(1) 使用数据发生器写入数据
本文简单讲解了正弦(SinRTDB)实时数据库的标签点创建、模拟数据写入,快照查询、历史数据查询及趋势查看等功能
2024-03-26 14:20:56 377
原创 正弦实时数据库(SinRTDB)简介
正弦实时数据库是长沙巨松软件科技有限公司为了解决工业传感器产生的海量数值型数据的存储、计算等需求而研发的产品。广泛应用于电力、冶金、石油、化工、燃气等多个领域。
2024-03-24 10:23:12 382
原创 通过 OPC DA 协议采集 DCS 数据
最近做了一个项目,通过 OPC DA 采集发电厂 DCS 的数据并穿过网闸存储到另一个管理区的实时数据库。2、由于采集程序需要长时间运行,OPC DA 仅支持 Windows,所以采集程序基于 Windows 服务运行。这里以采集 KepServer 上的模拟数据为例,直接写入到实时数据库中,演示一个简单的配置过程。1、其中采集服务器和接收服务器上运行的程序需要支持文件缓存,用于应对网络中断时数据不会丢失。基于上面的分析,开发了采集软件、采集配置软件、接收软件。最后保存配置即可,接着在服务中运行采集服务。
2024-01-30 22:09:47 1203
原创 松果时序数据库压缩文件格式
松果时序数据库将每个表、每天的数据存储在一个数据文件中,数据文件分为普通文件和压缩文件,他们的特点如下:普通文件:支持写入,占用较多的磁盘空间;文件以页为单位进行管理,每个数据页只存储一个设备一段时间的数据,每个页固定为64KB。压缩文件:不支持写入,数据使用两阶段压缩,占用较少的磁盘空间;数据存储到数据块中,每个数据块存储一个设备一段时间的数据,每个数据块大小不等;每个设备的数据在磁盘上...
2019-10-05 11:33:57 339
原创 松果时序数据库(PinusDB)测试报告
松果时序数据库(PinusDB)是一款以简单、易用、高性能为目标的开源时序数据库。本篇比较全面介绍松果时序数据库的测试,为用户测试选型提供参考。松果时序数据库提供差值压缩,测试数据对压缩性能有着极大的影响,为此我们调研了一些公开的数据集,最后选择timescaledb官网提供的物联网设备的传感器信息来测试,数据集包含3000个设备每个设备1万条数据,总共3000万条数据。数据集下载地址:h...
2019-09-12 13:51:25 1136
原创 松果时序数据库(PinusDB)数据写入测试报告
松果时序数据库(PinusDB)是一款以简单、易用、高性能为目标的开源时序数据库。本篇简单介绍松果时序数据库写入测试。要获取其他信息请参考官方网站或开源仓库,当然,若有好的意见或建议也可以在开源仓库给我们提交Issue或给我们发邮件:官方网站:http://www.pinusdb.cn码云仓库:https://gitee.com/pinusdb/pinusdb邮 件:servic...
2019-09-07 23:03:39 620
原创 松果时序数据库(PinusDB)最佳实践
松果时序数据库(PinusDB)是一款以简单、易用、高性能为目标的开源时序数据库。本篇介绍如何让松果时序数据库以最佳的性能运行。要获取其他信息请参考官方网站或开源仓库,当然,若有好的意见或建议也可以在开源仓库给我们提交Issue或给我们发邮件:官方网站:http://www.pinusdb.cn码云仓库:https://gitee.com/pinusdb/pinusdb邮 件:s...
2019-09-06 15:51:53 1080
原创 松果时序数据库---产品介绍
1. 概述 随着互联网的发展,计算机硬件价格下降、体积小型化使得智能设备大量普及,例如:手环、共享单车、智能电表、环境监测设备、新能源汽车、汽车充电桩等等,这些设备在运营过程中会持续产生数据;针对这些数据的分析能为企业决策、产品升级、智能调度等提供了数据支撑,人类也将步入智能时代。由于智能设备数量巨大,这就对传统数据处理方式提出了挑战。在此背景下我们根据智能设备产生的数据特点,设计...
2019-07-24 06:43:18 1639
原创 从0开始写数据库-02-条件查询
本篇介绍MyBase数据库中条件过滤的实现。您可以在 https://github.com/zhangqhn/mybase下载到MyBase项目源码。数据的抽象MyBase支持整数、浮点数、字符串数据类型,在介绍条件查询之前我们需要先对数据进行抽象,目标是能用一个数据类型表示所有类型的数据。在MyBase的实现中,这个数据类型是DBVal (dbval.h) 它的定义如下:typed...
2019-03-19 08:49:19 394
原创 从0开始写数据库-01-数据存储格式
本篇介绍MyBase数据库中数据文件、记录存储的格式。可以在https://github.com/zhangqhn/mybase下载到MyBase项目源码。1. 数据存储位置通常数据库服务都会有配置文件,数据存储在配置文件指定的目录。MyBase的原则是尽量以最简单的方式实现,故MyBase不包含配置文件,数据存储在程序执行的目录。每个表用一个文件存储,表名为文件名,扩展名为 ...
2019-03-19 08:40:31 1221
原创 从0开始写数据库-00-序言
首先我们的目标不是做一个商业的数据库,而是让一个软件开发的初学者能自己写一个数据库,并能按照自己的想法不断完善,达到提升编程能力的目标。相信大部分人看到这个标题的时候都觉得不可能或这并不简单。为了能更好的说服大家,我们已经完成了一个很基本数据库原型的搭建MyBase并且已经开源,https://github.com/zhangqhn/mybase这个系列文章将会复盘MyBase的开发过程,...
2019-03-19 08:38:35 1119
原创 C/C++内存对齐
在面试或工作中,经常会遇到内存对齐的问题。这里结合我的理解谈一谈对内存对齐的理解。1. 为什么要内存对齐,不对齐会怎么样?内存中存放数据是为了给CPU使用,CPU访问内存数据时会受到地址总线宽度的限制,也就是一次能从内存中拿多少数据到CPU(这里我们忽略CPU高速缓存)。而且,CPU从内存中获取数据时起始地址必须是地址总线宽度的倍数。例如:CPU地址总线是64位(bit,8字节),当一...
2019-03-19 08:37:17 2579 2
原创 MyBase - 一个极简的数据库
MyBase的目标是为软件开发学习者提供一个编程实践平台。您可以在https://github.com/zhangqhn/mybase下载mybase源码。 MyBase仅包含大约4000行c++ 代码,代码简洁、易懂,开发者在学习完 《c++程序设计》 及 《数据结构与算法》后就能轻松看懂所有的代码,有了MyBase在学习软件开发过程中您可以将《c++程序设计》、《数据结构与...
2019-03-19 08:31:30 11436
原创 系统滴答时间
今天以两个小实例谈谈操作系统时间的问题,只是简单谈一下时间,并不完整叙述整个操作系统的时间。实例1. 试想你公司在做一款服务软件,一天你的boss 交代一个任务,对于没有购买许可证的客户可以连续运行软件3天,超过3天软件将自动退出。这个需求怎么做?方案1: 在服务启动时读取系统时间加3天并保存为运行截至时间,接下来定时获取系统时间并判断是否超过了运行截至时间,超过了则触发停止服务的操作。很多人第...
2018-07-02 18:20:05 2625
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人