java - 在 API 中捆绑数据库

标签 java database api file

我目前正在从事一个项目,在该项目中我需要将数据库与 JAVA API 一起打包。从某种意义上说,数据库应该是安全的,除了 API 之外,任何人都不能访问它。关键是数据库中的数据是知识产权,不应该公开。这里有问题。该数据库包含大约 500 万条记录(仅 4-5 列)。我还需要基于具有聚合函数的索引字段来查询它。我很清楚有 java 嵌入式数据库,例如 derby、hsql 等。但我严重怀疑他们的表现。我知道这个要求听起来很奇怪。但至少这是一个开始。

API 旨在并发访问,需要从该数据库中检索查找值。这真的是一个好的设计还是该方法有问题。欢迎提出任何架构建议

NewInfo:如果嵌入式数据库看起来没有前途,那么将嵌入式文件与 API 放在一起怎么样?这可行吗?

最佳答案

如果您要分发数据库,​​您不会阻止人们直接访问它。这只是 DRM,而且我们从长期经验中了解到,DRM 不起作用

保持数据私密性的最简单方法是将其保存在您控制的服务器上,并提供网络 API。这也允许您使用您选择的数据库。

如果您确实将其保留在客户端上,我想您会发现嵌入式数据库的性能比您预期的要好。另一个不错的选择是 SQLite。

我不确定您需要哪种并发。您是否设想给定客户端上的多个程序同时访问数据库?

关于java - 在 API 中捆绑数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5209339/

相关文章:

api - Gmail API - 元数据范围不支持 'q' 参数

java - 具有乘法实现复杂性的 For 循环

java - 托管使用Java和Rails代码的Web应用程序?

database - 从 firebase 数据库检索数据并快​​速操作

javascript - 为什么不需要等待数据库查询的返回

java - Google Drive API 是否允许我们无需身份验证即可下载公共(public)文件?

api - REST Api 的自动化测试

java - 如何在 JTextPane java 中复制图像?

java - JCabi方面@RetryOnFailure如何抛出异常

database - 我可以使两列彼此唯一吗?或者在redis中使用复合主键?