Cassandra起源

2007 年 Facebook 为了解决消息收件箱搜索问题( Inbox Search problem)而开始设计 Cassandra 项目。 当时 Facebook 遇到了传统的方法难以解决的超大数据量存储可扩展性问题。具体来说,项目团队需要处理大量的消息副本、消息的反向索引等不同形式的数据,需要处理很多随机读和并发随机写操作。

在2009年3月,Cassandra 被转移到 Apache 孵化器项目,并在2010年2月17日,它被投票成为一个顶级项目。 在 Apache Cassandra Wiki 上,您可以找到 committers 列表,其中许多人自 2010/2011 年以来就一直参与该项目。 committers 主要来自 Twitter,LinkedIn,Apple,其中还包括了许多独立开发者。

Cassandra在国外有大量的项目使用案例,其中不乏有很多大公司都在使用,例如:沃尔玛、Facebook、Spotify、Uber、苹果公司、Best Buy、Ebay、HuLu、Instagram,等等。但是,恰恰相反,在国内对此却不温不火。

由于我们在舆情系统中使用了Cassandra,并且前期也做了大量的调研和性能测试、稳定性测试、集成测试、迁移测试、灾难恢复测试等。之前我们一直使用mongoDB,但是他给我们带来了一个硬伤,删除数据后磁盘空间大小不变。因此,我们正在逐步抛弃mongoDB,转向Cassandra。

Cassandra 直接操作本地磁盘或者分布式磁盘,而 HBase 需要依赖 HDFS共享存储,这样从系统维护的角度上来考虑,Cassandra优于HBase了。在同等基础设施性能的 Cassandra 写入性能优于 HBase 近乎一个数量级,读性能基本持平。

下面就把我们对Cassandra的调研结果向大家分享,由于内容过长,所以将分享的内容将分为4个篇章,同时每个篇章里面的案例,我们会尽量把公司或机构的背景以及实际的应用场景和Cassandra使用规模披露给大家。

Ably

随着物联网(IoT)和新技术的兴起,很多公司有能力收集和使用比以往任何时候都多的数据更多的数据也意味着更高的期望和更激烈的竞争,由此,Ably为多家公司提供物联网消息通讯和联网数据传输平台,最终存储在 Apache Cassandra中。他们有望在2023年达到每月10亿台设备的消息通讯。Ably将物联网之间传输的数据和消息通过互联网传输,并且使用Cassandra来存储实时的持久化消息。Ably在实践的过程中也提到了遇到的故障问题:Conclusion: Believe Cassandra, but don’t use counter columns (相信Cassandra,但是不要相信counter 计数器)。这也是对我们有很好的提示和前车之鉴。

Cassandra counter columns: nice in theory, hazardous in practice | Ably Blog: Data in Motion

Activision

美国动视动视公司(Activision, Inc.)成立于1979年,是一家视频游戏开发商、发行商和经销商。美国动视发行的第一个产品是为Atari 2600设计的视频控制台。动视是世界上最大的电子游戏(Video Game)开发商和发行商。他们通过高度个性化的通信向玩家发送信息。它使用了大量实时数据,并使用Apache Cassandra构建消息实时存储。该公司在2011年开始了一个产品研发项目,其中包括改进其使用数据的方式,以提供更好的客户体验。他们尝试了许多不同的数据库,包括Oracle、MongoDB和Infobright,在试图找到一个能够解决所有挑战的数据库。随着2014年《使命召唤:先进战争》的发布他们试用了 Apache Cassandra,可以用高度个性化的通信方式向玩家发送信息,以增强玩家的体验并增加参与度。

Case Study: Cassandra Meets Call of Duty - DATAVERSITY

AdStage

AdStage.io是一款跨平台广告管理工具,能够让在线广告更容易上手。。AdStage想帮助中小型公司更好地在多个在线广告平台上制作、投放和管理广告。AdStage一直在代表广告商监控业绩趋势并优化营销活动。Apache Cassandra提供了公司所需的运行速度,以确保平台具有低延迟和所需的吞吐量。

Resources - Instaclustr

