我目前正在从事一个项目,在该项目中我需要将数据库与 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/