数据收集:离线填充数据库

时间:2015-09-12 11:17:56

标签: database mobile web-applications offline

我目前正在与一个非政府组织合作,我们需要在塞内加尔进行一些调查。我们希望在移动设备上实现这一目标,但不能依赖3G连接(成本高且并不总是可靠)。

因此,我们正在寻找一种数据收集/编辑工具:

  • 是基于网络的;
  • 适用于移动设备和桌面设备;
  • 离线工作;
  • 将其数据存储在关系数据库中(mysql,postgres ......);
  • 管理关系;
  • 可以管理地理输入(GPS,自定义形状);
  • 可以管理媒体输入(照片);
  • 是非政府组织的开源或免费/廉价。

我认为它会这样运作:

  1. 在线时,用户选择他希望能够离线编辑的表格
  2. 将这些表格下载到网络应用程序的本地存储
  3. 用户可以在本地存储上添加/编辑/删除行,即使离线
  4. 当重新联机(在办公室)时,用户可以将更改同步回服务器
  5. 任何模式的编辑(添加/删除/更改列或表)都必须在线完成。

    如果每条记录都有一个UUID,这将有效,这样两个用户同时离线添加数据就不会发生冲突。当然,如果两个用户编辑相同的数据,那么冲突的可能性很小,但由于每个用户都在不同的区域工作,所以不会经常发生冲突,并且输入数据比修改/删除数据要频繁得多。通过修改uuid"甚至可以产生冲突警报。 当然,如果数据库增长,本地数据也会变得很大。也许还有能力过滤哪些记录要同步(例如最后100条记录,或基于地理边界)。

    用户界面会显示:

    • a" form"查看,输入或编辑数据,使用与字段类型对应的小部件(理想情况下包括1到N个关系)
    • a" list"查看,概述数据,并进行一些批处理操作
    • 最近"地图"视图,用于具有地理数据的表格

    我知道的很多,但我认为这是不可能的,我们是唯一需要这种工具的组织。

    我在研究完美的数据收集工具时发现了KoboToolbox。我几乎满意,但有一些东西不能满足我们的需求: - 在现场编辑数据的能力; - 在不同形式之间建立1-n关系的能力; - 能够直接填充数据库(可以使用其他工具,如GIS或Access访问,以进行显示,分析或批量修改)。

    你们中有谁知道这样的工具吗? 或者他们不存在的原因是什么?

    非常感谢!

    奥利弗

1 个答案:

答案 0 :(得分:0)

好的,我遇到的wq.io似乎几乎符合我的所有规格。

它是一个基于django顶部的框架,因此它仍然需要相当多的技术知识,我仍然对更简单的解决方案感兴趣。

Bests