Urban Airship

Urban Airship成立于2009年,总部位于美国俄勒冈州波特兰。Urban Airship为其客户提供多渠道营销解决方案,利用手机程序、短信和电子邮件各种渠道进行信息推送,拥有众多旅游企业客户,例如阿拉斯加航空。去年,Urban Airship帮助Google Pay通过移动设备向用户提供票务和登机服务。该公司最初是一个支持推送通知的平台,但后来将营销渠道扩展到电子邮件、短信、移动钱包和语音助手等。目标是通过这些渠道管理消息推送,统一全渠道的客户数据。

最初Airship将设备数据存储在一组Postgres Shards中,他们的规模很快超过了新添加Shards的存储负载,因此他们转向使用HBase和Cassandra的多数据库体系结构。特别是2016年美国大选期间,24小时内 Urban Airship一天的消息推广量扩大到25亿次通知。

HBase非常擅长于高吞吐量的扫描,而Cassandra则擅长于低基数的查找,而在这种情况下,响应只包含少数结果。两者都允许高容量的写吞吐量,因为Urban Airship所有来自用户手机的元数据更新都是实时应用,每个设备的失效特征也不同。HBase支持出现故障时的一致性和分区容差,而Cassandra支持可用性和分区容差。他们利用HBase和Cassandra中的“单元版本”概念,就是我们通常说的时间戳来存储元数据多个版本。

How Urban Airship Scaled To 2.5 Billion Notifications During The U.S. Election | Airship

Apple

家喻户晓的苹果公司(Apple Inc. )是美国一家高科技公司。苹果营收达到3658亿美元,由史蒂夫·乔布斯、斯蒂夫·盖瑞·沃兹尼亚克和罗纳德·杰拉尔德·韦恩(Ron Wayne)等人于1976年4月1日创立。一年前,苹果声称,他们运行了75000多个Cassandra节点,存储了超过10 PB的数据。至少有一个集群有1000多个节点,而苹果经常通过Cassandra每秒执行数百万次操作(读/写)。Cassandra是苹果占主导地位的NoSQL数据库,其列表是其他数据库的两倍。苹果甚至收购了NoSQL数据库FoundationDB背后的公司。

Apple's secret NoSQL sauce includes a hefty dose of Cassandra | TechRepublic

Backblaze

Backblaze成立于2007年,总部位于加利福尼亚州圣马特奥,是一家云存储公司,管理着超过1 EB的数据,客户遍布175多个国家。他们需要一种能够处理非常高的写吞吐量并不断扩展写吞吐量的东西。在分布式存储应用商店中提供用户文件索引元数据存储,而Apache Cassandra正是他们所需要的选择。2013年,Backblaze研发了一套IaaS平台(Backblaze B2)提供的云存储类似于Amazon S3、Microsoft Azure存储和Google云存储,易于使用、价格合理且值得信赖。Backblaze研究了分布式数据库,并引入了Apache Cassandra,对现有的计算机备份堆栈进行了改良。

Apache Cassandra | Apache Cassandra Documentation

BazaarVoice

EmoDB是一个开源的RESTful数据存储库,建立在Cassandra之上,存储JSON文档,最值得注意的是,它提供了一个数据总线,允许订阅者实时监视这些文档的更改。

https://www.youtube.com/watch?v=5jKZUnkhB50

Best Buy

百思买是美国一家电子消费品销售公司,全球员工数81600,Best Buy也经营的软件,电子游戏,音乐,手机,数码相机,汽车音响,摄像头,和冰箱,洗碗机,烘干机等家用电器。使用Apache Cassandra管理假日流量的大幅飙升 — 7倍流量峰值和突发>50000转/秒 — 并称之为“完美无瑕”。

https://www.slideshare.net/joelcrabb/cassandra-and-riak-at-bestbuycom

Bigmate

