Spark是大数据处理的引擎,提供了4种数据处理的库,还有很多第三方的库。本篇文章仅简单列举Spark的几种库及其特点。
SQL and DataFrames
sql和数据帧,此模块支持结构化数据的处理。
- 将Spark程序与sql查询无缝集成
在Spark程序中可以使用SQL或者DataFrame API进行结构化数据查询,支持在Java,Scala,Python,R语言中使用。
如:
results = spark.sql("SELECT * FROM people")
names = results.map(lambda p: p.name)
- 统一化数据访问
SQL和DataFrames提供了统一的方式连接多种数据源,包括:Hive,Avro,Parquet,ORC,Json,JDBC。甚至可以跨数据源进行数据的join操作。
如:
spark