IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:data model

共 1 篇相关文章

IT 累计浏览 3,663

Cassandra数据模型

这篇讲的是从DBA视角去理解Cassandra的数据模型。作者指出,面对NoSQL浪潮,传统关系型数据库的管理员也需要了解“非关系型”的建模思路,并以BigTable类的Cassandra为例展开剖析。 文章没有泛泛而谈,而是具体拆解了Cassandra的核心概念:Keyspace(类似Oracle Schema)、Column Family(类似Table),以及Column和Super Column。关键差异在于,Cassandra拥有极灵活的Schema,每一行的列可以不同;且数据在写入时就已按照定义的列名(Column Name)类型(如UTF8Type, TimeUUIDType)排好序,读取时顺序确定,这是一个重要的性能优势。 作者用Twitter的真实Schema作为案例,生动展示了如何用这些概念建模:比如用TimeUUIDType排序的Super Column来存储用户最新的推文和关注关系,这恰好满足了社交场景按时间排序的核心需求。 最后,文章也点出了架构设计的本质是“有所取舍”,Cassandra的模型正是为了高可用和可扩展性而在一致性等方面做出了权衡,为需要处理海量结构化数据的应用提供了一种不同于关系型数据库的思考路径。