SlideShare a Scribd company logo
1 of 32
GIẢI PHÁPXỬ LÝ BIG DATATRÊN
APACHE SPARK
NguyễnTrầnNgọcLinh
Bigdataspecialist–ViettelCorporation
ABOUT ME
- Big data specialist at Viettel
- Certifications:
 Cloudera CertifiedAdministrator forApache
Hadoop(CCAH) – 2016
 EMCAdvancedAnalytics Specialistfor data
Scientists – 2016
 Data Bricks and O’Reilly – Developer
Certification forApache Spark - 2017
- Email:linhntn3@vietel.com.vnorlinhntn0612@gmail.com
- Linkedin:https://www.linkedin.com/in/linhntn3/
Xử lý Big data trênApache Spark
Phần I : Tổng quan big data
Phần II : Hiện trạng xử lý big data
Phần III : Xử lý big data trênApache Spark
Xử lý dữ liệu lớn trênApache Spark
Phần I : Tổng quan xử lý dữ liệu lớn
 Tổng quan
 Xây dựng nền tảng
 Xu hướng
Khái niệm:
Big Data (Dữ liệu lớn) là thuật ngữ mô tả quá trình xử lý và phân tích dữ liệu trên một tập
dữ liệu lớn bao gồm cả dữ liệu có cấu trúc hay không có cấu trúc.
Tính quan trọng:
- Giảm chi phí
- Giảm thời gian thực hiện
- Kế hoạch phát triển và tối ưu sản phẩm
-Đưa ra quyết định tốt hơn trong kinh doanh
Tổng quan về big data
Khái niệm:
Big Data (Dữ liệu lớn) là thuật ngữ mô tả quá trình xử lý và phân tích dữ liệu trên một tập
dữ liệu lớn bao gồm cả dữ liệu có cấu trúc hay không có cấu trúc.
Tính quan trọng:
- Giảm chi phí
- Giảm thời gian thực hiện
- Kế hoạch phát triển và tối ưu sản phẩm
-Đưa ra quyết định tốt hơn trong kinh doanh
Tổng quan về big data
Xây dựng nền tảng big data
Nền tảng Big Data bao gồm:
Thành phần thu thập dữ liệu (Data acquisition)
 deliver low, độ trễ chấp nhận được trong việc lấy dữ liệu, truy vấn đơn giản, quản lý được
lượng transaction cao, trong môi trường phân tán, hỗ trợ linh hoạt, cấu trúc dữ liệu đa dạng.
Thành phần tổ chức dữ liệu (Data organization)
 khả năng xử lý và thao tác dữ liệu tại chính nơi lưu trữ, hỗ trợ high throughput để xử lý lượng
lớn dữ liệu và nhiều loại dữ liệu có định dạng khác nhau.
Thành phần tích dữ liệu (Data analysis)
 hỗ trợ phân tích big data ở mức độ thống kê và data mining trên các kiểu dữ liệu đa dạng trên
các hệ thống khác nhau, có khả năng giãn nở cho khối lượng dữ liệu cực lớn, thời gian phản hồi
chấp nhận được và có khả năng ra quyết định.
Xu hướng phát triển Big Data
Xử lý big data trênApache Spark
Phần II : Hiện trạng xử lý big data
 Giải pháp xử lý big data trên Hadoop
 Giải pháp map-reduce in memory
