《Spark大数据分析:核心概念、技术及实践》一 3.4 数据源

简介:

本节书摘来自华章出版社《Spark大数据分析:核心概念、技术及实践》一书中的第3章,第3.1节,作者[美] 穆罕默德·古勒(Mohammed Guller),更多章节内容可以访问云栖社区“华章计算机”公众号查看。



3.4 数据源

Spark本质上是一个使用集群节点进行大数据集处理的计算框架。与数据库不同,它并没有存储系统,但是它可以搭配外部存储系统使用。Spark一般都配合能存储大量数据的分布式存储系统使用。

Spark支持多种数据源。Spark应用程序可以使用的数据来源包括HDFS、HBase、Cassandra、Amazon S3,或者其他支持Hadoop的数据源。任何Hadoop支持的数据源都可以被Spark Core使用。Spark上的库Spark SQL还支持更多数据源。第7章将会介绍Spark-SQL。

兼容支持Hadoop的数据源是相当重要的。许多组织都已经在Hadoop上面投入了大量的精力。在HDFS或其他支持Hadoop的数据存储系统上都存储着大量的数据。使用Spark并不需要将这些数据迁移到其他存储系统。而且,将Hadoop MapReduce替换成Spark并不需要另起炉灶,这是比较轻松的。如果现有的Hadoop集群正在执行MapReduce作业,也可以同时在上面运行Spark应用。可以把现有的MapReduce作业转化成Spark作业。或者,也可以保留现有的MapReduce应用程序,不做更改,使用Spark运行新的应用程序。

由于Spark Core原生支持Hadoop兼容的存储系统,因此额外的数据源都能很方便地添加进来。比如,人们已经为Spark编写好了各种数据源的连接器,包括Cassandra、MongoDB、CouchDB和其他流行的数据源。

Spark也支持本地文件系统。Spark应用程序可以读写本地文件系统上的数据。如果数据可以从本地文件读取并在单机上处理,那么没必要使用Spark。尽管如此,Spark的这个特性使得它便于开发应用和调试,并且易学。

相关文章
|
5月前
|
机器学习/深度学习 分布式计算 算法
Spark快速大数据分析PDF下载读书分享推荐
《Spark快速大数据分析》适合初学者,聚焦Spark实用技巧,同时深入核心概念。作者团队来自Databricks,书中详述Spark 3.0新特性,结合机器学习展示大数据分析。Spark是大数据分析的首选工具,本书助你驾驭这一利器。[PDF下载链接][1]。 ![Spark Book Cover][2] [1]: https://zhangfeidezhu.com/?p=345 [2]: https://i-blog.csdnimg.cn/direct/6b851489ad1944548602766ea9d62136.png#pic_center
184 1
Spark快速大数据分析PDF下载读书分享推荐
|
2月前
|
消息中间件 分布式计算 关系型数据库
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
55 0
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
98 2
|
1月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
70 1
|
2月前
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
50 0
|
3月前
|
分布式计算 Java Apache
Apache Spark Streaming技术深度解析
【9月更文挑战第4天】Apache Spark Streaming是Apache Spark生态系统中用于处理实时数据流的一个重要组件。它将输入数据分成小批次(micro-batch),然后利用Spark的批处理引擎进行处理,从而结合了批处理和流处理的优点。这种处理方式使得Spark Streaming既能够保持高吞吐量,又能够处理实时数据流。
75 0
|
5月前
|
分布式计算 Java Serverless
EMR Serverless Spark 实践教程 | 通过 spark-submit 命令行工具提交 Spark 任务
本文以 ECS 连接 EMR Serverless Spark 为例,介绍如何通过 EMR Serverless spark-submit 命令行工具进行 Spark 任务开发。
426 7
EMR Serverless Spark 实践教程 | 通过 spark-submit 命令行工具提交 Spark 任务
|
5月前
|
分布式计算 大数据 Spark
Spark大数据处理:技术、应用与性能优化(全)PDF书籍推荐分享
《Spark大数据处理:技术、应用与性能优化》深入浅出介绍Spark核心,涵盖部署、实战与性能调优,适合初学者。作者基于微软和IBM经验,解析Spark工作机制,探讨BDAS生态,提供实践案例,助力快速掌握。书中亦讨论性能优化策略。[PDF下载链接](https://zhangfeidezhu.com/?p=347)。![Spark Web UI](https://img-blog.csdnimg.cn/direct/16aaadbb4e13410f8cb2727c3786cc9e.png#pic_center)
156 1
Spark大数据处理:技术、应用与性能优化(全)PDF书籍推荐分享
|
5月前
|
分布式计算 Oracle 大数据
MaxCompute产品使用合集之没有数据源,只是将批量状态和时间写入Oracle表里,该如何操作
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
5月前
|
JSON 分布式计算 大数据
MaxCompute产品使用合集之使用数据服务功能,但发现ODPS数据源不支持,该如何解决
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。