# 导入必要的库
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
# 初始化SparkSession
spark = SparkSession.builder \
.appName("GuangzhouDataPlatform") \
.config("spark.some.config.option", "some-value") \
.getOrCreate()
# 模拟数据加载
data = [
("张三", 25, "天河区"),
("李四", 30, "越秀区"),
("王五", 22, "海珠区")
]
columns = ["name", "age", "district"]
df = spark.createDataFrame(data, columns)
# 数据清洗与处理
cleaned_df = df.filter(col("age") > 20).select("name", "district")
# 数据存储至HDFS
cleaned_df.write.mode('overwrite').parquet("hdfs://localhost:9000/guangzhou_data")
A: 小李,最近广州那边的大数据平台建设得怎么样了?
B: 嗯,我们正在用Spark搭建一个大数据中台呢。主要是为了整合全市各部门的数据。
A: 那你们是如何进行数据清洗的?
B: 我们首先使用Spark加载数据,然后利用DataFrame API过滤掉不符合条件的记录,比如年龄小于20岁的用户。
A: 听起来很高效啊,那最后这些数据是存到哪里去的?
B: 存储在HDFS上,这样可以方便后续的数据分析工作。而且Parquet格式对查询性能也有很大提升。
A: 这样的话,后续做数据分析应该会很方便吧?
B: 是的,我们计划引入机器学习模型来预测不同区域的人口发展趋势,这对城市规划很有帮助。
A: 真是太棒了!看来广州的大数据中台已经初具规模了。
]]>