Cassandra基本介绍(3) - 架构简介

通过上面2节,大家了解到了RDBMS遇到的问题,以及对Cassandra有了基本的了解。下面将介绍下Cassandra内部简单结构。

通过本章,大家应该了解到:

  1. Cassandra Write流程
  2. 什么是SSTable
  3. Cassandra Read流程

  • Cassandra Write流程
  1. Writes可以被写入到集群中的任意节点
  2. Writes被写入到commit log,同时写到memtable
  3. 每一个write包含一个timestamp
  4. Memtable定期flush到硬盘中(sstable)

    当memtable的内容超过了其配置的限制,它包含的数据就会被放到一个队列中并刷新到磁盘。你可以通过修改cassandra.yaml中 memtable_flush_queue_size的值来改变队列的长度

  5. 新的memtable在内存中创建
  6. 删除是一种特殊write,称之为”tombstone”(墓碑)

  • 什么是SSTable

SSTable有序字符串表(Sorted String Table),是从Google的Bigtable里借鉴过来的概念。一旦memtable被刷写入磁盘,成为一个SSTable,它就是不可变的了。

特点如下:

  1. 数据文件:存储记录,不可变
  2. 每一个write包含一个timestamp
  3. Partition被分割到多个SSTable
  4. 新的memtable在内存中创建
  5. 通过compaction合并,只保存最新的timestamp
  6. 删除被标记为tombstone

  • Cassandra Read流程
  1. 任何server都可以作为coordinator被查询
  2. 通过查询key定位交互的nodes
  3. 在每一个node上,数据都是从SSTable拉取并合并
  4. 一致性< ALL时,将会在后台执行read repaire(read_repaire_chance)

时间: 2024-10-25 12:21:29

Cassandra基本介绍(3) - 架构简介的相关文章

淘宝高性能可伸缩平台架构简介 (转)

一 应用无状态(淘宝session框架) 假如在session中保存了大量与客户端的状态信息,保存状态信息的server宕机时 通常通过集群解决,不仅有负载均衡,更重要的是要有失效恢复failover tomcat用集群节点广播复制,jboss用配对复制等session状态复制策略,但严重影响系统的伸缩性,不能通过增加更多的机器达到良好的水平伸缩 因为集群节点间session通信随着节点的增多而开销增大,因此要想做到应用本身的伸缩性,要保证应用无状态,这样集群中的各个节点来说都是相同的,使系统更

自己动手写处理器之第一阶段(3)——MIPS32指令集架构简介

将陆续上传本人写的新书<自己动手写处理器>(尚未出版),今天是第四篇,我尽量每周四篇 1.4 MIPS32指令集架构简介 本书设计的处理器遵循MIPS32 Release 1架构,所以本节介绍的MIPS32指令集架构指的就是MIPS32 Release 1. 1.4.1 数据类型 指令的主要任务就是对操作数进行运算,操作数有不同的类型和长度,MIPS32提供的基本数据类型如下. 位(b):长度是1bit. 字节(Byte):长度是8bit. 半字(Half Word):长度是16bit. 字(

什么是DNN,Dotnetnuke介绍和功能简介

1. What is DNN? DNN是DotNetNuke(DotNet)的简写.它是在IBUYSPY(IBUYSPY是微软用来推广ASP.NET而推出的范例程序)的基础上发展起来的,是一个免费的.开放的源代码框架, 是一个可扩展的内容管理系统(CMS).可广泛应用于创建与维护专业的Web应用程序,如商务网站.企业内网(Intranet).外网网站以及在线内容发布网站. DNN能给我们带来什么?如果你是一个项目开发人员,DNN对于你来说,它可以快速建站:如果你是架构师,那么DNN的模块化思想是

ReactiveCocoa常见操作方法介绍/MVVM架构思想

1.ReactiveCocoa常见操作方法介绍. 1.1 ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中,因此只要继承RACStream就有了操作处理方法. 1.2 ReactiveCocoa操作思想 运用的是Hook(钩子)思想,Hook是一种用于改变API(应用程序编程接口:方法)执行结果的技术. Hook用处:截获API调用的技术. Hook原理:在每次调用一个API返回结果之前,先执行你自己的方法,

#01# SCCM架构简介

SCCM架构简介 简单来说,System Center Configuration Manager(SCCM/ConfigMgr)由SMS(Systems Management Server)发展而来,其作为一款针对企业级的客户端,服务器管理平台,提供迅速有效的配置管理.软件分发.系统部署.软硬件资产等完善的解决方案. 前言 System Center体系的资料中,中文资料还是相对较为缺乏,本文目的是希望借助51CTO平台以博客的形式将我所了解的相关内容介绍给做微软运维的朋友,希望可以对大家的日

浅出深入MySQL-MySQL架构之架构简介

MySQL架构简介 MySQL服务器由SQL层和存储引擎层构成.SQL层功能包括权限判断.SQL解析和查询缓存处理等,存储引擎层则是完成底层数据库数据存储操作.如下图: SQL层可分为三层,分别是连接/线程处理层.查询缓存和查询分析器层.优化器层.连接/线程处理层主要用来处理客户端的请求.身份验证和数据库安全性验证等.查询缓存和查询分析器层是SQL层里头的核心部分,负责查询的解析.优化.缓存,以及所有内置的函数.存储过程.触发器.视图等.优化器主要负责存储和获取所有存储在数据库中的数据.

openstack架构简介J版(更新中)

title : OPENSTACK架构简介 openstack的发展及历史 openstack是什么? OpenStack是一个美国国家航空航天局和Rackspace合作研发的云端运算?软件,以Apache许可证授权,并且是一个自由软件和开放源代码项目. 通俗点来讲,openstack就是一个用python编写的linux软件,openstack是一个开源云平台. openstack能干嘛? openstack最基础的功能就是产生云主机(vm虚拟机),用这些虚拟机可以做你想做的很多事.例如产生一

Cassandra基本介绍(1) - 关系型数据库(RDBMS)概述

    作为一名应用开发者,数据库应用已经非常广泛了.你可能使用过关系型数据,比如MySQL.PostgreSQL,也可能使用过文档存储,比如MongoDB,或者key-value数据库,比如Redis.每一种数据库都有它的长处,也许你还正在考虑使用分布式数据库,比如Cassandra,来解决你手头上的工作. 使用这些数据产品并不是要取代原有的数据产品,而是为不同的应用场景提供更多的选择.NoSQL代表着:选择合适的方案处理合适的业务场景. 在"Cassandra基本介绍"这个课程,我

Exchange Server 2013部署(一)环境介绍及架构准备

Exchange Server 2013部署(一)环境介绍 Exchange Server 2013提供了新的技术功能和服务特性:相对于之前Exchange 2007和Exchange 2010的5角色而言,Exchange Server 2013只包括如下的2个服务器角色: 客户端访问服务器角色(CAS):该角色用于接受来自Internet的Microsoft Office Outlook.Outlook Web App.移动设备. POP和SMTP的所有连接.客户端访问服务器可以组建客户端访