Cassandra 集合:CQL 中的 Set、List 和 Map 及其示例
什么是 Cassandra 集合?
Cassandra 集合是处理任务的好方法。集合可以存储多个元素。Cassandra 集合存在一些限制。
- Cassandra 集合不能存储超过 64KB 的数据。
- 保持集合较小,以避免查询集合的开销,因为整个集合都需要遍历。
- 如果在集合中存储了超过 64KB 的数据,则只能查询 64KB,这将导致数据丢失。
Cassandra 集合的类型
Cassandra 主要支持三种类型的集合
- 设置
- 列表
- Map
Cassandra Set 集合
Set 存储一组元素,查询时返回排序后的元素。
语法
以下是存储教师多个电子邮件地址的 Set 集合的语法。
Create table University.Teacher ( id int, Name text, Email set<text>, Primary key(id) );
示例
以下是使用“Teacher”表创建“Email”列作为集合的快照。
以下是向集合插入数据的快照。
insert into University.Teacher(id,Name,Email) values(l,'Guru99',{'abc@gmail.com','xyz@hotmail.com'});
Cassandra List 集合
当元素的顺序很重要时,使用 List。
示例
以下是向“Teacher”表添加 List 类型列 courses 的快照。
以下是向“coursenames”列插入数据的快照。
insert into University.Teacher(id,Name,Email) values(2,'Hamilton',{'hamilton@hotmail.com'},[Data Science']);
以下是显示插入后当前数据库状态的快照。
Cassandra Map 集合
Map 是一种集合类型,用于存储键值对。顾名思义,它将一个事物映射到另一个事物。
例如,如果您想保存课程名称及其先修课程名称,则可以使用 Map 集合。
示例
以下是为课程名称及其先修课程名称创建 Map 类型的快照。
以下是向 Map 集合类型插入数据的快照。
insert into University.Course(id,prereq) values(1,{'DataScience':'Database', 'Neural Network':'Artificial Intelligence'});
摘要
- Cassandra 集合是处理任务的好方法。集合可以存储多个元素。
- Cassandra 主要有三种类型的集合:Set、List 和 Map。
- Set 集合存储一组元素,查询时返回排序后的元素。
- List 集合在元素的顺序很重要时使用。
- Map 是一种集合类型,用于存储键值对。