Hadoop Distributed File System: lưu trữ dữ liệu phân cụm có khả năng tự sửa lỗi với băng thông cao. MapReduce: quản lý tài nguyên phân tán có khả năng chịu lỗi và lập lịch xử lý song song lượng dữ liệu lớn.
Trang 1Copyright (C) 2013 DeNA Co.,Ltd All Rights
Game mạng xã hội
– Làm thế nào để xem KPI
Le Kim Dung DeNA Hanoi March 15, 2013
Trang 2Nội dung
Hadoop
Hadoop là gì?
Hadoop hoạt động như thế nào?
Pig
Kiến trúc phân tích cho game mạng xã hội
References
Q&A
Trang 3Copyright (C) 2013 DeNA Co.,Ltd All Rights
Hadoop là gì?
Hadoop là một framework mã nguồn mở trên nền Java
hỗ trợ xử lý dữ liệu lớn trong môi trường tính toán phân
tán
Efficient distribution
to multiple machines
Distributed Processing
Distributed Data Storage
Trang 4Hadoop hoạt động như thế nào?
Thành ph ầ n chính c ủ a Hadoop: HDFS và
MapReduce
Hadoop Distributed File System: lưu trữ dữ liệu phân cụm
có khả năng tự sửa lỗi với băng thông cao.
MapReduce: quản lý tài nguyên phân tán có khả năng chịu
lỗi và lập lịch xử lý song song lượng dữ liệu lớn.
Trang 5Copyright (C) 2013 DeNA Co.,Ltd All Rights
Hadoop hoạt động như thế nào?
Hadoop Distributed File System
File dữ liệu được chia thành các blocks sau đó được nhân
rộng trên các cụm (Hadoop cluster)
Trang 6T ố i ư u:
• Throughput
• Put/Get/Delete
• Appends
Nhân r ộ ng block:
• Durability
• Availability
• Throughput
Hadoop hoạt động như thế nào?
Hadoop Distributed File System
Các block nhân r ộ ng đượ c phân tán trên các máy ch ủ và
t ủ máy ch ủ (rack)
Trang 7Copyright (C) 2013 DeNA Co.,Ltd All Rights
Hadoop hoạt động như thế nào?
MapReduce
Công việc được chia nhỏ thành các nhiệm vụ, sau đó các
nhiệm vụ này được lập lịch để gần với dữ liệu nhất có
thể.
Huge calculation task
Result
Map
Reduced
Trang 8Hadoop hoạt động như thế nào?
MapReduce
Các m ứ c phân ph ố i nhi ệ m v ụ :
• Cùng máy ch ủ v ớ i d ữ li ệ u
(local disk)
• Cùng t ủ máy ch ủ v ớ i d ữ li ệ u
(rack/leaf switch)
• N ơ i có b ộ nh ớ tr ố ng (cross
rack)
T ố i ư u:
• X ử lý theo kh ố i
• Khôi ph ụ c l ỗ i
H ệ th ố ng phát hi ệ n các nhi ệ m v ụ b ị tr ễ và th ự c hi ệ n song song các
nhi ệ m v ụ trên cùng m ộ t kh ố i d ữ li ệ u
Trang 9Copyright (C) 2013 DeNA Co.,Ltd All Rights
Pig
Pig là một ngôn ngữ script gần giống với SQL cho phép
thực thi một cách dễ dàng các tiến trình Map Reduce
phức tạp
A = LOAD ‘myfile' AS (id: int, name: chararray, date:
chararray, num: int);
B = GROUP A BY date PARALLEL 20;
C = FOREACH B GENERATE
group AS date, SUM(num) AS total;
D = ORDER C BY date PARALLEL 1;
STORE D INTO ‘output’;
Trang 10Kiến trúc phân tích game mạng xã hội
Big Data
Pig
Combo Log
Combo Log
Combo Log
Combo Log
Combo Log
Combo Log
Data Processing
Data Processing
Report Mail Games
Real time
Hourly Ad-hoc Hourly
Trang 11Copyright (C) 2013 DeNA Co.,Ltd All Rights
Tổng kết
Hadoop là một framework hiệu quả cho các ứng dụng
phân tán
Hadoop gồm 2 thành phần chính là HDFS là MapReduce Pig là một ngôn ngữ luồng dữ liệu được sử dụng trong
việc phân tích lượng dữ liệu lớn
Sử dụng Pig cùng hệ thống Hadoop để phân tích dữ liệu
người chơi, tạo các báo cáo KPI hàng ngày, hàng giờ
Trang 12Tài liệu tham khảo
Juji Ukai - Basics of SG Analytics
How to Make $10M/month Games - January 8, 2013
Juji Ukai – Hadoop Trainning – May 24, 2011
Amr Awadallah - Introducing Apache Hadoop: The
Modern Data Operating System - November 16, 2011.
http://hadoop.apache.org/
http://strata.oreilly.com/2012/02/what-is-apache-hadoop.html
http://pig.apache.org/docs/r0.7.0/index.html
Trang 13Copyright (C) 2013 DeNA Co.,Ltd All Rights Thank you!