cassandra概况

为什么选择Cassandra?cassandra到底有那些令人印象深刻的特点呢?不防我们先来看下cassandra目前的大体概况

理论扎实,师出名门

cassandra不仅吸收了dynamo论文中的如何做分布式,如何做副本复制,故障容错等方面成功的经验,又吸取了google bigtable中的LSM单机引擎层面精华。理论扎实,工程实现靠谱,所以面世以来,不断受到人们的追捧。

DB-EnginesRanking排名一骑绝尘

宽表领域第一,全部数据排名第十,可以看出广受用户认可,流行度颇高。

Nosql主流产品性能对比

从benchmark可以看到cassandra性能是摇摇领先的,受用户认可也是有原因的,毕竟能打,有实力。

为什么选择cassandra
了解了cassandra概况,表现抢眼,再让我们深入看看,什么原因让我们选择cassandra

大致有以下几点:

1.线性扩展,轻松应对速度,多样性和复杂性问题
与下一代云应用相关的许多挑战都集中在数据量和数据处理速度上。Cassandra能否有能力应对这种具有多样性的数据流量?答案是肯定的,Cassandra是线性扩展,可以根据前台数据流量轻松确定集群规模,处理能力不够?加一台节点试试。


2.可以处理大量数据集
Netflix,Hulu,Instagram,eBay,Apple和Spotify都在大规模使用Cassandra,作为他们产品后端的一部分。facebook的instangram一天用cassandra处理上亿图片,这足够说明了cassandra可以自如的处理大量数据集。

3. 一致化软硬件环境,易于大规模部署
不像有些分布式系统,cassandra不依赖外部组件,所有必须的操作都集成在cassandra内部了,因为是p2p对等架构,无主,环上的节点都是对等的,所以实际部署时,只需要一种机型,一个进程,极度简化部署及后续运维工作,适合大规模部署。

4. 高度容错
Cassandra采用了许多容错机制。由于C* 是无主的,所以没有单点故障。可以做到不停服滚动升级。这是因为Cassandra可以支持多个节点的临时失效(取决于群集大小),对群集的整体性能影响可以忽略不计。

Cassandra提供多地域容灾。Cassandra允许您将数据复制到其他数据中心,并在多个地域保留多副本。除了作为强大的灾难恢复和业务连续性保障之外,这有助于满足许多监管,离线分析等要求。


图示:多DC可用于多地容灾,或者离线分析用

5. 被证明过,已经在企业应用程序和许多用例中取得成功
已经有许多Cassandra被有效使用的例子。银行和其他金融机构正在使用C*存储大量金融数据。分析公司正在使用Cassandra来存储网络分析数据。医疗公司正在使用Cassandra来存储传感器数据和其他时序数据。还有许多公司利用Cassandra存储物联网数据。所以说cassandra是被证明过的。

6.易于管理
Cassandra简化了系统管理。由于Cassandra是一个无主系统,环中的所有节点都是相同的; 一个同质的系统。它具有容错能力,可以支持节点临时失效,同时对性能的影响最小。这意味着节点易于更换,并且也不要求即刻替换宕机节点。

7.自主优化
有大量的,不同的参数让你根据自身场景不断的调优,举个例子,如果你是一个重写,读很少的场景,可以修改配置参数成重写系统。参数设置不仅仅是集群级别的,也可以是dc级别的,甚至客户端单个请求级别的,比如单次请求设置一致性级别,已达到更低的延时。

图示:调节一致性级别,达到更低延时目标

8.易于集成其他开源组件
Cassandra可以很容易的跟其他开源组件做集成。据我所知,cassandra已经成功跟kafka,spark,solr做集成,打通了大数据生态上下游,成为大数据处理里面重要的一环。

9.出色的监控选项
cassandra提供了很多的监控指标,这些监控项这可以通过Cassandra利用Java MBeans并将它们暴露给不同外部监控系统,比如Datastax的监控系统Opscenter,阿里云的天象监控系统。您可以使用这些指标监控cassandra运行状况,再出现异常指标做出相应的决策。

10. 开源可控&活跃的社区
目前apache cassandra有5.4K Star,并且是开源可控,不需要昂贵的licence费用。stackoverflow上有数万个打了cassandra tag的问题,这些足以说明cassandra足够活跃。

一个开源软件要获得真正意义上的成功,就需要有一个围绕它发展的生态系统。对于像Cassandra这样的数据库,就必须有围绕它的咨询,监控和故障排查系统,插件,仪表系统和备份系统, 使得您的组织不需要重复开发上述一切能力,可以基于社区已有的内容。甚至很多云厂商提供Cassandra托管服务,让您只关注应用程序的开发。

