Kairbon'Blog.

基于Raft协议的NoSQL数据库的设计和实现(1)-简介

字数统计: 354阅读时长: 1 min
2021/05/11

基于Raft协议的NoSQL数据库的设计和实现

1. 论文简介

近些年来,随着大数据业务和巨型Web网站的增多,如何存储和管理各种数据成为了各大公司棘手的难题。为了存储日益增加的用户个人数据和业务数据,能够灵活简单使用,高可用的,使用简便的NoSQL数据库在工业界的使用越来越多。本课题提出了一种基于Raft一致性协议的内存式NoSQL数据库(下称DistKV),并且支持表结构。本课题对当前NoSQL数据库使用上因为架构设计导致的丢数据,不可用,性能瓶颈等问题进行了探讨和优化,并且尤其对于大数据存储场景做出专项优化。

  1. 设计实现DistKV的基本架构,考虑横向扩展,表结构存储等基本需求。

  2. 设计实现高性能专用RPC用于降低传输延时。

  3. 对于业务中使用NoSQL数据库遇到的丢数据,不可用问题做专项测试和比对。

  4. 和市面流行的NoSQL数据库在读写方面进行比对。

本论文主要通过以下几个方面展开讲述本系统的设计。

  1. History
  2. Raft
  3. Architecture
  4. Partition和StoreServer
    1. Multi-thread
    2. Sync
  5. MetaServer
    1. Function
    2. Optimization
  6. Algorithm和Data struct
    1. SkipList
  7. DRPC
    1. NIO
    2. Multi-Thread
    3. Code
  8. API
    1. DistKV Client
    2. DRPC Client
  9. Benchmark
  10. Conclusion
  11. Acknowledgments
  12. Reference
CATALOG
  1. 1. 基于Raft协议的NoSQL数据库的设计和实现
    1. 1.1. 1. 论文简介