【问题标题】:A way to synchronize data between an external device and a database?一种在外部设备和数据库之间同步数据的方法?
【发布时间】:2009-08-01 00:55:30
【问题描述】:

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

我想知道数据库和设备之间的哪种连接可以推荐用于这种设置。

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

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

您会推荐另一种方法吗?

谢谢,

【问题讨论】:

  • 你问的是硬件还是软件?如果是软件,您的具体问题是什么?你有什么问题要解决吗?

标签: ruby-on-rails database synchronization externalinterface


【解决方案1】:

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

  1. lib/imports 中创建类,例如DailyDataImportDailyDataSummarize(您可以根据自己的意愿或意愿组织层次结构和名称)。
  2. 在一个新的命名空间下创建一个rake 任务,比如import,然后根据频率将其添加到您的cron 作业中。看看Cron in Ruby。很有帮助。

这让我可以更好地控制数据库中的内容。

需要考虑的一些问题:

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

【讨论】:

    【解决方案2】:

    MS SQL Server 2008 具有强大的数据同步支持。

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

    Microsoft Sync Framework

    【讨论】:

      猜你喜欢
      • 2017-04-13
      • 1970-01-01
      • 1970-01-01
      • 2013-01-12
      • 1970-01-01
      • 2012-07-30
      • 1970-01-01
      • 2018-01-18
      • 1970-01-01
      相关资源
      最近更新 更多