为什么选择Cassandra

简介: cassandra概况 为什么选择Cassandra?cassandra到底有那些令人印象深刻的特点呢?不急,我们先来看下cassandra目前的大体概况。 理论扎实,师出名门 cassandra不仅吸收了dynamo论文中的如何做分布式,如何做副本复制,故障容错等方面成功的经验,又吸取了google bigtable中的LSM单机引擎层面精华。

cassandra概况

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

理论扎实,师出名门

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

DB-EnginesRanking排名一骑绝尘

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

Nosql主流产品性能对比

image
从benchmark可以看到cassandra性能是摇摇领先的,受用户认可也是有原因的,毕竟能打,有实力。
摘自:https://www.datastax.com/nosql-databases/benchmarks-cassandra-vs-mongodb-vs-hbase

为什么选择cassandra

了解了cassandra概况,表现抢眼,再让我们深入看看,什么原因让我们选择cassandra
我大致总结了如下十点:

1.线性扩展,轻松应对速度,多样性和复杂性问题

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

2.可以处理大量数据集

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

3. 一致化软硬件环境,易于大规模部署

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

4. 高度容错

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

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

5. 被证明过,已经在企业应用程序和许多用例中取得成功

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

6.易于管理

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

7.自主优化

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

8.易于集成其他开源组件

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

9.出色的监控选项

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

10. 开源可控&活跃的社区

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

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

总结

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

Cassandra是您理想的数据库原因有很多。了解您的系统要求,工作负载和未来业务增长情况将有助于您做出正确的选择。如你所见,选择Cassandra是一个十分明智的选择。

钉钉群交流

为了营造一个开放的 Cassandra 技术交流,我们建立了微信群和钉钉群,为广大用户提供专业的技术分享及问答,定期在国内开展线下技术沙龙,专家技术直播,欢迎大家加入。
image

钉钉群入群链接:https://c.tb.cn/F3.ZRTY0o

相关文章
|
10月前
|
网络协议 Java 应用服务中间件
框架源码私享笔记(01)Tomcat核心架构功能 | 配置详解
本文首先分享了《活出意义来》一书序言中的感悟,强调成功如同幸福,不是刻意追求就能得到,而是全心投入时的副产品。接着探讨了Tomcat的核心功能与架构解析,包括网络连接器(Connector)和Servlet容器(Container),并介绍了其处理HTTP请求的工作流程。文章还详细解释了Tomcat的server.xml配置文件,涵盖了从顶级容器Server到子组件Connector、Engine、Host、Context等的配置参数及作用,帮助读者理解Tomcat的内部机制和配置方法。
|
11月前
|
边缘计算 人工智能 5G
《元宇宙痛点求解:网络延迟与带宽限制突破指南》
元宇宙的沉浸式体验依赖于低延迟和高带宽网络,但当前网络延迟和带宽限制严重影响了用户体验,如VR游戏中的画面延迟和社交场景中的卡顿。5G、6G技术及卫星通信将大幅降低延迟并提升带宽,边缘计算与云计算的协同优化数据处理,AI智能调整传输策略,SDN等创新网络架构也将助力突破瓶颈。未来,这些技术将共同推动元宇宙实现流畅、逼真的沉浸式体验。
416 1
《元宇宙痛点求解:网络延迟与带宽限制突破指南》
|
10月前
|
人工智能 前端开发 数据挖掘
真实场景|芯片研发平台如何真正实现一体化混合云调度?
AI芯片设计公司X面临多项目并行研发的高并发算力缺口,本地集群资源紧张。为解决混合调度和成本可控的难题,X公司引入MemVerge的EDA混合云研发平台。该平台统一调度本地与云端资源,无缝兼容现有工作流程,智能动态扩缩容,优化成本。例如,在前端回归验证中,3000个job通过优先使用本地2500核集群,剩余1000个job自动调度至云端运行,确保高效处理。对于新项目紧急任务,平台智能分配云上资源,并收集运行数据优化后续调度。
278 4
|
11月前
|
人工智能 自然语言处理 程序员
通义灵码×DeepSeek 实战:打造一款小游戏,分享给朋友玩
通义灵码×DeepSeek 实战:打造一款小游戏,分享给朋友玩
|
12月前
|
存储 人工智能 芯片
《光存储与3D存储:开启人工智能硬件存储新时代》
在人工智能快速发展的背景下,数据存储技术的重要性日益凸显。光存储(如全息、多维、超分辨光存储)和3D存储(如3D NAND闪存、3D NVM)等新型技术,以其高密度、高速度的优势,为AI硬件带来全新机遇。这些技术不仅能大幅提升数据处理效率,支持实时决策,还面临成本、稳定性和兼容性等挑战。未来,科研人员和企业需共同努力,推动这些技术与AI硬件的深度融合,助力AI创新与发展。
279 13
|
开发者 Python
【Python】已完美解决:ERROR: Could not find a version that satisfies the requirement re
【Python】已完美解决:ERROR: Could not find a version that satisfies the requirement re
3013 0
|
Linux 网络安全 虚拟化
Linux操作系统第一章(Linux操作系统的带入,vmware-17虚拟化软件运用,FinalShell远程连接Linux )
Linux操作系统第一章(Linux操作系统的带入,vmware-17虚拟化软件运用,FinalShell远程连接Linux )
|
传感器 监控 安全
eFuse电子保险丝,需要了解的技术干货来啦
电子保险丝(eFuse)作为热保险丝的升级版,提供更快的反应速度(微秒至纳秒级)、低电流操作、可复位功能、反向电流和过压保护等优势。它们常用于需要快速保护的场景,如热插拔、汽车应用、PLC和电池管理。eFuse可以选择锁定或自动重启模式,根据应用需求调整。虽然可以使用分立组件构建基本的eFuse,但完整的IC解决方案更紧凑、稳定且功能丰富,通常包含多种保护特性,并已通过安全认证,适用于USB终端、笔记本电脑、服务器、可穿戴设备等多种应用。
665 4
|
存储 API 数据库
手机号注册登录(保姆级)
在uni-app中,登录流程分为三个主要步骤:1) 发送登录请求至`/api/admin/loginUser`,检查返回的`code`是否为200;2) 如果`code`为200,将用户信息存入vuex并持久化到localStorage;3) 提供登录、注册及找回密码的界面元素,如表单验证、按钮点击事件处理,其中注册涉及验证码验证、新用户添加到数据库。登录成功后,用户信息会被用于后续的接口调用身份验证。
390 2
|
机器学习/深度学习 人工智能 算法
探索软件测试中的AI辅助技术:未来趋势与挑战
【5月更文挑战第20天】 随着人工智能(AI)技术的飞速发展,其在软件测试领域的应用也日趋成熟。本文旨在深入探讨AI在软件测试中的角色,分析其带来的优势、面临的挑战以及未来的发展方向。通过实例分析,我们将揭示AI如何提高测试效率、优化测试流程并预测潜在缺陷,同时指出集成AI的测试工具和技术在实际工作中的应用情况,为软件测试工程师提供前瞻性的视角和实践指南。