Bigmate是使用车辆远程信息处理、资产互联网(IoA)和CCTV视频安全覆盖解决方案的领先创新者。Bigmate使用TIBCO Jaspersoft®embedded BI解决了以前无法解决的物理资产问题。2020年10月Bigmate公司打算建立了一个大规模物联网平台,用于吸收和处理异构数据。他们每天有20000个客户发送实时数据。在项目平台开发过程中,技术团队考虑了一系列支持物联网平台的数据库,包括MySQL、MongoDB等。经过多方验证,最后开源apache cassandra成为他们物联网和人工智能和机器学习数据解决方案需求的最有利选择。Cassandra还提供了简单和无限的可伸缩性,它可以在现有集群保持活动状态的同时无缝地添加节点。世界上最大的Cassandra生产部署环境,包括苹果和Netflix,利用了包括数千个节点的Cassandra。

How Open Source Apache Cassandra Solved Our IoT Scalability and Reliability Challenges - IoT Central

Blackberry

黑莓是一家领先的全球企业软件和服务公司,提供物联网平台,旨在为企业的运输车队提供持续的可视性。2022年2月1日消息,黑莓宣布以6亿美元出售其非核心专利资产,专利主要涉及移动设备、消息传递和无线网络。黑莓将Apache Cassandra部署为其物联网(IoT)平台的NoSQL数据库解决方案。BlackBerry物联网平台为BlackBerry雷达物联网解决方案提供动力,该解决方案旨在提供对组织运输车队的持续可视性。

Blackberry Case Study - Instaclustr

BlackRock

blackrock中文名贝莱德集团,是美国的一家上市投资管理集团。贝莱德成立于1988年,贝莱德总部设在美国纽约市,贝莱德集团代表全球各地的个人与机构投资者管理资产,提供种类繁多的证券、固定收益、现金管理与选择性投资产品。在BlackRock,他们以各种方式使用Apache Cassandra为阿拉丁投资管理平台提供支持。尤其是利用Cassandra基础设施中管理多租户在平台上发挥的作用。

https://www.youtube.com/watch?v=322GytEo_fE

Bloomberg

彭博社利用其在全球资本市场、技术、数据、定价、分析、分销和研究方面的专业知识,提供世界上最大的资产管理公司使用的独立、无偏见的固定收益指数。生成和发布这些基准的平台由彭博指数工程团队设计和管理。彭博社工程师团队(Bloomberg Engineering)正在进行一项多年建设,利用 Apache Cassandra 和Apache Solr创建一个新的指数构建平台,以处理彭博巴克莱固定收益指数的日常生产。这包括构建和生产一个Apache Solr支持的搜索平台,以每分钟处理数千次搜索,一个Apache Cassandra后端数据库,以每天存储数百万个数据点,以及一个分布式计算引擎,以每天处理数百万次计算。

https://www.bloomberg.com/company/stories/meet-the-team-indices-engineering/

Bundesagentur für Arbeit (Federal Agency)

德国劳动局,联邦就业局是德意志联邦共和国的中央公共机构之一。因此,责任按照最高标准收集、分析和管理公民和各部门的数据。用户数据和来自业务关键信息系统的监控数据之间有一个重要区别,它们对高可用性和持久性(即永久性存储)有类似的要求。为了在要求的时间范围内监控查询和执行分析,同时保持生产运行,监控数据的任务应该与实际用户数据分开。不幸的是,传统的MySQL、Oracle关系数据库就位的情况下无法实现这一点。此外,不断增长的数据记录需要现有解决方案无法提供的可扩展性。

IT系统部门需要一种新的解决方案来实时监控应用程序和业务流程,并能够快速应对任何负面影响。他们选择了DataStax产品,DataStax是建立在Cassandra的数据库,同时还提供Enterprise商业版本,在该项目中,DataStax公司提供了Apache Cassandra根据他们的需求进行定制开发。后期,DataStax还提供全面的咨询以及在项目完成期间和之后的远程或现场服务支持。

备注:2021年11月5日,DataStax今天宣布在中国北京设立了一个新办事处并增加了一名新任的总经理,以进一步拓展其亚太(APAC)市场业务版图。

Using DSE to deliver value to Germany's taxpayers | Federal Employment Agency | DataStax

Intuit Mint

