首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调查应用的哪个数据库?

调查应用的哪个数据库?
EN

Database Administration用户
提问于 2014-05-29 16:05:12
回答 2查看 655关注 0票数 0

我需要建立一个非常简单的移动调查应用程序。该应用程序将问不同的问题,人们可以给出三个可能的答案之一,这将永远是“是”,“否”或“可能”。

为了保存这些问题和答案,我需要一个简单的方案,包括两个表,如下所示:

  • 问题(id:int,问题:varchar,createdAt:time戳)
  • 答(id:int,问题id:int,答案:enum,createdAt:time戳)

我在问自己,是否应该为此选择一个好的ol‘MySql,或者是否应该选择像MongoDB这样的NoSQL数据库。

我有以下最低要求:

  • 同时(非锁定),快速插入应该是可能的。
  • 快速读取查询来做一些分析
  • 表数据索引
  • 数百万条目应该没有问题(硬盘空间是限制:)
  • 备份应该是可能的。
  • 方便日期/时间函数

我认为MySQL应该能做到这一点,但我以前从未尝试过像MongoDB这样的数据库。该应用程序将利用JSON作为数据交换格式,我知道MongoDB在这方面发挥得很好。

任何建议都非常感谢!

诚挚的问候

EN

回答 2

Database Administration用户

发布于 2014-05-29 16:40:30

PostgreSQL经常被忽略,但可能值得您注意。它支持MVCC的并发性,可以轻松地执行解析SQL查询,支持索引,扩展得足够好,可以进行热备份,支持日期函数,甚至具有JSON数据类型。二进制JSON (又名: JSONB,BSON)正在添加到较新的版本中,这将使您能够对JSON内容进行索引,并具有更好的分析功能和性能。

查看这篇关于Phoronix的文章:

向PostgreSQL添加二进制JSON支持,与MongoDB http://www.phoronix.com/scan.php?page=news_item&px=MTY0MTU竞争

票数 2
EN

Database Administration用户

发布于 2014-05-29 16:48:06

对于这个应用程序和上述需求,MySQL和MongoDB都已经足够了。但是,我选择MySQL的原因如下:

  • MySQL是一个关系型数据库管理系统,它在服务器级别具有更多的功能
  • 当数据模块不一致时,MongoDB是好的。也就是说,当不同的行有不同的“字段”时
  • MongoDB是可伸缩的,但这里不需要可伸缩性。
  • 如果您不知道其中的任何一个,我认为MySQL更容易开始。
票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/66175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档