Hiện trạng xử lý dữ liệu lớn
Giải pháp xử lý bằng DB
- DB là điểm nghẽn
- Tăng năng lực xử lý theo chiều dọc => chi
phí cao
- Không có khả năng xử lý song song
- Dữ liệu có cấu trúc
- Không có khả năng phân tích dữ liệu theo
thời gian chấp nhận được
Hiện trạng xử lý dữ liệu lớn
Giải pháp xử lý bằng Hadoop
- Tận dụng được khả năng lưu trữ của Hadoop HDFS.
- Gặp các vấn đề trong việc xử lý:
• Phụ thuộc vào Hive (SQL like). Không tự viết được
phần xử lý map-reduce.
• Các phép toán tổng hợp liên quan đến join chạy rất
chậm
• Không tối ưu các bước xử lý bằng map-reduce
- Không hỗ trợ ứng dụng thời gian thực
- Hadoop map-reduce framework có nhiều nhược điểm.
Giải pháp xử lý Big Data trên Hadoop
Map
Map
Map
Reduce
Reduce
Input Output
MRHDFS
Nhược điểm Hadoop map-reduce
 Dữ liệu trung gian thường xuyên đọc và ghi từ ổ cứng
 Sao lặp quá nhiều để tránh lỗi
 Không tối ưu việc partition và “shuffle” dữ liệu
 Không tối ưu việc quản lý job-flow
Input iter. 1 iter. 2 . . .
HDFS
read
HDFS
write
HDFS
read
HDFS
write
Map
Map
Map
Reduce
Reduce
Input Output
Giải pháp map-reduce in memory
Ưu điểm đọc –ghi dữ liệu trên memory
- I/O memory >> disk (SDD)
- Nhiều tập dữ liệu của các job xử lý dữ liệu có khả năng
lưu trữ được trên memory
vd: 90% dữ liệu Yahoo, Facebook, Bing
- Dung lượng RAM ngày càng tăng, chi phí ngày càng giảm
Map-Reduce in
memory
Xử lý big data trênApache Spark
Phần III : Xử lý big data trênApache Spark
 Tổng quan
 Apache Spark vs Hadoop MR
 Cơ chế xử lýApache Spark
 Xử lý dữ liệu thời gian thực trên Spark
 Phân tích dữ liệu trên Spark
 Hiệu năngvà ứng dụngcủa Spark
Tổng quanApache Spark
 Opensource Framework tính toán song song trên cụm phát triển bởi AMPLab – UC Berkeley
 Top-level project của Apache
 Nhanh từ 10 – 100x Hadoop
 Cơ chế xử lý in-memory
 Quản lý công việc dựa trên DAG
 Cơ chế chống lỗi không dựa trên sao lặp dữ liệu
 Hỗ trợ nhiều hệ thống file (NTFS, S3, HDFS – Hadoop)
 Cung cấp API mức cao (Java, Scala, Python)
 Cung cấp 3 cơ chế trong cùng một nền tảng:
 Xử lý dữ liệu theo lô (batch processing)
 Xử lỹ dữ liệu thời gian thực (streaming processing)
 Phân tích dữ liệu (machine learning)
Tổng quanApache Spark
Apache Spark vs Hadoop Map-reduce
Hadoop Apache
Spark
I/O chiếm 90% thời gian xử lý 10-100x disk
Cơ chế phân cụmApache Spark
Code
Dat
a
Cơ chế xử lý dữ liệuApache Spark
 RDD (Resilient Distributed Dataset)
 Tập dữ liệu có khả năng phân tán
 Lưu trữ trên memory phục vụ việc sử dụng lại một cách nhanh chóng
 Cung cấp cơ chế cache trên memory
 Tự động phục hồi dữ liệu khi xảy ra lỗi
 Áp dụng vào nhiều loại ứng dụng
 Các phương thức áp dụng cho RDD
 Transformation (map, filter, groupBy, join…)
• Biến đổi một hoặc nhiều RDD thành một RDD mới
 Action (count, collect, save)
• Trả về kết quả hoặc lưu trữ dữ liệu (HDFS, s3, memory…)
Cơ chế xử lý dữ liệuApache Spark
Cơ chế sửa lỗi Apache Spark
Hadoop xây dựng cơ chế chịu lỗi bằng việc sao lặp dữ liệu
Apache Spark xây dựng cơ chế chịu lỗi bằng RDD “lineage”
Cơ chế lập lịchApache Spark
 Lập lịch theo mô hình đồ thị
DAG
 Chia các task thành các Stage
 Cache dữ liệu cần sử dụng lại
 Phân chia partition hạn chế tối
