为什么在大数据处理中Cassandra与Spark如此受欢迎?

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介:

为什么在大数据处理中Cassandra与Spark如此受欢迎?

说起Cassandra的用途时,我们可以将其理解为一套理想的客户系统实现方案——其能够保证各类应用始终可用,包括产品目录、物联网、医疗系统以及移动应用。Cassandra于2010年成为Apache软件基金会的顶级项目,而且至今仍拥有极高人气。Cassandra专业知识能够帮助我们在人才市场上获得赏识。我们不禁要问——为什么这一开源项目能够大受欢迎?

随着现代云应用对正常运行时间及性能水平的要求逐步提高,已经有越来越多用户开始将注意力集中在Apache Cassandra数据库身上。

大数据

那么,为什么要选择Apache Cassandra?这套分布式OLTP数据库能够带来高可用性与线性可扩展能力。在说起Cassandra的用途时,我们可以将其理解为一套理想的客户系统实现方案——其能够保证各类应用始终可用,包括产品目录、物联网、医疗系统以及移动应用。这类项目一旦遭遇停机,企业可能面临严重的营收损失甚至失去忠诚的用户。Netflix公司早在2008年就开始使用这套开源数据库,而其做出的大力推动也真正让Cassandra引起了公众的重视。

Cassandra于2010年成为Apache软件基金会的顶级项目,而且至今仍拥有极高人气。Cassandra专业知识能够帮助我们在人才市场上获得赏识。我们不禁要问——为什么这一开源项目能够大受欢迎?

Cassandra能够利用Amazon发布的Dynamo论文中所提到的独特设计成果,从而保证硬件与网络出现大规模故障时继续保证可用性。利用点对点模型,其消除了单点故障可能性,从而帮助我们在机架故障甚至是网络整体下线的情况下得以幸存。我们能够在无需影响用户体验的情况下,顺利处理整体数据中心故障。只有能够应对故障的分布式系统才是一套拥有出色设计水平的分布式系统,而在Cassandra的帮助下,我们能够承受各类意外状况,并将应对机制纳入数据库架构及功能当中。

但大家可能要问,“不过,我之前只使用过关系型数据库,过渡过程是否非常艰难?”这个问题无法一概而论。Cassandra使用的数据模型对于关系数据库管理员来说并不陌生,我们同样使用表进行数据建模,并通过CQL——Cassandra查询语言——查询数据库。不过与SQL不同,Cassandra支持更为复杂的数据结构,例如嵌套与用户定义类型。例如,相较于为某张图片创建独立的存储表,我们可以直接将该数据存储在集合中以实现更为快速的查询速度。这种作法在CQL当中非常自然,而对应的图片表中则包含其名称、URL以及喜爱该图片的用户信息。

在高性能系统当中,毫秒级别的差异可能决定用户的实际体验与去留。然而,资源成本高昂的JOIN操作限制了我们的向外扩展通彻。通过对数据进行非规范化处理,我们能够尽可能降低请求数量,从而大幅降低磁盘空间成本并实现可预测的高性能应用。

当然,我们能够存储的绝不仅仅是图片数据。Cassandra针对高写入吞吐量进行了优化,这意味着其能够完美地处理大数据应用。时间序列与物联网用例的快速增长要求我们不断寻求新的方法以收集数据并改进数据的应用技术。

这就带来了新的问题:我们已经能够以现代化且具备成本效益的方式存储数据,但如何进一步提升处理能力?换言之,在数据收集完成后,我们该如何加以运用?我们如何有效分析数百TB数据?我们又该如何以秒为单位实时利用信息进行决策?Apache Spark正是问题的答案。

Spark可谓大数据处理的下一场革命。Hadoop与Mapreduce属于第一代革命性项目,它们让我们得以立足于大数据层面实现数据收集。而Spark则能够大幅提高性能并降低代码计算的复杂性,从而实现前所未有的数据分析能力。在Spark的帮助下,我们可以完成大量批处理计算,针对数据流处理结果进行反应并通过机器学习机制做出明智决策,最终利用遍历与递归理解复杂的信息。其目标不光是为客户提供更为快速可靠的应用连接能力(这部分效果由Cassandra负责实现),同时也需要利用信息做出业务决策地更好地满足客户需求。

大家可以点击此处查阅 Spark-Cassandra Connector方案说明 (开源),我们也强烈建议各位在DataStax Academy上查找免费的自学教程。

希望大家能够享受这段技术学习之旅!如果大家希望了解更多,也可参阅我们的OSCON教程,其中包含大量与Cassandra与Spark相关的内容。


本文转自d1net(转载)

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
13天前
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
36 0
|
13天前
|
消息中间件 分布式计算 NoSQL
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
29 0
|
13天前
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
43 0
|
2天前
|
分布式计算 大数据 Apache
利用.NET进行大数据处理:Apache Spark与.NET for Apache Spark
【10月更文挑战第15天】随着大数据成为企业决策和技术创新的关键驱动力,Apache Spark作为高效的大数据处理引擎,广受青睐。然而,.NET开发者面临使用Spark的门槛。本文介绍.NET for Apache Spark,展示如何通过C#和F#等.NET语言,结合Spark的强大功能进行大数据处理,简化开发流程并提升效率。示例代码演示了读取CSV文件及统计分析的基本操作,突显了.NET for Apache Spark的易用性和强大功能。
6 1
|
11天前
|
消息中间件 分布式计算 Kafka
大数据平台的毕业设计02:Spark与实时计算
大数据平台的毕业设计02:Spark与实时计算
|
13天前
|
存储 分布式计算 算法
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
28 0
|
13天前
|
消息中间件 分布式计算 Kafka
大数据-102 Spark Streaming Kafka ReceiveApproach DirectApproach 附带Producer、DStream代码案例
大数据-102 Spark Streaming Kafka ReceiveApproach DirectApproach 附带Producer、DStream代码案例
29 0
|
13天前
|
SQL 分布式计算 大数据
大数据-101 Spark Streaming DStream转换 窗口操作状态 跟踪操作 附带多个案例(一)
大数据-101 Spark Streaming DStream转换 窗口操作状态 跟踪操作 附带多个案例(一)
22 0
|
13天前
|
存储 分布式计算 大数据
大数据-101 Spark Streaming DStream转换 窗口操作状态 跟踪操作 附带多个案例(二)
大数据-101 Spark Streaming DStream转换 窗口操作状态 跟踪操作 附带多个案例(二)
31 0
|
12天前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势