Cassandra标准列和超级列
列(column)是Cassandra数据模型中的最基本的数据结构单元。列是一个由列名(key)、值(value)、时间戳(timestamp)构成的三元组。在关系型数据库中,你需要先定义列的名称和和列类型来组成表结构,在插入数据的时候,客户端只需要往预先定义好的表结构插入数值就行了,数据库提供表名称和列名,客户端负责插入数据;而在Cassandra中,数据库只负责提供表名称,列名和数值是由客户端提供的。在关系型数据库中,每行都有相同的列,但在Cassandra中,每行可以有相同的列,也可以有不同的列
标准列(Standard Columm)
标准列的数据结构
| 标准列 | ||
| 名称【】 | 值 | 【】时间戳【】 |
['CF']['Row Key']['Column']
列的实际存放例子
(name=age, value=18, timestamp=1527692421898000)
在上面的例子中,列名是年龄age,值是18。
[default@mytest] get users['zhangpeng'];
=> (name=age, value=18, timestamp=1527692421898000)
=> (name=birthday, value=19890507, timestamp=1529333838055000)
=> (name=first, value=zhang, timestamp=1527692409752000)
=> (name=last, value=peng, timestamp=1527692416150000)
在该例子中,标准列users中的用户“zhangpeng”作为该行数据区分其他行数据的唯一的row key(主键)。
超级列(Super Column)
超级列是一种特殊的列。两种列都是键/值对。但标准列的值是字节组,而超级列的值是一个子列的映射,超级列不能存储其他超级列的映射,也就是说,超级列仅允许使用一层,但是会它不并不限制列的数量。
超级列的数据结构包含它的名字和它存储的列,它的名字和标准列一样,但是存储的值是一个列的映射。
| 超级列 | ||
| 名称【】 | col1:key1,col2:key2,col3:key3,col4:key4 | 【】时间戳【】 |
['CF']['Row Key']['SuperColumn']['SubColumn']
[default@mytest] create column family hg18
... with column_type = Super
... and comparator = UTF8Type
... and key_validation_class=UTF8Type
... and default_validation_class=UTF8Type
... and subcomparator = UTF8Type
... and column_metadata = [
... {column_name:isExon, validation_class:UTF8Type}
... {column_name:cons, validation_class:IntegerType}
... ];
278c4430-bcea-3ae9-a845-079687db907d [default@mytest] set hg18['chr1:000000004']['geneFeatures']['isExon'] = 'T';
Value inserted.
Elapsed time: 2.76 msec(s).
[default@mytest] set hg18['chr1:000000004']['conservation']['cons'] = '';
Value inserted.
Elapsed time: 1.74 msec(s).
[default@mytest] list hg18;
Using default limit of 100
Using default cell limit of 100
-------------------
RowKey: chr1:000000004
=> (super_column=conservation,
(name=cons, value=13, timestamp=1529817745740000))
=> (super_column=geneFeatures,
(name=isExon, value=T, timestamp=1529817725916000)) 1 Row Returned.
Elapsed time: 97 msec(s).
Cassandra标准列和超级列的更多相关文章
- web标准(复习)--3 二列和三列布局
今天学习二列和三列布局,将涉及到以下内容和知识点 二列自适应宽度 二列固定宽度 二列固定宽度居中 xhtml的块级元素(div)和内联元素(span) float属性 三列自适应宽度 三列固定宽度 三 ...
- Web标准:三、二列和三列布局
知识点: 1.二列自适应宽度 2.二列固定宽度 3.二列固定宽度居中 4.xhtml的块级元素(div)和内联元素(span) 5.float属性 6.三列自适应宽度 7.三列固定宽度 8.三列固定宽 ...
- update批量更新某一列成其它列对应的值【原】
update批量更新某一列成其它列对应的值 postgresql 标准sql语句 update AA set name = BB.name , AA.sex = BB.sex from BB wher ...
- SQL Server-聚焦计算列或计算列持久化查询性能(二十二)
前言 上一节我们详细讲解了计算列以及计算列持久化的问题,本节我们依然如前面讲解来看看二者查询性能问题,简短的内容,深入的理解,Always to review the basics. 持久化计算列比非 ...
- android手机旋转屏幕时让GridView的列数与列宽度自适应
无意中打开了一年前做过的一个android应用的代码,看到里面实现的一个小功能点(如题),现写篇文章做个笔记.当时面临的问题是,在旋转屏幕的时候需要让gridview的列数与宽度能自适应屏幕宽度,每个 ...
- 关于DataTable添加新列到指定列的方法
在开发新项目的时候发现了一个问题 dtResult.Columns.Add()方法只能将指定的列添加到DataTable的列的最后的位置,但是不能添加到指定的列上.举例来说,假设dtResult总共有 ...
- .NET组件控件实例编程系列——5.DataGridView数值列和日期列
在使用DataGridView编辑数据的时候,编辑的单元格一般会显示为文本框,逻辑值和图片会自动显示对应类型的列.当然我们自己可以手工选择列的类型,例如ComboBox列.Button列.Link列. ...
- MySQL 添加列, 修改列, 删除列
ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 查看数据库创建语句: show create database 数据库名: 查看创建表的语句: show c ...
- DataTable 删除列 调整列顺序 修改列标题名称
DataTable dt = new DataTable(); //删除列 dt.Columns.Remove("Sex"); dt.Columns.Remove("Ag ...
随机推荐
- 常用模块(json/pickle/shelve/XML)
一.json模块(重点) 一种跨平台的数据格式 也属于序列化的一种方式 介绍模块之前,三个问题: 序列化是什么? 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化. 反序列化又是什么? 将 ...
- 提高R语言速度--转载
1. 参考<R语言编程艺术>(Norman Matloff) chapter 14 & chapter 15 2. 方法 (1)向量化 与非向量化-循环做个对比: ...
- Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) D. Office Keys time limit per test2 seconds 二分
D. Office Keys time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...
- 测试服务器上多个tomcat配置Nginx访问
user nginx; worker_processes 4; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; wor ...
- SqlParameter的两种用法【二】
private void Loadprovince() { string sql = "select * from Tables where ArealdPid=@pid"; /第 ...
- [原][osg][osgearth]倾斜摄影1.介绍
总体介绍: 倾斜摄影就是将拍好的数据,三角网格化再附上贴图. 目前流行处理软件: Street Factory.PIX4DMapper.smart3D 后期开发平台:超图 Skyline smart3 ...
- mkdir -p a/b 表示创建目录a,并创建目录a的子目录b
mkdir -p 命令解释 2016年01月13日 14:24:03 阅读数:742 mkdir -p a/b 表示创建目录a,并创建目录a的子目录b, 若不使用命令-p的话,想要达到同样的效果,需要 ...
- 《剑指offer》第五十八题(翻转单词顺序)
// 面试题58(一):翻转单词顺序 // 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变. // 为简单起见,标点符号和普通字母一样处理.例如输入字符串"I am a ...
- 基于虹软人证核验 2.0 Android SDK开发集成入门
一.功能介绍虹软人证核验 2.0 SDK(以下简称SDK)包含人脸检测.人脸跟踪.人证核验等能力,主要实现人证的1:1比对.其中暴露对外的功能方法有:active 引擎激活init 引擎初始化inpu ...
- 人脸识别最新开发经验demo分享
本来打算做个C#版demo,但没用成功,基于虹软的免费人脸识别技术 过程如下: 1. 传入一张单人脸照片: 2.调用检测人脸函数ASFDetectFaces,成功返回人脸信息的指针: 3.使用 Mar ...