2

我即将构建一个对学生成绩进行分析的应用程序。需要存储的数据如下所示:

Course: name
Semester: 1st,2nd etc
Student: name
Subject1: marks
Subject2: marks
Subject3: marks
Subject4: marks
Subject5: marks
Subject6: marks

GRAND TOTAL: marks

科目会根据学期和课程而有所不同。主要要求是:

  1. 数据库应允许创建各种报告,如考试报告、学生报告、综合报告、主题报告等。
  2. 它应该有 ruby​​ 库,因为这是我决定的语言。

那么,我应该为这种应用程序选择关系数据库还是 NoSQL 数据库。如果是 NoSQL,那么是哪一个?

质疑 最适合这个用例的数据库是什么?

4

1 回答 1

3

仅考虑您提到的要求,我将采用最简单的方法并使用 RDBMS。我在这里看不到使用 NoSQL 的任何优势,因为:

  1. 数据结构良好
  2. 听起来不像是分布式系统
  3. NoSQL 并不是一个神奇的报告解决方案。事实上,这不是报告的解决方案:)
  4. 考虑到您的域,性能应该不是问题
  5. 考虑到您的域,您确实关心 ACID

然而,RDBMS 有一切可以启动和运行:

  1. 交易
  2. 学习曲线低
  3. 易于实施基本报告

因此,如果目的是快速完成任务 - 我会使用 RDBMS 来完成。如果它只是为了玩数据库 - 尝试用这两种技术实现它,然后比较:)

于 2012-07-08T20:36:22.687 回答