đa việc shuffle dữ liệu qua
mạng
Xử lý dữ liệu thời gian thực –Apache Spark
Small batch ~ 1s
Xử lý dữ liệu thời gian thực –Apache Spark
Traditional Streaming Spark Streaming
Xử lý dữ liệu thời gian thực –Apache Spark
Phân tích dữ liệu Machine Learning –Apache Spark
 Phân lớp
 Phân cụm
 Hồi quy
 Học chủ động
So sánh hiệu năng
Hive
Impala
Shark
0
10
20
30
40
50
60
70
ResponseTime(s)
Interactive
(SQL, Shark)
Storm
Spark
Streaming
0
5
10
15
20
25
30
35
Throughput(MB/s/node)
Streaming
(SparkStreaming)Hadoop
Spark
0
20
40
60
80
100
120
140
TimeperIteration(s)
Batch
(ML, Spark)
Ứng dụngApache Spark
Hadoop:
Batch
Processing
Spark:
Iterative
Processing
…
YARN:
Resource Manager
Storage:
HDFS, HBase, etc
Ứng dụngApache Spark
Q&A

More Related Content

What's hot

Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễn
Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễnGiới thiệu cơ bản về Big Data và các ứng dụng thực tiễn
Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễnTrieu Nguyen
 
lý thuyết cơ sở dữ liệu phân tán
lý thuyết cơ sở dữ liệu phân tánlý thuyết cơ sở dữ liệu phân tán
lý thuyết cơ sở dữ liệu phân tánNgo Trung
 
Hệ PhâN TáN
Hệ PhâN TáNHệ PhâN TáN
Hệ PhâN TáNit
 
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPT
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPTBài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPT
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPTMasterCode.vn
 
Bai02 he thong quan ly tap tin
Bai02   he thong quan ly tap tinBai02   he thong quan ly tap tin
Bai02 he thong quan ly tap tinVũ Sang
 
Chuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánChuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánduysu
 
Cơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tánCơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tánQuy Nguyen
 
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...Trần Xuân Trường
 
Hbase, Cách thức lưu trữ và tìm kiếm
Hbase, Cách thức lưu trữ và tìm kiếmHbase, Cách thức lưu trữ và tìm kiếm
Hbase, Cách thức lưu trữ và tìm kiếmTuan Bach Van
 
Cơ sở dữ liệu PTIT slide 2
Cơ sở dữ liệu PTIT slide 2Cơ sở dữ liệu PTIT slide 2
Cơ sở dữ liệu PTIT slide 2NguynMinh294
 
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)Trieu Nguyen
 
Introduction to Bigdata and HADOOP
Introduction to Bigdata and HADOOP Introduction to Bigdata and HADOOP
Introduction to Bigdata and HADOOP vinoth kumar
 
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨM
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨMPHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨM
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨMSoM
 
Chuong 1 - CSDL phân tán
Chuong 1 - CSDL phân tánChuong 1 - CSDL phân tán
Chuong 1 - CSDL phân tánduysu
 
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thông
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thôngBáo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thông
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thôngHuyen Pham
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngleemindinh
 

What's hot (20)

Đề tài: Áp dụng kỹ thuật trong Big data vào lưu trữ dữ liệu, HOT
Đề tài: Áp dụng kỹ thuật trong Big data vào lưu trữ dữ liệu, HOTĐề tài: Áp dụng kỹ thuật trong Big data vào lưu trữ dữ liệu, HOT
Đề tài: Áp dụng kỹ thuật trong Big data vào lưu trữ dữ liệu, HOT
 
Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễn
Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễnGiới thiệu cơ bản về Big Data và các ứng dụng thực tiễn
Giới thiệu cơ bản về Big Data và các ứng dụng thực tiễn
 
lý thuyết cơ sở dữ liệu phân tán
lý thuyết cơ sở dữ liệu phân tánlý thuyết cơ sở dữ liệu phân tán
lý thuyết cơ sở dữ liệu phân tán
 
