什么是表格存储?
表格存储是阿里云提供的一种数据服务。阿里云官方文档的定义如下:
表格存储(Table Store)是阿里云自研的NoSQL多模型数据库,提供海量结构化数据存储以及快速的查询和分析服务。表格存储的分布式存储和强大的索引引擎能够提供PB级存储、千万TPS以及毫秒级延迟的服务能力。
在阿里云产品与服务中,它被归类于"存储与CDN"类别。见下图:
表格存储是存储类别还是数据库类别?
存储跟数据库的区别
存储和数据库的关系很微妙,在有些情况下,它们之间不一定有非常清晰的界限。毕竟,任何数据库的实现最后也会落实到存储上的 :)。存储一般会涉及到文件系统,文件系统通常是用来存储一些非结构化,可能不相关的数据。而数据库通常来说用于存储相关联的,结构化的数据,以一种更有效的方式进行增删改查的操作。数据库的发展从上世纪70年代的关系型数据库,到90年代的对象数据库,到2000年后的NoSQL及NewSQL的发展过程。
Wikipedia 对NoSQL的描述
Wikipedia Database 词条,里面对NoSQL是这样描述的:
NoSQL databases are often very fast, do not require fixed table schemas, avoid join operations by storing denormalized data, and are designed to scale horizontally.In recent years, there has been a strong demand for massively distributed databases with high partition tolerance, but according to the CAP theorem it is impossible for a distributed system to simultaneously provide consistency, availability, and partition tolerance guarantees. A distributed system can satisfy any two of these guarantees at the same time, but not all three. For that reason, many NoSQL databases are using what is called eventual consistency to provide both availability and partition tolerance guarantees with a reduced level of data consistency.
其它NoSQL数据库的分类
阿里云提供的NoSQL数据库除了表格存储以外,还有MongoDB, HBase。目前除了表格存储被分在了存储类别外,其它2个NoSQL数据库顺利归类于数据库类别。除了表格存储出生时被爹妈取了这样一个名字外,我们没有理由把它归类于存储类别。当然也不排除底层实现细节的原因。在实际使用中,也有发现表格存储的性能会成为一个瓶颈,接下来我们会对它进行专门的性能测试。
AWS 对于NoSQL的分类
AWS服务里使用的NoSQL数据库服务是DynamoDB,从下图清楚看到DynamoDB是归类于数据库类别的。
总结
综上所述,表格存储虽然从名字上阿里云团队已经将它归入存储类别,但考虑到它确实是一种NoSQL数据库,建议可同时在数据库类别中也包含表格存储服务。已将此建议在云计算架构钉钉交流群反馈给阿里云团队。希望能给表格存储一个合适的类别身份。