Intuit Mint是一项免费的个人理财服务,在美国和加拿大有 1100 多万用户,该公司于2014年6月被Intuit公司以3.6亿美元收购。该公司服务可关联客户的财务信息(例如银行账户、信用卡和账单),并集中显示此类信息。Mint 能实时自动更新信息和划分信息类别,这样客户就可以查看财务状况,追踪支出,并密切关注自己的投资。Mint 还提供账单提醒和付款服务,因此人们不仅可以查看其财务状况,还可以据此采取行动。

Mint Bills目前拥有超过1100万用户,就需要为1100万客户提供实时分析,以前Mint Bills依赖MySQL作为主要数据存储,在500万用户的时候在规模和性能上达到了顶峰。关系数据库体系结构无法轻松或可预测地扩展,因为来自不同银行帐户、投资帐户和帐单的用户数据中固有的大量数据和动态数据模型。此外,Mint-Bills的关系模型无法满足支持并发用户查看帐户信息和实时检索支付结果的在线应用程序的性能需求。

为了提供最好的客户体验,Mint Bills意识到它需要一个强大的数据库基础设施技术方法。它还需要一种快速可靠的方法来每天汇总用户信息,分析并跟踪信用卡和账单的数量等信息,甚至是前几周的数据。这些需求促使Mint Bills寻找一个平台,该平台还需要能无缝的Hadoop集成,能够将事务与历史信息合并和分析,从而获得准确的业务洞察力。

为了满足可伸缩性和实时性能的需要,Mint Bills选择Apache Cassandra来存储用户帐户数据。公司技术负责人Csasznik Shaked补充道:“当你在Mint Bills应用程序上选择账户时,你直接从Cassandra检索信息。”。

目前,Mint Bills在一个集群中有Cassandra 21个节点,在Datatax enterprise 中存储15tb的事务数据。即使不同类型数据模型的用户和帐户数量快速增长,Mint Bills仍然可以轻松地执行和扩展。同时Mint Bills聘请 Cassandra 专家和DataStax团队提供的全天候支持。

Mint Provides Real-Time Analysis to 11M Customers | Intuit Mint | DataStax

思通舆情|开源舆情系统

在我们的开源项目中 每个节点的 Apache Cassandra 存储了上亿条的网页详情和原始网页的数据,我们根据系统唯一ID查询,在Cassandra的索引上读取速度非常快,完全是秒开的!写入每秒同时的并发在8000-20000个请求在一秒内可完成,每台机器的配置并不高,JVM内存配置参数在8G内存。

开源项目地址:  开源免费舆情监测网络监控系统: 思通舆情 是一款开源免费的舆情系统,支持本地化部署。支持对海量的舆情数据进行交叉分析和深度挖掘,为用户提供全面的舆情数据,专业的舆情分析,快速的舆情处理等服务,提升企业品牌价值和风控能力。#舆情系统#舆情监测#网络舆情#开源舆情#免费舆情#舆情分析https://gitee.com/stonedtx/yuqing

欢迎对我们的项目 pull request 或者 留言对我们提出建议。您的支持和参与就是我们坚持开源的动力!请  star 或者 fork!