Hệ PhâN TáN
Hệ PhâN TáNHệ PhâN TáN
Hệ PhâN TáN
 
NoSql Database
NoSql DatabaseNoSql Database
NoSql Database
 
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPT
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPTBài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPT
Bài 1: Tổng quan về cơ sở dữ liệu - Giáo trình FPT
 
Bai02 he thong quan ly tap tin
Bai02   he thong quan ly tap tinBai02   he thong quan ly tap tin
Bai02 he thong quan ly tap tin
 
Chuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tánChuong 4 - CSDL phân tán
Chuong 4 - CSDL phân tán
 
Spark SQL
Spark SQLSpark SQL
Spark SQL
 
Cơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tánCơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tán
 
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...
XÂY DỰNG ONTOLOGY PHỤC VỤ TÌM KIẾM NGỮ NGHĨA ĐỘNG VẬT RỪNG TRÊN ĐỊA BÀN THÀNH...
 
Hbase, Cách thức lưu trữ và tìm kiếm
Hbase, Cách thức lưu trữ và tìm kiếmHbase, Cách thức lưu trữ và tìm kiếm
Hbase, Cách thức lưu trữ và tìm kiếm
 
Ktmt chuong 5
Ktmt chuong 5Ktmt chuong 5
Ktmt chuong 5
 
Cơ sở dữ liệu PTIT slide 2
Cơ sở dữ liệu PTIT slide 2Cơ sở dữ liệu PTIT slide 2
Cơ sở dữ liệu PTIT slide 2
 
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)
TỔNG QUAN VỀ DỮ LIỆU LỚN (BIGDATA)
 
Introduction to Bigdata and HADOOP
Introduction to Bigdata and HADOOP Introduction to Bigdata and HADOOP
Introduction to Bigdata and HADOOP
 
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨM
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨMPHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨM
PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN TÍCH DỮ LIỆU CÔNG THỨC DƯỢC PHẨM
 
Chuong 1 - CSDL phân tán
Chuong 1 - CSDL phân tánChuong 1 - CSDL phân tán
Chuong 1 - CSDL phân tán
 
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thông
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thôngBáo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thông
Báo cáo bài tập lớn môn Cơ sở dữ liệu - Học viện công nghệ bưu chính viễn thông
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàng
 

Similar to Giải pháp xử lý big data trên apache spark

Bắt đầu nghiên cứu Big Data
Bắt đầu nghiên cứu Big DataBắt đầu nghiên cứu Big Data
Bắt đầu nghiên cứu Big DataHong Ong
 
Hadoop là gì
Hadoop là gìHadoop là gì
Hadoop là gìHLV
 
Hadoop là gì
Hadoop là gìHadoop là gì
Hadoop là gìHLV
 
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdf
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdfSlide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdf
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdflyvanlinh519
 
TIN HỌC ĐẠI CƯƠNG.pptx
TIN HỌC ĐẠI CƯƠNG.pptxTIN HỌC ĐẠI CƯƠNG.pptx
TIN HỌC ĐẠI CƯƠNG.pptxLikHuk
 
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.doc
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.docỨng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.doc
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.docDịch vụ viết thuê Luận Văn - ZALO 0932091562
 
Chuong 1 tong_quan_ve_csdl
Chuong 1 tong_quan_ve_csdlChuong 1 tong_quan_ve_csdl
Chuong 1 tong_quan_ve_csdlHuy Feng
 
Đăng ký khóa học Spark and Hadoop.doc
Đăng ký khóa học Spark and Hadoop.docĐăng ký khóa học Spark and Hadoop.doc
Đăng ký khóa học Spark and Hadoop.dochainguyenle89
 
bai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.pptbai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.pptHungHuyNguyen3
 
Software Stack là gì.pdf
Software Stack là gì.pdfSoftware Stack là gì.pdf
Software Stack là gì.pdfGrowup Work
 
