《分布式数据库原理与应用》——作业六

作业六及答案

快捷查找:Ctrl+F   在搜索框中输入题目

一. 单选题(共13题)

1. (单选题)内存数据库与其他类型的数据库,最大的区别是什么?( )

A. 读写速度较快

B. 可扩展性较高

C. 数据常驻内存

D. 支持增删改查

正确答案: C:数据常驻内存;

2. (单选题)在我们学习的NoSQL数据库中,以下哪个是内存数据库?( )

A. HBase

B. Redis

C. MongoDB

D. Bigtable

正确答案: B:Redis;

3. (单选题)Neo4j图形数据库最适合应用在以下那种场景?( )

A. 快递物流数据管理

B. 社会交际数据管理

C. 家庭用电数据管理

D. 企业考勤数据管理

正确答案: B:社会交际数据管理;

4. (单选题)在Memcached中,以下哪项是Slab Allocator的缺点?( )

A. 会增加CPU的负担

B. 需要增加内存的容量

C. 会提高内存的利用率

D. 无法有效利用分配的内存

正确答案: D:无法有效利用分配的内存;

5. (单选题)如果让你规划一个非常复杂的社交网络应用项目,你会选择以下哪个数据库作为数据管理系统?( )

A. Neo4j

B. Memcached

C. Redis

D. HBase

正确答案: A:Neo4j;

6. (单选题)假如你的项目里面涉及了用户的高并发读写需求,而且都是突发性的临时数据,你会选择以下那种数据库来搭建你的项目?( )

A. Neo4j

B. Bigtable

C. MySQL

D. Memcached

正确答案: D:Memcached;

7. (单选题)NewSQL具备而NoSQL不具备的特性?

A. 海量数据存储特性

B. ACID和SQL特性

C. 分布式数据管理特性

D. 可扩展和高性能特性

正确答案: B:ACID和SQL特性;

8. (单选题)下面哪个不是TiDB的节点?

A. TiDB Server节点

B. PD Server节点

C. Data Server节点

D. TiKV Server节点

正确答案: C:Data Server节点;

9. (单选题)TiDB是基于google的()启发而设计的开源分布式数据库

A. Google Spanner / F1

B. Google Bigtable

C. Google GFS

D. Google MapReduce

正确答案: A:Google Spanner / F1;

10. (单选题)下面哪个不是TiDB数据库的特点

A. 无限水平扩展

B. 高可用性

C. 海量数据存储

D. 低并发

正确答案: D:低并发;

11. (单选题)TiDB Server节点不具备下面哪个功能

A. 查询优化

B. 构造执行器

C. 存储数据

D. 合法性检查

正确答案: C:存储数据;

12. (单选题)在TiKV中,数据以什么样的形式存储的

A. 文件模型

B. 图模型

C. 列族模型

D. Key-Value模型

正确答案: D:Key-Value模型;

13. (单选题)TiKV使用()来实现数据的复制

A. Transaction

B. Raft

C. MVCC

D. Local KV Storage

正确答案: B:Raft;

二. 填空题(共3题)

14. (填空题)NewSQL数据库不仅具有NoSQL数据库对海量数据的存储管理能力,同时还保留了传统数据库支持的____和____特性。

正确答案:(1) ACID(2) SQL

15. (填空题)TiDB的目标是为____和____场景提供一站式的解决方案。

正确答案:

(1) OLTP;在线事务处理;OLTP在线事务处理;在线交易处理

(2) OLAP;在线分析处理;OLAP在线分析处理

16. (填空题)TiDB架构主要由____节点、____节点和____节点三个组件构成

正确答案:

(1) TiDB Server;TiDB Servers

(2) PD Server;PD Servers

(3) TiKV Server;TiKV Servers

三. 简答题(共4题)

17. (简答题)Memcached的Slab Allocation机制,它的工作原理是按照预先规定的大小,将分配的内存分割成特定长度的快以完全解决内存碎片问题。请你回答一下它是怎么实现的。

正确答案:在memcached中将分配的内存,在memcached中称为page,分割成各种尺寸的块(chunk),并把尺寸相同的块分成组(chunk的集合,即slab class)。同时,slab allocator机制还有重复使用已分配的内存的目的。也就是说,分配到的内存不会释放,而是重复利用。
Memcached根据收到的数据的大小,选择最适合数据大小的slab。Memcached中保存着slab内空闲chunk的列表,根据该列表选择chunk,然后将数据缓存于其中。

18. (简答题)什么是TiDB数据库?

正确答案:TiDB是一款结合了传统的关系型数据库和NoSQL数据库最佳特性的新型分布式数据库。它是基于google的Google Spanner / F1 论文启发而设计的开源分布式数据库

19. (简答题)简述TiDB Server的功能?

正确答案:TiDB Server负责解析SQL请求,获取请求内容,然后进行合法性验证和类型推导,接着做查询优化,包括逻辑优化和物理优化,优化完成后构建执行器,最后执行把数据从TiKV中取出来进行计算,最终反馈结果给客户端

20. (简答题)Raft协议将一致性算法分成了几个关键模块?

正确答案:① 领导者选举② 成员变更③ 日志复制

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
分布式数据库原理应用实验中,我获得了以下收获: 1. 深入理解分布式数据库的概念:通过实验,我对分布式数据库的概念有了更深入的理解。我了解到分布式数据库是将数据存储和处理分布在多个节点上的数据库系统,通过网络进行通信和协作。我学会了如何设计和部署分布式数据库系统,以支持大规模、高并发的应用需求。 2. 掌握分布式数据库的数据分片和复制策略:在实验中,我学习了常见的数据分片和复制策略,如垂直分片、水平分片、主从复制和多主复制等。我了解到如何根据应用需求和数据特点选择合适的策略,并学会了如何配置和管理分片和复制。 3. 熟悉分布式事务处理和并发控制:在实验中,我学习了如何处理分布式环境下的事务和并发控制。我了解到分布式事务的特点和挑战,并学会了使用分布式事务管理器来保证事务的原子性、一致性、隔离性和持久性。 4. 学会使用分布式数据库管理系统:在实验中,我还学习了一些常见的分布式数据库管理系统,如MySQL Cluster、Apache Cassandra等。我了解到这些系统的特点和使用方式,并学会了如何配置和管理这些系统。 5. 实践分布式数据库应用开发:通过实验,我有机会参与到一个完整的分布式数据库应用开发过程中。我学会了如何设计和实现分布式数据库应用,包括数据访问、数据操作和性能优化等方面。 总的来说,分布式数据库原理应用实验让我对分布式数据库原理应用有了更深入的了解,并且掌握了一些常用的技术和工具。这些知识和技能对于我今后在大数据处理和分布式系统开发领域的工作将会非常有用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值