真正的容克食品项目由一个按你的意愿付费(PAYF)咖啡馆网络组成。我们需要记录来自100家咖啡馆的数据,每天产生50行左右的数据。我估计(如果我们扩展的话)每年可以产生大约100万行。如何最好地将这些数据存储在一个允许计算机节点以尽可能简单和用户友好的方式记录数据的系统中?这就是我问题的实质。详情如下。
简介
我知道存储数据的适当方式是用术语“@Wickham2014”来描述的。以这种方式存储的数据规则如下:
TRJFP收集的数据在几个级别上运行,因此需要几个表。这些是
前两张桌子通常由每个咖啡馆每天收集。关于“截取点”的第三张表格(从那里提取食物)也被每家咖啡馆收集,但只有在一个新的截获点被记录下来时才会更新。第5表提供了所有咖啡馆的全球概况,每次添加新咖啡馆时都会更新。
到目前为止,数据库中最大的表将是1,它可能每天存储50个新项目。假设(乐观地)在未来的咖啡馆中记录数据,我们可以记录100家咖啡馆的数据。这将是每天5 000行或每年大约180万行数据。这并不是真正的大数据,但值得仔细考虑如何存储它。
与每个表相关联的变量描述如下。数据可使用性的关键是可以链接数据集。因此,描述连接每个表的链接变量。
存储这些表的主要选项有3种,从简单到复杂。
发布于 2015-08-14 20:25:49
一般来说,我会推荐一个完整的关系数据库。这将给你所需要的一切,并让你优雅地成长。
至于具体使用哪种引擎取决于个人偏好/预算限制/托管需求/与应用层的兼容性/等等。就我个人而言,我可能会使用微软堆栈(SqlServer数据库、应用程序层的C#等),因为这是我最熟悉的,而且编码效率最高。其他人可以选择基于X,Y,Z的其他平台。事实上,任何主流的关系数据库引擎都将支持您的需求。
我不推荐csv文件,因为这很可能会变得难以管理。我会压倒性地推荐Sql而不是csv文件,只给出这两个选项。两者都是轻量级的,但Sql至少在功能上提供了一些数据库。这里有一个很好的链接是SqlLite的优点。基本上很好:本地存储和/或替换CSV/自定义数据存储文件。不是为:替换客户机/服务器SQL数据库引擎(SqlServer、Oracle、PostgreSQL等)而设计的。
我也不推荐Google融合表,因为我相信随着你的成长,管理起来会更加困难。我可能错了,但这是我对这类解决方案的一般经验。同时,融合表是一个实验性的应用程序,所以我会担心,如果“实验”失败.
我不推荐NoSql,因为我认为您不会有什么收获,而且关系类型的报告也会很复杂。
发布于 2015-08-14 21:33:54
想象一下,要从您的帐户中提取一些现金,您的银行将要求您对ATM上的Postgres数据库运行SQL查询。
"Computer noobs“指的是应用程序的用户,不应该直接将他们的数据”记录“到CSV文件、Google表、SQLLite、Postgres、MonetDB或任何其他数据库中。相反,您(或您雇用的开发人员)应该提供一个简单易用的应用程序,以隐藏数据存储、访问、分发和复制的复杂性。
然后,对特定数据存储引擎和数据模型的选择取决于开发人员,基于其他标准(尽管体积度量将发挥一定的作用)。
https://dba.stackexchange.com/questions/111100
复制相似问题