k07406tochucdulieuvathongtin
k07406tochucdulieuvathongtink07406tochucdulieuvathongtin
k07406tochucdulieuvathongtinVo Oanh
 
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?VWS2017: Bắt đầu Big Data từ đâu và như thế nào?
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?Hong Ong
 
Indexing olap data
Indexing olap dataIndexing olap data
Indexing olap datavutoan1912
 
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 năm
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 nămSFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 năm
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 nămVu Hung Nguyen
 

Similar to Giải pháp xử lý big data trên apache spark (20)

Trongtruong so27a 09
Trongtruong so27a 09Trongtruong so27a 09
Trongtruong so27a 09
 
Bắt đầu nghiên cứu Big Data
Bắt đầu nghiên cứu Big DataBắt đầu nghiên cứu Big Data
Bắt đầu nghiên cứu Big Data
 
Hadoop là gì
Hadoop là gìHadoop là gì
Hadoop là gì
 
Hadoop là gì
Hadoop là gìHadoop là gì
Hadoop là gì
 
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdf
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdfSlide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdf
Slide 05 - Khai pha du lieu lon voi Spark - Nguyen Van Quyet.pdf
 
Neo4j
Neo4jNeo4j
Neo4j
 
TIN HỌC ĐẠI CƯƠNG.pptx
TIN HỌC ĐẠI CƯƠNG.pptxTIN HỌC ĐẠI CƯƠNG.pptx
TIN HỌC ĐẠI CƯƠNG.pptx
 
Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...
Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...
Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...
 
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.doc
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.docỨng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.doc
Ứng Dụng Mô Hình Mapreduce Xây Dựng Hệ Thống Đánh Giá Độ Tƣơng Đồng Văn Bản.doc
 
Chuong 1 tong_quan_ve_csdl
Chuong 1 tong_quan_ve_csdlChuong 1 tong_quan_ve_csdl
Chuong 1 tong_quan_ve_csdl
 
Đăng ký khóa học Spark and Hadoop.doc
Đăng ký khóa học Spark and Hadoop.docĐăng ký khóa học Spark and Hadoop.doc
Đăng ký khóa học Spark and Hadoop.doc
 
bai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.pptbai giang mon sql- buoi 1.ppt
bai giang mon sql- buoi 1.ppt
 
Software Stack là gì.pdf
Software Stack là gì.pdfSoftware Stack là gì.pdf
Software Stack là gì.pdf
 
k07406tochucdulieuvathongtin
k07406tochucdulieuvathongtink07406tochucdulieuvathongtin
k07406tochucdulieuvathongtin
 
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?VWS2017: Bắt đầu Big Data từ đâu và như thế nào?
VWS2017: Bắt đầu Big Data từ đâu và như thế nào?
 
Cosodulieu
CosodulieuCosodulieu
Cosodulieu
 
Indexing olap data
Indexing olap dataIndexing olap data
Indexing olap data
 
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 năm
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 nămSFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 năm
SFD 2013 Hanoi: Phần mềm nguồn mở và dự tính khí hậu 100 năm
 
Data Warehouse
Data WarehouseData Warehouse
Data Warehouse
 
Cosodulieu
CosodulieuCosodulieu
Cosodulieu
 

