Tạo Temp View
Bạn có thể đăng ký bất kỳ DataFrame nào như một bảng hoặc view (một bảng tạm thời) và truy vấn nó bằng cách sử dụng SQL thuần túy với hàm spark.sql (nhớ, spark là biến SparkSession của chúng ta).
pythonSao chép mãfrom pyspark.sql import SparkSession
# Tạo một SparkSession
spark = SparkSession.builder.appName("TempViewExample").getOrCreate()
# Đăng ký DataFrame là một Temp View
df.createOrReplaceTempView("flight_data")
# Truy vấn Temp View bằng SQL
sql_way = spark.sql("""
SELECT DEST_COUNTRY_NAME, count(1)
FROM flight_data
GROUP BY DEST_COUNTRY_NAME
""")
# Truy vấn DataFrame bằng cách sử dụng API DataFrame
df_way = df \
.groupBy("DEST_COUNTRY_NAME")\
.count()
Kiểm tra số lượng Temp Views
pythonSao chép mã# Lấy danh sách các Temp Views từ catalog
temp_views_list = spark.catalog.listTables()
# Đếm số lượng Temp Views
num_temp_views = len(temp_views_list)
# In ra danh sách Temp Views và số lượng
print(f"Danh sách {num_temp_views} Temp Views:")
for temp_view in temp_views_list:
print(temp_view.name)
createOrReplaceTempView và registerTempTable
Cả createOrReplaceTempView và registerTempTable đều được sử dụng để tạo các view tạm thời từ DataFrame, làm cho chúng có sẵn cho các truy vấn SQL. Tuy nhiên, createOrReplaceTempView là phương pháp được khuyến nghị để tạo các view tạm thời trong Apache Spark, cung cấp tính tương thích và chức năng tốt hơn so với registerTempTable đã lỗi thời.
Hi all, here every person is sharing these experience,
therefore it’s fastidious to read this weblog,
and I used to pay a quick visit this web site all the time.
We absolutely love your blog and find many
of your post’s to be exactly I’m looking for. Would you offer guest writers to write content to suit your needs?
I wouldn’t mind creating a post or elaborating on some of
the subjects you write in relation to here. Again, awesome weblog!
constantly i used to read smaller content that also clear their motive, and that is also happening with this
post which I am reading here.
I am extremely impressed with your writing skills and also with the layout
on your weblog. Is this a paid theme or did you modify it yourself?
Anyway keep up the excellent quality writing, it is rare to see a nice blog like this one today.
It’s going to be end of mine day, except before finish I am reading this fantastic piece
of writing to increase my experience.
Do you have a spam issue on this website; I also am a blogger, and I was curious about your
situation; many of us have developed some
nice practices and we are looking to exchange methods with other folks, please shoot
me an email if interested.