Nội dung Show
Spark DataFrame là một bộ sưu tập các hàng phân tán có cùng lược đồ. Lược đồ xác định cấu trúc của khung dữ liệu như tên cột và một loại liên quan. Spark DataFrame tương đương với một bảng trong cơ sở dữ liệu quan hệ hoặc DataFrame trong R/Python. DataFrame có sẵn cho các ngôn ngữ lập trình đa năng như Java, Python và Scala. API DataFrame được phát hành dưới dạng trừu tượng trên đầu RDD, tiếp theo là API dữ liệu. DataFrame có thể được xây dựng từ các nguồn khác nhau như bảng Hive, cơ sở dữ liệu bên ngoài (ví dụ. Oracle, MySQL), các tệp dữ liệu có cấu trúc hoặc từ RDD hiện tại. Viết chương trình pyspark để gửi Spark DataFrame dưới dạng bảng HTML trong emailBước 1: Tạo DataFrame từ Bảng HiveTrong ví dụ này, chúng tôi sẽ tạo ra một khung dữ liệu tia lửa bằng cách đọc bảng Hive. Hãy cùng xem xét rằng chúng tôi có một bảng bệnh nhân trong Hive có chi tiết đường trong máu của từng bệnh nhân.patient_report table in Hive which has the blood sugar details of each patients. Từ bảng này, chúng tôi sẽ chiết xuất các bệnh nhân có lượng đường trong máu hơn 200mg/dL trong tháng 3 năm 2022.blood sugar level more than 200 mg/dL in the month of march,2022. Báo cáo bệnh nhân ở HiveHãy viết một chương trình pyspark để đọc những chi tiết bệnh nhân đó từ bảng Hive và tạo một khung dữ liệu Spark.
Như chúng tôi đã trình bày trong chương trình trên, trước tiên, chúng tôi đang đọc các chi tiết bệnh nhân từ Hive Bệnh viện_db.patient_report và tạo ra một dữ liệu tia lửa dưới dạng chẩn đoán_res_df.hospital_db.patient_report and creating a Spark dataframe as diagnosis_res_df. Bước 2: Vòng lặp qua DataFrame bằng cách sử dụng cho vòng lặpTiếp theo, chúng tôi đang đăng ký DataFrame vào bảng tạm thời với tên Chẩn đoán_temp_table. Để chúng ta có thể chạy Spark.sql () về điều này để chiết xuất các bệnh nhân có lượng đường trong máu hơn 200 trong tháng 3 năm 2022.diagnosis_temp_table. So that we can run a spark.sql() on this to extract the patients who has the blood sugar level more than 200 in the month of march,2022. Ngoài ra, chúng tôi đã sử dụng hàm thu thập () để truy xuất dữ liệu từ DataFrame. Sau đó, chúng tôi đang lặp lại từng phần tử từ hàng và gán từng giá trị cột cho một biến riêng biệt.
Bước 3: Chuẩn bị bảng HTMLTrong bước trước, chúng tôi đã nhận được các giá trị cần thiết trong một biến riêng biệt. Bây giờ chúng ta cần tạo một bảng HTML với các biến đó. Trong cú pháp bảng HTML, chúng ta phải xác định tiêu đề bảng, hàng bảng và dữ liệu bảng. Hãy để xác định các mã đó trong pyspark như dưới đây. Cơ thể biến giữ phần tiêu đề của bảng HTML với các thuộc tính kiểu. Sau đó, biến có thể có các giá trị tiêu đề bảng. Tiếp theo trong vòng lặp For, chúng tôi đang chuẩn bị dữ liệu bảng sẽ được sử dụng trong hàng bảng.body holds the header section of the HTML table with Style properties. Then the variable strTable have the table header values. Next in the for loop, we are preparing the table data that will be used in the table row.
Bước 3: Chuẩn bị bảng HTMLTrong bước trước, chúng tôi đã nhận được các giá trị cần thiết trong một biến riêng biệt. Bây giờ chúng ta cần tạo một bảng HTML với các biến đó. Trong cú pháp bảng HTML, chúng ta phải xác định tiêu đề bảng, hàng bảng và dữ liệu bảng.
Khi chúng tôi đặt tất cả các giá trị này, chúng tôi cần tạo một đối tượng SMTP. Trong đối tượng SMTP, chúng ta cần đề cập đến máy chủ thư sẽ được sử dụng để gửi email.
Hoàn thành Chương trình PysPark để gửi DataFrame qua emailHãy cùng viết chương trình pyspark hoàn chỉnh bằng cách kết hợp tất cả các chức năng. Chương trình pyspark được lưu với tên của send_blood_sugar_report.py.send_blood_sugar_report.py.
Script shell để chạy chương trình pyspark & nbsp; => & nbsp; test_script.shsh=> test_script.sh Hãy để viết một kịch bản shell để chạy chương trình pyspark này. Trong tập lệnh đó, chúng tôi đang thiết lập các biến môi trường Spark. Sau đó, chúng tôi đang đưa ra lệnh Submit Submit để thực hiện chương trình pyspark của chúng tôi Send_blood_sugar_report.py.send_blood_sugar_report.py.
Thực hiện tập lệnh shell để chạy chương trình pyspark Cuối cùng, chúng ta có thể chạy tập lệnh shell & nbsp; test_script.sh. Nó sẽ thực hiện chương trình pyspark để gửi báo cáo đường huyết cho bác sĩ.test_script.sh. It will execute Pyspark program to send blood sugar report to Doctor. Đầu raNhật ký thực hiện chương trình pysparkBáo cáo trong email Như chúng tôi đã trình bày dưới đây, báo cáo chứa các chi tiết bệnh nhân có lượng đường trong máu hơn 200 trong tháng 3 năm 2022. Báo cáo được đính kèm trong thưBài viết đề xuất
|