Giải pháp xử lý big data trên apache spark

  • 1. GIẢI PHÁPXỬ LÝ BIG DATATRÊN APACHE SPARK NguyễnTrầnNgọcLinh Bigdataspecialist–ViettelCorporation
  • 2. ABOUT ME - Big data specialist at Viettel - Certifications:  Cloudera CertifiedAdministrator forApache Hadoop(CCAH) – 2016  EMCAdvancedAnalytics Specialistfor data Scientists – 2016  Data Bricks and O’Reilly – Developer Certification forApache Spark - 2017 - Email:linhntn3@vietel.com.vnorlinhntn0612@gmail.com - Linkedin:https://www.linkedin.com/in/linhntn3/
  • 3. Xử lý Big data trênApache Spark Phần I : Tổng quan big data Phần II : Hiện trạng xử lý big data Phần III : Xử lý big data trênApache Spark
  • 4. Xử lý dữ liệu lớn trênApache Spark Phần I : Tổng quan xử lý dữ liệu lớn  Tổng quan  Xây dựng nền tảng  Xu hướng
  • 5. Khái niệm: Big Data (Dữ liệu lớn) là thuật ngữ mô tả quá trình xử lý và phân tích dữ liệu trên một tập dữ liệu lớn bao gồm cả dữ liệu có cấu trúc hay không có cấu trúc. Tính quan trọng: - Giảm chi phí - Giảm thời gian thực hiện - Kế hoạch phát triển và tối ưu sản phẩm -Đưa ra quyết định tốt hơn trong kinh doanh
  • 6. Tổng quan về big data Khái niệm: Big Data (Dữ liệu lớn) là thuật ngữ mô tả quá trình xử lý và phân tích dữ liệu trên một tập dữ liệu lớn bao gồm cả dữ liệu có cấu trúc hay không có cấu trúc. Tính quan trọng: - Giảm chi phí - Giảm thời gian thực hiện - Kế hoạch phát triển và tối ưu sản phẩm -Đưa ra quyết định tốt hơn trong kinh doanh
  • 7. Tổng quan về big data
  • 8. Xây dựng nền tảng big data Nền tảng Big Data bao gồm: Thành phần thu thập dữ liệu (Data acquisition)  deliver low, độ trễ chấp nhận được trong việc lấy dữ liệu, truy vấn đơn giản, quản lý được lượng transaction cao, trong môi trường phân tán, hỗ trợ linh hoạt, cấu trúc dữ liệu đa dạng. Thành phần tổ chức dữ liệu (Data organization)  khả năng xử lý và thao tác dữ liệu tại chính nơi lưu trữ, hỗ trợ high throughput để xử lý lượng lớn dữ liệu và nhiều loại dữ liệu có định dạng khác nhau. Thành phần tích dữ liệu (Data analysis)  hỗ trợ phân tích big data ở mức độ thống kê và data mining trên các kiểu dữ liệu đa dạng trên các hệ thống khác nhau, có khả năng giãn nở cho khối lượng dữ liệu cực lớn, thời gian phản hồi chấp nhận được và có khả năng ra quyết định.
  • 9. Xu hướng phát triển Big Data
  • 10. Xử lý big data trênApache Spark Phần II : Hiện trạng xử lý big data  Giải pháp xử lý big data trên Hadoop  Giải pháp map-reduce in memory
  • 11. Hiện trạng xử lý dữ liệu lớn Giải pháp xử lý bằng DB - DB là điểm nghẽn - Tăng năng lực xử lý theo chiều dọc => chi phí cao - Không có khả năng xử lý song song - Dữ liệu có cấu trúc - Không có khả năng phân tích dữ liệu theo thời gian chấp nhận được
  • 12. Hiện trạng xử lý dữ liệu lớn Giải pháp xử lý bằng Hadoop - Tận dụng được khả năng lưu trữ của Hadoop HDFS. - Gặp các vấn đề trong việc xử lý: • Phụ thuộc vào Hive (SQL like). Không tự viết được phần xử lý map-reduce. • Các phép toán tổng hợp liên quan đến join chạy rất chậm • Không tối ưu các bước xử lý bằng map-reduce - Không hỗ trợ ứng dụng thời gian thực - Hadoop map-reduce framework có nhiều nhược điểm.
  • 13. Giải pháp xử lý Big Data trên Hadoop Map Map Map Reduce Reduce Input Output MRHDFS
  • 14. Nhược điểm Hadoop map-reduce  Dữ liệu trung gian thường xuyên đọc và ghi từ ổ cứng  Sao lặp quá nhiều để tránh lỗi  Không tối ưu việc partition và “shuffle” dữ liệu  Không tối ưu việc quản lý job-flow Input iter. 1 iter. 2 . . . HDFS read HDFS write HDFS read HDFS write Map Map Map Reduce Reduce Input Output
  • 15. Giải pháp map-reduce in memory Ưu điểm đọc –ghi dữ liệu trên memory - I/O memory >> disk (SDD) - Nhiều tập dữ liệu của các job xử lý dữ liệu có khả năng lưu trữ được trên memory vd: 90% dữ liệu Yahoo, Facebook, Bing - Dung lượng RAM ngày càng tăng, chi phí ngày càng giảm Map-Reduce in memory
  • 16. Xử lý big data trênApache Spark Phần III : Xử lý big data trênApache Spark  Tổng quan  Apache Spark vs Hadoop MR  Cơ chế xử lýApache Spark  Xử lý dữ liệu thời gian thực trên Spark  Phân tích dữ liệu trên Spark  Hiệu năngvà ứng dụngcủa Spark
  • 17. Tổng quanApache Spark  Opensource Framework tính toán song song trên cụm phát triển bởi AMPLab – UC Berkeley  Top-level project của Apache  Nhanh từ 10 – 100x Hadoop  Cơ chế xử lý in-memory  Quản lý công việc dựa trên DAG  Cơ chế chống lỗi không dựa trên sao lặp dữ liệu  Hỗ trợ nhiều hệ thống file (NTFS, S3, HDFS – Hadoop)  Cung cấp API mức cao (Java, Scala, Python)  Cung cấp 3 cơ chế trong cùng một nền tảng:  Xử lý dữ liệu theo lô (batch processing)  Xử lỹ dữ liệu thời gian thực (streaming processing)  Phân tích dữ liệu (machine learning)
  • 19. Apache Spark vs Hadoop Map-reduce Hadoop Apache Spark I/O chiếm 90% thời gian xử lý 10-100x disk
  • 20. Cơ chế phân cụmApache Spark Code Dat a
  • 21. Cơ chế xử lý dữ liệuApache Spark  RDD (Resilient Distributed Dataset)  Tập dữ liệu có khả năng phân tán  Lưu trữ trên memory phục vụ việc sử dụng lại một cách nhanh chóng  Cung cấp cơ chế cache trên memory  Tự động phục hồi dữ liệu khi xảy ra lỗi  Áp dụng vào nhiều loại ứng dụng  Các phương thức áp dụng cho RDD  Transformation (map, filter, groupBy, join…) • Biến đổi một hoặc nhiều RDD thành một RDD mới  Action (count, collect, save) • Trả về kết quả hoặc lưu trữ dữ liệu (HDFS, s3, memory…)
  • 22. Cơ chế xử lý dữ liệuApache Spark
  • 23. Cơ chế sửa lỗi Apache Spark Hadoop xây dựng cơ chế chịu lỗi bằng việc sao lặp dữ liệu Apache Spark xây dựng cơ chế chịu lỗi bằng RDD “lineage”
  • 24. Cơ chế lập lịchApache Spark  Lập lịch theo mô hình đồ thị DAG  Chia các task thành các Stage  Cache dữ liệu cần sử dụng lại  Phân chia partition hạn chế tối đa việc shuffle dữ liệu qua mạng
  • 25. Xử lý dữ liệu thời gian thực –Apache Spark Small batch ~ 1s
  • 26. Xử lý dữ liệu thời gian thực –Apache Spark Traditional Streaming Spark Streaming
  • 27. Xử lý dữ liệu thời gian thực –Apache Spark
  • 28. Phân tích dữ liệu Machine Learning –Apache Spark  Phân lớp  Phân cụm  Hồi quy  Học chủ động
  • 29. So sánh hiệu năng Hive Impala Shark 0 10 20 30 40 50 60 70 ResponseTime(s) Interactive (SQL, Shark) Storm Spark Streaming 0 5 10 15 20 25 30 35 Throughput(MB/s/node) Streaming (SparkStreaming)Hadoop Spark 0 20 40 60 80 100 120 140 TimeperIteration(s) Batch (ML, Spark)
  • 32. Q&A