Cassandra在海量数据存储及大型项目案例介绍-part1相关推荐

  1. Cassandra在海量数据存储及大型项目案例介绍-part4

    Cassandra是一套开源分布式NoSQL数据库系统.它最初由Facebook开发,用于储存收件箱等简单格式数据,此后,由于Cassandra良好的可扩展性,被Digg.Twitter等知名Web ...

  2. Cassandra在海量数据存储及大型项目案例介绍-part2

    网上能找到被披露的信息中奇虎360公司是国内目前 Cassandra 落地规模最大的公司. Cassandra 自2010在360开始调研技术落地:2011年使用 Cassandra 0.7.3作为基 ...

  3. Cassandra在海量数据存储及大型项目案例介绍-part3

    国内大多数公司和开发者对Mongodb和Hbase推崇备至,这是因为MongoDB进入了国内市场并建立了中文社区,而Hbase在阿里的大范围使用和推广下培养了一大批用户和公开材料.Cassandra最 ...

  4. 【自然语言处理与文本分析】用两个项目案例介绍文本挖掘方法论。

    文本挖掘概要 文本挖掘的应用:(有实际案例) 运用文本挖掘进行公司治理(台湾证券交易所的案例) 证券交易所的功能就是监管上市公司的问题(财务不实,内部被掏空的问题).但是会出现一个盲点 比如一家公司宣 ...

  5. Disconf介绍,源码下载,环境准备,安装,disconf-web使用和配置介绍,项目中进行配置,项目案例运行

    1.disconf介绍 Distributed Configuration Management Platform(分布式配置管理平台)专注于各种 分布式系统配置管理 的通用组件 / 通用平台,提供统 ...

  6. 浅析MongoDB数据库的海量数据存储应用

    [摘要]当今已进入大数据时代,特别是大规模互联网web2.0应用不断发展及云计算所需要的海量存储和海量计算发展,传统的关系型数据库已无法满足这方面的需求.随着NoSQL数据库的不断发展和成熟,可以较好 ...

  7. [转载] 新兵训练营系列课程——海量数据存储基础

    原文: http://weibo.com/p/1001643874615465508614 微博平台研发作为微博的底层数据及业务支撑部门,已经经历了5年的发展历程.伴随着从数据及业务暴发式增长,我们在 ...

  8. 新兵训练营系列课程——海量数据存储基础

    2019独角兽企业重金招聘Python工程师标准>>> 新兵训练营系列课程--海量数据存储基础 2015年8月12日 09:24 阅读 16831 微博平台研发作为微博的底层数据及业 ...

  9. 【演讲实录】分布式数据库海量数据存储和实时查询实现与应用

    节选自OSC深圳源创会 演讲速记 分享嘉宾:巨杉数据库技术总监   乔国治 巨杉数据库,核心产品是SequoiaDB巨杉数据库.是我们的团队完全从零开始研发的.巨杉数据库是商业数据库,同时我们本身也将 ...

  10. 大数据时代的海量数据存储、和高并发解决方案总结

    一.结构化数据的存储 随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题.对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载.对于系统的稳定性和扩展性造成了极 ...

最新文章

  1. python 比较矩阵对应位置元素大小,比较矩阵的两个元素并在不同位置填充相对值...
  2. 22 款神经网络的设计和可视化工具
  3. 05、HttpServletRequest
  4. AI Studio 对于波士顿房价的线性回归
  5. [JSP]解决Maven创建项目失败
  6. keep 虚拟路线修改器_螺丝刀【第1期】:如何使用Keep塑造理想身材
  7. 【Web安全】php://filter 的浅略底层分析
  8. HTMl5的sessionStorage和localStorage
  9. 2021-04-11面试
  10. 弹性盒模型--新版与旧版比较(2)
  11. wince串口驱动分析(转)
  12. 草稿 断开绑dgv1
  13. selenium 控制ie_Python爬虫---Selenium的简单介绍
  14. 如何用python合并文本文档_如何利用python合并文本
  15. python、R对比分析
  16. 惠普打印机m226dn教程_惠普m226dn说明书
  17. 【实用】网页内容监控并实时推送百度解决方案
  18. 360开源的插件化框架Replugin深度剖析
  19. gromacs ngmx_转:Gromacs的DEMO教程中文版
  20. git回退到上一个版本:

热门文章

  1. 【HUSTOJ】1049: 字符图形5-星号梯形
  2. c语言结构体应用例程:输入今天日期,输出明天日期
  3. postgresql查看数据库及数据表占用空间
  4. 游戏公司用IM软件 “颜值”和“手感”一个都不能少
  5. 给女朋友道歉的java代码_我用开源工具给女朋友写道歉信!
  6. 详解:字符转换函数(大写转小写,小写转大写)
  7. pika异步consumer简单使用
  8. Java:Logstash如何安装插件logstash-output-jdbc
  9. android恢复短信中心号码,短信中心号码设置解决安卓手机不能发短信问题,教你设置解决异地发不了短信问题...
  10. BBR 加速比收敛图解