总结
cassandra功能强大,更像一个真正的数据库,以下图总结来结束本文

Cassandra介绍相关推荐

  1. Cassandra介绍和一些常用操作

    Cassandra是一个高可靠的大规模分布式存储系统.高度可伸缩的.一致的.分布式的结构化key-value存储方案,集Google BigTable的数据模型与Amazon Dynamo的完全分布式 ...

  2. Cassandra学习手册之一:Cassandra介绍

    Cassandra是一个大型的分布式的数据模型,它是兼容ACID,ACID指的是原子性(Atomicity).一致性(Consistency).隔离性(Isolation).持久性(Durabilit ...

  3. cassandra_Apache Cassandra和低延迟应用程序

    cassandra 介绍 多年来, Grid Dynamics拥有许多与NoSQL相关的项目,尤其是Apache Cassandra. 在这篇文章中,我们要讨论一个给我们带来挑战的项目,而我们在该项目 ...

  4. cassandra安装及配置

    Cassandra介绍 Cassandra是一个开源的.分布式.无中心节点.弹性可扩展.高可用.容错.一致性协调.面向列的NoSQL数据库. Cassandra的主要组成部分主要有: • 节点(Nod ...

  5. PySpark SQL 相关知识介绍

    1 大数据简介 大数据是这个时代最热门的话题之一.但是什么是大数据呢?它描述了一个庞大的数据集,并且正在以惊人的速度增长.大数据除了体积(Volume)和速度(velocity)外,数据的多样性(va ...

  6. 机器学习和人工智能发展简史

    Year Event Antiquity Hephaestus 和 Pygmalion 的希腊神话结合了智能机器人(如 Talos)和人造生物(如 Galatea 和 Pandora)的概念. Ant ...

  7. 15个nosql数据库

    1.MongoDB 介绍 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.主要解决的是海量数据的访问效率问题,为WEB应用提供可扩展的高性能数据存储解决方案.当数据量达到50GB以上 ...

  8. 介绍Cassandra中的压缩

    在<如何安装和配置Cassandra>中,我们可以在DataFileDirectories中配置数据的存放位置. 当Cassandra启动后,向其中插入的数据就会放在DataFileDir ...

  9. 【华为云技术分享】GeminiDB for Cassandra 流功能介绍

    1      使用GeminiDB for Cassandra流捕获表活动 1.1      功能介绍 当存储在GeminiDB for Cassandra集群中某张表的某项目发生变更时,其他的程序能 ...

最新文章

  1. R语言lm函数拟合多项式回归模型、删除数据中的异常样本outlier、之后诊断模型( diagnostics)、使用plot函数打印回归模型的QQ图、残差拟合图、标度-位置图、残差与杠杆关系图
  2. python决策树逻辑回归_百面机器学习(逻辑回归以及决策树,leetcode)
  3. PHP常用时间函数总结
  4. 51单片机原理知识点,复位时钟和时序(二)
  5. 分步表单_后台产品设计之表单页设计
  6. oracle的pl sql教程,Oracle PL SQL从入门到精通_IT教程网
  7. 关于QQ表情数据库的复制
  8. nema0183 java解析_java解析nmea0183协议
  9. vb datagrid mysql_vb ADO 连接数据库,并绑定datagrid控件
  10. EXCEL-VLOOKUP函数使用
  11. python deap_DEAP(Distributed Evolutionary Algorithms in Python)1.2.2文档(一)
  12. 如何用xmlspy将xml文档生成xsd文件
  13. UVA 12304 计算几何+圆模板
  14. 论文阅读《UV-SLAM: Unconstrained Line-Based SLAM Using Vanishing Points for Structural Mapping》R-AL 2022
  15. 只保留3天!《算法学习》入门到进阶,超全配套案例下载
  16. python连接数据库生成可视化_python3.6 连接数据库并用matplotlib可视化代码
  17. JavaScript聊天器
  18. 《Microduino实战》——3.1 准备开发环境
  19. Vue3的组件开发大法不完全指北
  20. 济南有了“盒区房”,帝王蟹、波士顿龙虾最快30分钟送达

热门文章

  1. Android获取GPS网络定位经纬度信息
  2. java 随机生成名字
  3. 计算机硬件与软件基础知识,计算机硬件与软件基础知识课件.ppt
  4. 简述什么是计算机仿真,计算机仿真技术总复习整理
  5. php制作留言板的题_利用PHP制作留言板实现代码
  6. 25.windbg-!gle、g(错误码、g系列)
  7. 如何判断数据恢复软件能恢复数据呢
  8. 远程代码执行(RCE)漏洞
  9. 集算器入门之安装与基本使用
  10. win7下U盘安装Ubuntu14.04桌面版实现双系统