【问题标题】:Framework for REST API design for large data set [closed]大型数据集的 REST API 设计框架 [关闭]
【发布时间】:2018-01-17 11:22:47
【问题描述】:

我是一名初学者,我在 API 和后端方面的工作并不多。 我有大量的 JSON 数据,大约有 100,000 条记录(比如用户列表)。

我想实现 RESTful API,通过它可以使用其中一个键(比如用户名)搜索特定记录。

JSON 文件嵌套到 2 个级别。实现上述数据集的最佳方法是什么。由于记录很大,我不希望搜索时间有任何问题。由于我精通JS和Python,所以我可以拥有以下框架-

使用 NodeJS 和 MongoDB(我想 MongoDB 有 map/reduce 用于快速搜索)

将 Django 与 Rest Framework 和关系数据库一起使用。

我应该为这个项目使用哪一个?

【问题讨论】:

标签: python json node.js django mongodb


【解决方案1】:

我建议使用Django Web framework 来实现用户模型和数据存储,而Django REST framework 插件则用于处理API 请求的一切。这是我的简短推理:

  • Django 将处理身份验证、数据库模型和查询,这可能会为您节省大量时间,并且会帮助您生成良好且安全的代码。
  • 在这种情况下建议使用关系数据库,因为您似乎拥有结构良好的数据集。此外,100.000 个条目实际上是一个足够小的数据集,关系数据库可以毫无问题地处理这些数据集。事实上,即使达到数百万,也没什么大不了的。
  • REST 框架将帮助您快速构建支持pagination 的 API,如果您计划一次返回多个条目,这一点很重要。分页功能将允许您为每个请求仅返回一小组值,从而缩短响应时间并允许客户端在必要时获取更多数据(即下一个结果页面)。
  • REST 框架还允许您指定 searchordering 属性,客户端可以通过 API 的 GET 参数访问这些属性。

总而言之,我认为使用像 Django 这样的框架一开始可能会觉得有点矫枉过正,但由于强大的社区支持和大量插件,它将使您能够编写一个运行良好且相对可靠的 API短时间。要开始使用 Django,我强烈推荐 getting started with Django 指南。

【讨论】:

  • 谢谢,这真的很有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-10
  • 1970-01-01
  • 1970-01-01
  • 2019-08-14
  • 2019-05-27
  • 2016-06-07
  • 2011-11-24
相关资源
最近更新 更多