《NoSQL权威指南》——2.5 执行一个ALTER语句-阿里云开发者社区

开发者社区> 数据库> 正文

《NoSQL权威指南》——2.5 执行一个ALTER语句

简介:

本节书摘来自异步社区出版社《NoSQL权威指南》一书中的第2章,第2.5节,作者:【美】Joe Celko(乔•塞科) ,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 执行一个ALTER语句

ALTER语句能够改变模式(schema)中的结构。在列式模型中,ADD COLUMNDROP COLUMN是很容易的,创建一个新的列结构或从一个物理存储中删除旧的列结构。在面向行的模型中,每个行必须被压缩或延伸,索引也需要被重组。

因为同样的空间问题,在传统的面向行的数据库中修改数据类型也是很难的。在现实世界中,大部分变更是增加一列的物理存储。数字变得更大,字符串变得更长;只有日期类型似乎是不会膨胀的数据值,自从有了ISO-8601标准,一个固定的范围是0001-01-01~9999-12-31。

在列式模型中,修改容易得多。将位置数据复制到一个新的列描述符,并将旧的数据值强制转换为新的数据值。当有新的列结构加载时,删除旧的,并添加新的。没有任何查询需要修改,除非它们具有特定数据类型的谓词(例如,如果日期成为整数,则foobar_date<= CURRENT_TIMESTAMP不会解析)。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章