Từ khoá: Spark

Xử lý dữ liệu với Spark Dataframe

Xử lý dữ liệu với Spark Dataframe

Đầu tiên, bạn có biết Spark là gì chưa nhỉ. Nếu chưa biết Spark là gì thì bạn nên tìm hiểu Spark, cũng như làm quen với nó trước nhé. Bạn có thể tìm hiểu Spark qua link sau: Các bài viết liên quan đến Spark I. Vậy, Spark DataFrame là gì ấy nhỉ ? Ngày xửa, ngày xưa, khi Spark ver 1.3 ra đời, Spark đã đẻ thêm tính năng có tên là Spark DataFrame. Vậy nó có gì hay ho nhỉ ? Có thể thiết lập Schema cho Spark RDD và có thể tạo Object DataFrame. Chưa thấy hay ... »

Viết Unit Test cho chương trình PySpark

Viết Unit Test cho chương trình PySpark

Một số bài viết trước trên blog VietnamLab đã giới thiệu về Apache Spark, một framework rất mạnh phục vụ cho việc tính toán phân tán, đồng thời cũng hỗ trợ rất nhiều các thuật toán Machine Learning. PySpark là giao diện Python hỗ trợ việc viết chương trình Spark sử dụng ngôn ngữ Python (dễ học và dễ dùng hơn nhiều so với Scala). Tuy nhiên việc viết Unit Test tưởng chừng như rất đơn giản đối với các chương trình Python thì lại khá phức tạp và rắc rối đối với các chương trình PySpark (do bản chất ... »

Sử dụng PySpark để cập nhật dữ liệu cho bảng có cấu trúc nested trên Hive

Sử dụng PySpark để cập nhật dữ liệu cho bảng có cấu trúc nested trên Hive

Trong quy trình xử lý big data hiện tại, Spark và Hive thường được sử dụng chung với nhau: Spark đóng vai trò là engine xử lý data Hive là datawarehouse lưu trữ dữ liệu đã xử lý từ Spark Thông thường, việc cập nhật dữ liệu từ Spark vào bảng trên Hive khá đơn giản, chỉ mất 1 vài dòng code, tuy nhiên trong trường hợp khi bảng trên Hive có cấu trúc phức tạp như 1 trường có cấu trúc nested thì việc xử lý sẽ cần tốn công một chút. Bài viết này sẽ cung cấp 2 ... »

Tăng hiệu năng khi sử dụng join trong Apache Spark

Tăng hiệu năng khi sử dụng join trong Apache Spark

Trong Apache Spark, khi muốn kết hợp 2 RDD (Resilient Distributed Dataset) với định dạng (key, value), tổng hợp những dữ liệu có cùng key rồi tính toán trên những giá trị của dữ liệu đó để có 1 data set cuối cùng cũng với định dạng (key, value) thì sử dụng hàm join là một trong những sự lựa chọn thông dụng nhất. Tuy nhiên, khác với khi sử dụng hàm join trong SQL hay các hệ quản trị cơ sỡ dữ liệu không phân tán khác, vì Spark theo cấu trúc phân tán (data được chia thành các ... »

Giới thiệu Spark MLLib Association Rules

Giới thiệu Spark MLLib Association Rules

1. MLLib Là một thư viện hữu ích của Apache Spark về Machine Learning. Một số ưu điểm của Spark Nhanh hơn Hadoop MapReduce: dùng memory là 100x lần, dùng disk là 10x lần Dễ dàng sử dụng với Java (7+), Scala (Spark 1.6.1 dùng Scala 2.10), Python (2.6+), R (3.1+) Cung cấp nhiều thư viện: Spark SQL, Spark Streaming, MLLib, GraphX Có thể chạy Spark Standalone mode (https://spark.apache.org/docs/latest/spark-standalone.html) Trên EC2 (Amazon Elastic Compute Cloud – Môi trường điện toán đám mây do Amazon cung cấp) Trên Hadoop (là ... »

Một vài best practice khi tunning Spark

Một vài best practice khi tunning Spark

1. Lựa chọn RDD Operation thích hợp RDD hỗ trợ 2 loại operation: transformation và action. Khi kết hợp các transformation và action khác nhau, có thể cho cùng một kết quả. Tuy nhiên hiệu năng của chúng lại khác nhau, nên việc lựa chọn operation một cách thích hợp có thể cải thiện hiệu năng của chương trình. Sử dụng reduceByKey hoặc aggregateByKey sẽ cho hiệu năng tốt hơn groupByKey Ví dụ với bài toán đếm từ, sau đây là 2 cách dùng groupByKey và reduceByKey val words = Array("one", "two", "two", " ... »