看起来DynamoDB和ScyllaDB在功能上完全相似,只是它们使用不同的名称来表示键、二级索引等。
我知道的唯一区别是收费方式。DynamoDB按吞吐量计费,而ScyllaDB按存储大小计费。
因此,想知道何时使用哪个数据库。
看起来DynamoDB和ScyllaDB在功能上完全相似,只是它们使用不同的名称来表示键、二级索引等。
我知道的唯一区别是收费方式。DynamoDB按吞吐量计费,而ScyllaDB按存储大小计费。
因此,想知道何时使用哪个数据库。
以下是在选择DynamoDB和ScyllaDB之间考虑的一些要点(在高层面上)
DynamoDB
ScyllaDB
声明:我是ScyllaDB的员工。
DynamoDB是一个键值NoSQL存储。ScyllaDB的Alternator接口是DynamoDB的API兼容实现。ScyllaDB的优势在于您可以在任何云或本地运行它;而DynamoDB只能在AWS上运行。
ScyllaDB还有一个CQL接口,技术上是一个宽列NoSQL存储。
编辑 实际上,DynamoDB、ScyllaDB和Cassandra都应该被技术上描述为“宽列NoSQL存储”。或者,正如我的同事Nadav所描述的那样,“键-键-值”存储。ScyllaDB和DynamoDB都使用术语“分区键”。ScyllaDB将键的第二部分称为“聚簇键”,而DynamoDB称其为“排序键”。结束编辑
我们也听到客户说,DynamoDB是一个很好的起点,但随着规模的扩大,可负担性受到了影响。转向ScyllaDB意味着他们不必针对自己的数据支付交易成本。也就是说,对于DynamoDB,您查询的越多,付出的代价就越高。这使得重读/写工作负载变得过于昂贵。
因此,很多事情可能取决于您的使用情况。您需要在哪里部署?您管理多少数据?您对这些数据进行了多少次操作?您需要维护多少次每秒操作?
然后,使用ScyllaDB,您可以选择使用哪个接口:DynamoDB API或CQL。通常,除非您需要保持与当前DynamoDB工作负载兼容,我们通常建议使用CQL接口。它提供了更大的灵活性和性能。