前23名 Cassandra 面试问题与答案(2025)

这里有 Cassandra 面试问题和答案,帮助应届毕业生和经验丰富的求职者获得他们梦想的工作。

Cassandra 应届毕业生面试问题

1)解释什么是 Cassandra?

Cassandra 是 Facebook 为收件箱搜索开发的开源数据存储系统,旨在跨商用服务器存储和管理大量数据。它可以同时用作

  • 在线应用程序的实时数据存储系统
  • 也可作为读取密集型数据库 商业智能 系统

👉免费PDF下载: Cassandra 面试问答


2)有什么用 Cassandra 以及为什么要使用 Cassandra?

Cassandra 旨在处理跨多个节点的大数据工作负载,而不会出现任何单点故障。使用 Cassandra 旨在

  • 它具有容错性和一致性
  • 千兆字节到千兆字节的可扩展性
  • 它是一个面向列的数据库
  • 没有单点故障
  • 无需单独的缓存层
  • 灵活的架构设计
  • 数据存储灵活,数据分发方便,写入速度快
  • 它支持 ACID(Atom性、一致性、隔离性和持久性)属性
  • 多数据中心和云能力
  • 数据压缩

3)解释什么是复合类型 Cassandra?

In Cassandra复合类型允许使用不同类型的数据连接来定义键或列名。您可以使用两种类型的复合类型

  • 行键
  • 栏名

4)如何 Cassandra 存储数据?

  • 所有数据都以字节形式存储
  • 当您指定验证器时, Cassandra 确保这些字节按照要求进行编码
  • 然后比较器根据特定于编码的顺序对列进行排序
  • 虽然复合材料只是具有特定编码的字节数组,但对于每个组件,它存储两个字节的长度,后跟字节编码的组件,后跟终止位。

5)提及的主要组成部分是什么 Cassandra 数据模型?

的主要组成部分 Cassandra 资料模型 是:

  • Cluster
  • 键空间
  • 专栏与家庭
Cassandra 面试问题
Cassandra 面试问题

6)解释什么是列族 Cassandra?

列族 Cassandra 指的是行的集合。


7)解释集群是什么 Cassandra?

集群是键空间的容器。 Cassandra 数据库被分散到多台共同运行的机器上。集群是最外层的容器,它将节点排列成环形,并向它们分配数据。这些节点有一个副本,在数据处理失败时负责处理。


8)列出其他组成部分 Cassandra?

其他组件 Cassandra Archi质地:

  • Node
  • 数据中心
  • Cluster
  • 提交日志
  • 内存表
  • SS表
  • 布隆过滤器
Cassandra Archi结构图
Cassandra Archi结构图

9)解释什么是键空间 Cassandra?

In Cassandra,以 键空间 是决定节点上数据复制的命名空间。集群由每个节点一个键空间组成。


10)创建键空间的语法是什么 Cassandra?

在中创建键空间的语法 Cassandra is

CREATE KEYSPACE <identifier> WITH <properties>


Cassandra 有经验的面试问题

现在让我们看看高级水平 Cassandra 有经验者的面试问题:

11)提到存储在 Cassandra 柱子?

In Cassandra 列,基本上有三个值

  • 栏名
  • 价值观
  • 时间戳

12)请提及何时可以使用 Alter keyspace?

ALTER KEYSPACE 可用于更改诸如副本数量和键空间的 durable_write 等属性。


13)解释什么是 Cassandra-Cqlsh?

Cassandra-Cqlsh 是一种查询语言,使用户能够与数据库进行通信。通过使用 Cassandra cqlsh,你可以做以下事情

  • 定义架构Define a schema
  • 插入数据并
  • 执行查询

14)请提及 shell 命令“Capture”和“Consistency”决定什么?

有各种 Cqlsh shell 命令 Cassandra。“Capture”命令捕获命令的输出并将其添加到文件中,而“Consistency”命令显示当前一致性级别或设置新的一致性级别。


15)在创建表时需要注意什么? Cassandra?

虽然创建表主键是强制的,但它由表的一个或多个列组成。


16)请提及添加列时需要注意什么?

在添加列时,您需要注意

  • 列名与现有列名不冲突
  • 表未定义紧凑存储选项

17)提及什么是 Cassandra- CQL 集合?

Cassandra CQL 集合 帮助您在单个变量中存储多个值。在 Cassandra,您可以通过以下方式使用 CQL 集合

  • 列表:当需要维护数据的顺序,并且需要多次存储一个值(保存唯一元素的列表)时使用
  • 设置:用于存储一组元素并按排序顺序返回(保存重复元素)
  • MAP:它是一种用于存储元素的键值对的数据类型

18)解释如何 Cassandra 写入数据?

Cassandra 分三个部分写入数据

  • Commitlog 写入
  • 内存表写入
  • SStable 写入

Cassandra 首先将数据写入提交日志,然后写入内存表结构 memtable,最后写入 SStable


19)解释 Memtable 是什么 Cassandra?

  • Cassandra 将数据写入内存结构 Memtable
  • 它是一个内存缓存,内容以键/列的形式存储
  • Memtable 中的数据根据​​ key 进行排序
  • 每个 ColumnFamily 都有一个单独的 Memtable,它从键中检索列数据

20)解释一下 SStable 由什么组成?

SStable 主要由 2 个文件组成

  • 索引文件(布隆过滤器和密钥偏移对)
  • 数据文件(实际列数据)

21)解释 Bloom Filter 在 Cassandra?

布隆过滤器是一种节省空间的数据结构,用于测试元素是否是集合的成员。换句话说,它用于确定 SSTable 中是否有特定行的数据。在 Cassandra 它用于在执行 KEY LOOKUP 时节省 IO。


22)解释如何 Cassandra 将改变的数据写入提交日志?

  • Cassandra 将更改的数据连接到提交日志
  • Commitlog 充当数据的崩溃恢复日志
  • 直到更改的数据连接到提交日志,写入操作才被视为成功

一旦提交日志被刷新到文件,数据不会丢失


23)解释如何 Cassandra 删除数据?

SSTable 是不可变的,无法从 SSTable 中删除一行。当需要删除一行时, Cassandra 给列值分配一个特殊的值,叫做Tombstone,当数据被读取时,Tombstone值就被认为是被删除了。

这些面试问题也会对你的口试有帮助