虽然我知道不建议公开您的数据库相关ID,并且使用传统的关系数据库似乎很容易避免,但我想知道在使用nosql数据库时如何避免性能影响,其中搜索索引要避免和复杂( long)复合键不应该通过端点公开。
E.g。在Cassandra中,可用的查询链接到数据库模式,因此无需添加索引,如何实现对这些实体进行操作的API以及相应的(非常长的复合)ID?
例如,如何实现REST API以检查表中是否存在条目,如下所示:
TABLE A (
...,
PRIMARY KEY ((pk1, pk2), ck1, ck2, ck3, ck4, ck5)
)
相应的端点看起来像这样(或者至少某处包含URL中的所有主键组件)
GET /v1/A/pk1/pk2/ck1/ck2/ck3/ck4/ck5
这看起来很复杂,如果查询项目列表会很快导致很长的网址。
这个问题通常如何处理?