Apache Spark nói về điều gì?

robot
Đang tạo bản tóm tắt

Apache Spark là một công cụ phân tích mã nguồn mở cho dữ liệu lớn. Nó đã thay đổi cách thức hoạt động của các tổ chức xử lý khối lượng dữ liệu khổng lồ. Spark rất nhanh. Thật sự nhanh. Nó sử dụng xử lý trong bộ nhớ giúp nó vượt qua các khung truyền thống—nhanh gấp 100 lần so với MapReduce cho các thao tác bộ nhớ. Các tác vụ dựa trên đĩa? Vẫn nhanh gấp 10 lần.

Những Tính Năng Nổi Bật Của Spark

Spark cung cấp cho bạn toàn bộ hệ sinh thái này:

  • Tốc độ: Động cơ lưu trữ trong bộ nhớ, xử lý dữ liệu với tốc độ nhanh chóng
  • Đa năng: Thực hiện đủ loại công việc—SQL, học máy, các tác vụ thời gian thực, đồ thị
  • Nền tảng thống nhất: Tương tác tốt với các nguồn dữ liệu khác nhau
  • Xử lý phân tán: Phân bổ công việc trên các cụm cho các tập dữ liệu khổng lồ
  • Thư viện phong phú: Có MLlib cho học máy. Cũng có Spark Streaming. Và GraphX cho phân tích đồ thị.

Bên trong Kiến trúc của Spark

Các phần cốt lõi của Apache Spark bao gồm:

  1. Spark Driver: Có tất cả các bộ lập lịch và quản lý biến mã của bạn thành các công việc
  2. Người thực thi: Những người này thực hiện các phép toán thực tế
  3. Quản lý cụm: Có thể là độc lập, YARN, hoặc bất kỳ thứ gì khác. Chúng lấy các nút làm việc.
  4. Worker Nodes: Các máy chủ thực hiện công việc nặng nhọc

PySpark UDFs: Tùy chỉnh Spark của bạn

Spark cho phép bạn mở rộng nó với các Hàm do Người dùng Xác định. Thật tuyệt vời. Những UDF này trong PySpark cho phép bạn tạo ra logic tùy chỉnh khi các hàm tích hợp không đủ.

Tạo một UDF như thế này:

python từ pyspark.sql.functions import udf từ pyspark.sql.types nhập khẩu StringType

Định nghĩa một hàm Python

def convert_case(text): return text.upper() nếu text else None

Đăng ký là UDF

upper_case_udf = udf(convert_case, StringType())

Áp dụng cho DataFrame

df = df.withColumn("upper_text", upper_case_udf(df.text_column))

UDFs không hoàn hảo. Chúng chậm hơn các hàm tích hợp sẵn do các vấn đề về tuần tự hóa. Có thể thử các UDF theo vector nếu tốc độ quan trọng. Sử dụng chúng một cách cẩn thận.

Tinh chỉnh Spark với spark-defaults.conf

Bạn có thể kiểm soát Spark thông qua tệp spark-defaults.conf này. Nó chỉ là các cặp giá trị thuộc tính:

spark.master=yarn spark.executor.memory=4g spark.driver.memory=2g spark.executor.cores=2 spark.sql.shuffle.partitions=200

Tuning tốt dường như liên quan đến các vấn đề bộ nhớ. Cài đặt phân vùng cũng vậy. Việc thu gom rác có thể rất quan trọng. Các tùy chọn tuần tự có thể giúp cải thiện hiệu suất.

Spark vẫn đang phát triển. Nó rất quan trọng trong thế giới dữ liệu. Không hoàn hảo, nhưng khá quan trọng.

Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Đăng lại
  • Chia sẻ
Bình luận
0/400
Không có bình luận
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)