一种在外部设备和数据库之间同步数据的方法?

时间:2009-08-01 00:55:30

标签: ruby-on-rails database synchronization externalinterface

在我正在设计的应用程序中,我必须与设备通信并将数据读数的历史存储在数据库中。该设备本质上是一个通过串口吐出数字的传感器。应用程序的用户端是RubyOnRails接口,允许用户查看此数据并配置设备。

我想知道数据库和您可以为这种设置推荐的设备之间的连接类型。

到目前为止,我在主机(一台直接通过串口连接设备的计算机)上运行了一个自定义应用程序,它可以作为MySQL数据库的桥梁。应用程序将直接连接到MySQL数据库并执行查询。它工作得很好,但我不确定这是否是最好的解决方案。

我看到的唯一其他选择是拥有一个我的自定义应用程序可以连接到的中间应用程序,而不是直接转到数据库。这可能是主要应用程序的一部分,或者是单独的东西。这会是一个更好的解决方案吗?

你会推荐另一种方法吗?

谢谢,

2 个答案:

答案 0 :(得分:0)

MS SQL Server 2008具有出色的数据同步支持。

SQL Server 2008 Express是免费的,可以作为客户端的复制订阅者(但不是发布者)。

Microsoft Sync Framework

答案 1 :(得分:0)

虽然我从Web服务获取数据,但我有类似的结构。我组织的方式是:

  1. lib/imports中创建课程,例如DailyDataImportDailyDataSummarize(您可以根据自己的意愿或意愿组织层次结构和名称)。
  2. 在新命名空间下创建rake任务,例如import,并根据频率将其添加到您的cron作业中。看看Cron in Ruby。它很有帮助。
  3. 这使我可以更好地控制数据库中的内容。

    需要考虑的一些问题:

    1. 设备遵循什么时间表 填充数据?
    2. 您是否需要原始数据? 希望对它或你有一点控制权 需要处理它,如总结 和聚合等。