5.2.6. 更多使用
1. 设置行存储是否启用压缩
可以在default属性上设置compress@false,禁止进行压缩,默认不设置则索引内存储采用lz4压缩,索引外列簇采用zip。
具体使用方法如下:
--启用索引列簇存储,行存储不启用压缩:
create columnfamily common_performance (
default at 'index@true' 'store@false' 'compress@false'
);
--启用索引列簇存储、行存储列簇存储,行存储不启用压缩:
create columnfamily common_performance (
default at 'index@true' 'store@true' 'compress@false'
);
2. 列簇名更换后如何使用
可以采用 'cf_old_site@oldcf' 'cf_old@newcf 用于兼容 更换列簇的情形。
(1) 第一种情形-先在配置文件配置列簇(这个方式已经被废弃,没有按照表进行区分),更改为通过create columnfamily方式
cl.column.family.store=true
cl.rowstore.column.family=cf
cl.rowstore.column.family.alltable.s_mod_10=hl
cl.rowstore.column.family.alltable.s_mod_100=hl
--变更为create方式后就读不到列簇的值了
create columnfamily common_performance (
default at 'index@true' 'store@true'
,sss at 'fields@s_mod_10,s_mod_100' 'index@true' 'store@true'
)
--添加 'cf_old_site@cf'就可以读到之前在配置文件中配置的的列簇的值了
create columnfamily common_performance (
default at 'index@true' 'store@true' 'cf_old_site@cf'
,sss at 'fields@s_mod_10,s_mod_100' 'index@true' 'store@true' 'cf_old_site@hl'
)
(2) 第二种方式,通过create columnfamily的方式,但后期由于某种需要更改了列簇的名字
--原先是 sss列簇:
create columnfamily common_performance (
default at 'index@true' 'store@true'
,sss at 'fields@s_mod_10,s_mod_100' 'index@true' 'store@true'
);
--sss列簇变更为mmm列簇,无法再读取到之前sss列簇的值:
create columnfamily common_performance (
default at 'index@true' 'store@true'
,mmm at 'fields@s_mod_10,s_mod_100' 'index@true' 'store@true'
);
--添加 'cf_old@sss',可以继续读取之前设置过的 sss 列簇,即兼容旧列簇的数据:
create columnfamily common_performance (
default at 'index@true' 'store@true'
,mmm at 'fields@s_mod_10,s_mod_100' 'index@true' 'store@true' 'cf_old@sss'
);
3.其他用法
--用来查看系统中的列簇:
show columnfamilys;
--用来删除系统中的列簇:
drop columnfamily XXX;
--用来查看创建列簇的语句(取消show create columnfamily语法支持):
show create table XXX;