Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 38 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
38
Dung lượng
1,51 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN XUÂN HIẾU ỨNG DỤNG CƠ SỞ DỮ LIỆU SONG SONG TRONG XỬ LÝ DỮ LIỆU CUỘC GỌI LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội - 2016 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN XUÂN HIẾU ỨNG DỤNG SƠ DỞ DỮ LIỆU SONG SONG TRONG XỬ LÝ DỮ LIỆU CUỘC GỌI Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60 48 01 04 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS TS NGUYỄN HẢI CHÂU NHẬN XÉT CỦA CÁN BỘ HƯỚNG DẪN Hà Nội – 2016 Lời cám ơn Trước hết em xin bày tỏ kính trọng, lòng biết ơn sâu sắc đến giảng viên hướng dẫn PGS TS Nguyễn Hải Châu tận tình hướng dẫn, bảo cho em chuyên môn, truyền đạt kinh nghiệm quý báu suốt thời gian nghiên cứu luận văn Đồng thời em xin chân thành cám ơn giúp đỡ nhiệt tình Thầy Cô giáo Khoa sau Đại học – Đại học Công nghệ - Đại học Quốc Gia Hà Nội tạo điều kiện thuận lợi cho em hoàn thành luận văn Cuối em xin dành biết ơn đến người thân gia đình, bạn bè, đồng nghiệp động viên, khích lệ, giúp đỡ em suốt thời gian vừa qua Hà Nội, ngày 21 tháng 01 năm 2016 Tác giả luận văn Trần Xuân Hiếu Cam kết Tôi xin cam kết nội dung luận văn chưa nộp cho chương trình cập cao học chương trình đào tạo cấp khác Tôi xin cam kết thêm luận văn nỗ lực cá nhân Các kết quả, phân tích, kết luận luận văn (ngồi phần trích dẫn) kết làm việc cá nhân Hà Nội, ngày 21 tháng 01 năm 2016 Tác giả luận văn Trần Xuân Hiếu Mục lục Chƣơng 1: Giới thiệu đề tài 1.1 Giới thiệu 1.2 Ngữ cảnh lý thực đề tài 1.3 Nội dung luận văn Chƣơng 2: Nền tảng tính tốn phân tán kết hợp Oracle Hadoop 2.1 Kiến trúc Hadoop 2.1.1 HDFS 11 2.1.2 Mơ hình MapReduce 18 2.2 Oracle big data connector 21 2.2.1 Oracle Loader for Hadoop 24 2.2.2 Oracle SQL Connector for Hadoop Distributed File System 25 2.3 Oracle Table Function 25 Chƣơng 3: Thực nghiệm kết 26 3.1 Giới thiệu 26 3.2 Phƣơng pháp hồi quy tuyến tính 27 3.3 Mẫu liệu 27 3.4 Mơ hình triển khai 31 3.5 Phƣơng pháp thực 33 3.6 Đánh giá 33 3.7 Kết luận 37 3.7.1 Các kết đạt đƣợc 37 3.7.2 Hƣớng phát triển 37 Chƣơng 1: Giới thiệu đề tài 1.1 Giới thiệu Tên đề tài luận văn: “Ứng dụng sở liệu song song xử lý số liệu gọi.” Sơ lược: Trong đề tài này, tơi thực tìm hiểu tảng phát triển ứng dụng MapReduce framework Hadoop để phát triển ứng dụng phân tán Sau đó, tiến hành tích hợp với Oracle, ứng dụng quản trị sở liệu, để đánh giá tác dụng việc ứng dụng MapReduce vào truy vấn thực tế Với đặc thù liệu gọi số lượng nhiều ghi dẫn đến việc thực câu truy vấn đọc liệu tập liệu lớn nhiều thời gian Trong kết q trình phân tích đánh giá cần thiết thời gian thực Trong sở liệu nói chung có số biện pháp cho phép đẩy nhanh trình đọc liệu đánh index, khoa ngoại…Nhưng tập liệu lớn biện pháp không khả thi Các câu truy vấn đọc liệu cần chia thành nhiều câu truy vấn nhỏ thực nhiều máy khác Do cần có kết hợp mơ hình MapReduce với hệ quản trị sở liệu, trường hợp sử dụng Oracle 1.2 Ngữ cảnh lý thực đề tài Với tiện lợi đa dạng loại hình dịch vụ OTT thời gian gần đây, kích thích người sử dụng chuyển sang thoại qua sóng 3G Wifi Đây toán lớn đặt với nhà mạng Việt Nam Người dùng sử dụng dịch vụ nhiều dẫn đến phát sinh nhiều liệu gọi phục vụ cho mục đích tính cước đối soát cước Khi khối lượng liệu hệ thống gia tăng tới mức độ định (khoảng hàng ngàn Terabyte chẳng hạn), việc hệ thống phải đối mặt với thách thức để lưu trữ phân tích liệu Chúng ta khơng thể lưu khối liệu lớn lên đĩa cứng hai lý đơn giản Thứ nhất, giới hạn khả lưu trữ ổ cứng Thứ hai, cho dù vượt qua giới hạn dung lượng, việc truy xuất khối lượng liệu đồ sộ cách (vì đĩa đơn) thời gian giới hạn tốc độ đọc đĩa Do vậy, bắt buộc phải lưu trữ liệu lên nhiều đĩa cứng thay Điều giúp thiện tốc độ truy xuất liệu ta tiến hành đọc/ghi cách song song lên đĩa Việc lưu trữ liệu phân tán lên nhiều đĩa cứng mang lại lợi khả lưu trữ tốc độ truy xuất liệu Tuy nhiên, việc trì hệ thống phân tán với nhiều đĩa cứng dẫn đến số vấn đề cần giải Đầu tiên, vấn đề hỏng hóc phần cứng Do liệu lưu nhiều phần cứng khác nhau, nên khả (hay nhiều) phần cứng xảy hỏng hóc tăng lên đáng kể Một cách giải vấn đề mà ta thấy ngay, lưu trữ trùng lắp mẫu liệu lên nhiều đĩa cứng khác Vấn đề thứ hai việc phân tích liệu đơi cần truy đọc liệu từ nhiều đĩa cứng khác Tức liệu đọc từ đĩa cần kết hợp với liệu từ đĩa khác hệ thống Các hệ thống phân tán thường cho phép kết hợp liệu từ nhiều nguồn khác nhau, nhiên làm điều cách xác khơng dễ chút Sự bùng nổ liệu đặt cho thách thức, thách thức việc làm lưu trữ xử lý tất liệu Tuy nhiên, mặt khác lại mang đến hội, hội chiếm lĩnh nguồn thông tin khổng lồ có đủ khả phân tích xử lý nguồn liệu đó, biến liệu thơ thành thơng tin hữu ích với mức chi phí hợp lý 1.3 Nội dung luận văn Luận văn gồm có chương chính: Chương 1: Giới thiệu Giới thiệu đề tài thực Chương 2: Giới thiệu tảng tính tốn phân tán với Hadoop Trong chương này, giới thiệu sơ lược dự án Hadoop Apache Software Foundation Sau sâu vào hai phần trọng tâm HDFS MapReduce Engine Giới thiệu kiến trúc, sức mạnh, cách tích hợp Oracle với Hadoop để xử lý liệu theo mơ hình phân tán Chương 3: Báo cáo kết thực nghiệm Trong chương trình bày thực nghiệm kết thực nghiệm Thêm vào đánh giá kết luận kết Chương 4: Tổng kết Chương nêu lên kết đạt đề tài hướng phát triển Chƣơng 2: Nền tảng tính tốn phân tán kết hợp Oracle Hadoop 2.1 Kiến trúc Hadoop Hadoop có hai thành phần sau: HDFS (Hadoop Distributed File System): Hệ thống file phân tán, cung cấp khả lưu trữ liệu khổng lồ tính tối ưu hóa việc sử dụng băng thơng node HDFS sử dụng để chạy cluster với hàng chục nghìn node MapReduce: framework giúp phát triển ứng dụng theo mơ hình MapReduce cách dễ dàng mạnh mẽ, ứng dụng phân tán MapReduce chạy cluster với nhiều node Ngoài hai thành phần trên, dự án Hadoop có thành phần khác hình vẽ: Hình 2.1: Các thành phần dự án Hadoop Apache Hbase: Là sở liệu dạng cột HBase sử dụng HDFS làm hạ tầng cho việc lưu trữ liệu bên cung cấp khả tính tốn song song MapReduce Apache Pig: Pig tảng cho việc phân tích liệu lớn bao gồm ngôn ngữ mức cao để thể chương trình phân tích liệu, với sở hạ tầng để đánh giá chương trình Đặc tính bật Pig thực thi chương trình tính tốn song song, cho phép xử lý lượng liệu lớn Apache hive: Hive hệ thống data warehouse cho Hadoop để dễ dàng tổng kết liệu, truy vấn ad-hoc, phân tích liệu lớn lưu trữ HDFS Hive hỗ trợ truy vấn thể theo ngôn ngữ khai báo giống SQL, HiveQL (Hive Query Language) Các truy vấn tự động biên dịch thành công việc MapReduce thực cách sử dụng Hadoop Chukwa: Một hệ thống tập hợp phân tích liệu Chukwa chạy collector (các chương trình tập hợp liệu), collector lưu trữ liệu HDFS sử dụng MapReduce để phát sinh báo cáo Apache Zookeeper: Là dịch vụ tập trung để trì thơng tin cấu hình, đặt tên,cho phép đồng phân tán cung cấp nhóm dịch vụ hữu ích cho hệ thống phân tán Hbase khơng thể hoạt động mà khơng có Zookeeper Kiến trúc Hadoop kiến trúc master-slave, hai thành phần HDFS MapReduce tuân theo kiến trúc master-slave Kiến trúc Hadoop cluster thể hình vẽ đây: 10 Hình 2.2: Kiến trúc Hadoop cluster Trên Hadoop cluster có nhật node chạy NameNode, node chạy JobTracker (NameNode JobTracker nằm máy vật lý, nhiên cluster thật với hàng trăm nghìn node thường phải tách riêng NameNode JobTracker máy vật lý khác nhau) Hadoop cluster có nhiều slave, slave thường đóng hai vai trò: DataNode TaskTracker NameNode: đóng vai trò master hệ thống HDFS, quản lý metadata hệ thống HDFS file system space, danh sách file hệ thống block id tương ứng file, quản lý danh sách slave tình trạng hoạt động DataNode, điều hướng trình đọc/ghi liệu từ client lên DataNode DataNode: chứa block liệu thực file HDFS, chịu trách nhiệm đáp ứng yêu cầu đọc/ ghi liệu từ client, đáp ứng yêu cầu tạo/ xóa block liệu từ NameNode SecondaryNameNode: trì metadata NameNode dừng để phục hồi lại NameNode NameNode bị hư hỏng 10 24 Hình 2.8: Cơ chế tải liệu External Table 2.2.1 Oracle Loader for Hadoop Oracle Loader cho Hadoop công cụ tải hiệu suất cao cho phép di chuyển nhanh liệu từ Hadoop đến sở liệu Oracle Oracle Loader cho Hadoop đưa tiện lợi sử dụng Hadoop để tính tốn xếp tài ngun, phân vùng, chuyển đổi liệu Hadoop loại liệu Oracle trước nạp vào sở liệu Chuyển liệu định dạng Oracle làm giảm thiểu sử dụng CPU trình tải sở liệu, tối giản tác động ứng dụng sở liệu Công cụ làm giảm bớt cạnh tranh nguồn tài nguyên, vấn đề phổ biến phải xử lý khối lượng liệu lớn Tính làm cho kết nối Oracle Hadoop đặc biệt hữu ích tải liên tục thường xuyên Oracle Loader cho Hadoop sử dụng kỹ thuật lấy mẫu sáng tạo thông minh phân phối liệu qua nút Hadoop tải liệu song song Điều giảm thiểu ảnh hưởng lệch liệu, mối quan tâm phổ biến ứng dụng song song Oracle Loader cho Hadoop tải vào bảng với sở liệu nén: nén Bảng bản, nén nâng cao theo hàng, nén pha trọn cột Oracle Loader cho Hadoop tải loạt định dạng đầu vào Nguyên tải liệu từ tập tin văn bản, bảng Hive, log file (phân tích tải), Oracle NoSQL Database, nhiều Thơng qua Hive tải từ định dạng đầu vào (ví dụ như: Parquet, tập tin JSON) nguồn đầu vào (ví dụ như: HBase) có khả truy xuất to Hive Ngoài ra, Oracle Loader cho Hadoop đọc định dạng liệu độc quyền thông qua định dạng đầu vào thực tùy chỉnh cung cấp người sử dụng Chức năng: Offload data type conversion to Hadoop Giảm thiểu tương tác sở liệu CPU Parallel load Tăng tốc độ xử lý song song nodes hệ thống Hadoop Tự động cân tải để giải toán cân liệu Xác thực truy xuất thông qua Kerberos Load balancing Security Input formats Hỗ trợ nhiều định dạng file đầu vào như: text, Hive, Parquet, JSON, chuỗi files, file nén, file logs … Partition-aware load Cho phép tải liệu từ phan vùng chứa liệu Hive Bảng 2.2: Chức Oracle Loader for Hadoop 24 25 2.2.2 Oracle SQL Connector for Hadoop Distributed File System Oracle SQL Connector cho HDFS cho phép bạn truy vấn liệu lưu trữ Hadoop từ sở liệu cách sử dụng câu truy vấn Oracle SQL Các liệu truy cập thơng qua bảng bên ngồi truy vấn bảng khác sở liệu Dữ liệu nạp cách chọn liệu từ bảng bên chèn vào bảng sở liệu Tốc độ tải từ Oracle Big Data Appliance cho Oracle Exadata 15 TB / Oracle SQL Connector cho HDFS truy vấn tải liệu tập tin văn bảng Hive qua tập tin văn Khi truy vấn từ bảng phân vùng Hive, Oracle SQL Connector cho HDFS thể hạn chế để truy cập vào tập hợp phân vùng Hive, giảm thiểu liệu truy cập cho hiệu suất nhanh Oracle SQL Connector cho HDFS truy vấn tập tin định dạng Oracle Data Pump, chẳng hạn file liệu tạo Oracle Loader cho Hadoop để tải liệu offline tập tin chép từ sở liệu để Hadoop lưu trữ Chức năng: Oracle SQL access to data in Hadoop Cho phép truy vấn trực tiếp liệu từ bảng Hive file liệu phan vùng HDFS Partition-aware access of Hive Tải truy vấn liệu phan partitioned tables vùng Hive Parallel query and load Tăng tốc độ truy vấn song song tải liệu vào sở liệu Oracle Security Xác thực truy cập thông qua Kerberos Flexible and easy to use Công cụ cho phép tạo external tables Access Oracle Data Pump files in HDFS Lưu trữ liệu sở liệu with Oracle SQL dump files Hadoop cho phép truy vấn từ sở liệu Oracle Bảng 2.3: chức Oracle SQL Connector for HDFS 2.3 Oracle Table Function Table Function chức mà tạo sưu tập hàng (hoặc bảng lồng varray) mà truy vấn giống bảng sở liệu vật lý Bạn sử dụng Table function tên bảng sở liệu, mệnh đề FROM truy vấn Một Table Function có sưu tập hàng đầu vào Một tập tham số đầu tập kiểu CURSOR REF 25 26 Thực thi Table Function song song hóa, kết trả sử dụng trực tiếp cho q trình mà khơng cần kết trung gian Kết trả từ tập trả Table Function xem pipelined-đó là, lặp lặp lại trình kết tạo thay tập sau tất trình xử lý liệu đầu vào Table Function hoàn thành Streaming, pipelining, thực song song Table Function cải thiện hiệu suất: Bằng cách cho phép đa luồng, thực đồng thời Table Function Bằng cách loại trừ giai đoạn trung gian trình Bằng cách cải thiện thời gian đáp ứng truy vấn: Với non-pipelined Table Function, toàn liệu trả Table Function phải xây dựng trả lại cho máy chủ trước truy vấn trả hàng kết Pipelining cho phép hàng để trả lại lặp lặp lại, chúng tạo Điều làm giảm nhớ yêu cầu từ Table Function, đối tượng cache khơng cần phải tải tồn liệu Bằng cách lặp cung cấp hàng kết từ tập kết trả Table Function hàng tạo thay chờ đợi toàn bộ sưu tập tổ chức bảng nhớ sau trả lại tồn bộ sưu tập Hình 2.9: Quá trình xử lý liệu sử dụng pipelining thực thi song song Chƣơng 3: Thực nghiệm kết 3.1 Giới thiệu Quá trình thực nghiệm thực hai mơ hình bao gồm Cơ sở liệu Oracle Cơ sở liệu Oracle kết hợp với Hadoop MapReduce Sau có kết thực nghiệm, sử dụng phương pháp hồi quy tuyến tính để so sánh đánh giá tốc độ xử lý liệu với hai mơ hình 26 27 3.2 Phƣơng pháp hồi quy tuyến tính Phân tích thống kê khâu quan trọng thiếu cơng trình nghiên cứu khoa học, khoa học thực nghiệm Một cơng trình nghiên cứu khoa học, cho dù có tốn quan trọng cỡ nào, khơng phân tích phương pháp khơng có hội xuất tập san khoa học Ngày nay, cần nhìn qua tất tập san nghiên cứu khoa học giới, báo y học có phần “Statistical Analysis” (Phân tích thống kê), nơi mà tác giả phải mô tả cẩn thận phương pháp phân tích, tính tốn nào, giải thích ngắn gọn sử dụng phương pháp để hàm ý tăng trọng lượng khoa học cho phát biểu báo Các tập san y học có uy tín cao u cầu phân tích thống kê nặng Khơng có phần phân tích thống kê, báo khơng có ý nghĩa khoa học Phân tích hồi quy tuyến tính phương pháp phân tích quan hệ biến phụ thuộc Y với hay nhiều biến độc lập X Mơ hình hóa sử dụng hàm tuyến tính (bậc 1) Các tham số mơ hình (hay hàm số) ước lượng từ liệu Mục đích phương pháp ước lượng mức độ liên hệ (tương quan) biến độc lập (các biến giải thích) đến biến phụ thuộc (biến giải thích), ảnh hưởng biến độc lập với (các yếu tố nguyên nhân) Phương pháp ứng dụng kinh doanh kinh tế để phân tích mối liên hệ hai hay nhiều biến ngẫu nhiên Phân tích hồi qui giải vấn đề sau: - Ước lượng giá trị trung bình biến phụ thuộc với giá trị cho biến độc lập Kiểm định giả thiết chất phụ thuộc Dự đốn giá trị trung bình biến phụ thuộc biết giá trị biến độc lập Kết hợp vấn đề 3.3 Mẫu liệu Dữ liệu sử dụng trình thực nghiệm Telecom Italia cung cấp theo link sau: https://dandelion.eu/datamine/open-big-data/ Cơ sở liệu bao gồm liệu mặt truyền thơng, khí hậu, mơi trường thành phố Milano Danh sách bảng với mô tả sơ bảng sau: No Tên bảng Mô tả 27 28 Milano Grid Telecommunications - SMS, Call, Internet - MI Dữ liệu vị trí vùng biểu diễn dạng lưới thành phố Milano Dữ liệu tin nhắn, thoại lưu lượng sử dụng internet Telecommunications - MI to Provinces Dữ liệu truyền thông thành phố Milano đến tỉnh khác Telecommunications - MI to MI Milano Weather Station Data Dữ liệu truyền thông nội thành phố Milano Dữ liệu thời tiết thành phố Milano Precipitation - Milano Dữ liệu lượng mưa thành phố Milano Dữ liệu mức độ ô nhiễm không khí Air Quality - MI thành phố Milano Dữ liệu số lượng báo xuất MilanoToday tạp chí MilanoToday Dữ liệu mức độ sử dụng mạng xã Social Pulse - Milano hội thành phố Milano Bảng 3.1: Danh sách liệu Telecom Italia cung cấp Chi tiết bảng Telecommunications - SMS, Call, Internet - MI - Tập liệu cung cấp thông tin hoạt động truyền thông thành phố Milano Tập liệu kết tính tốn với liệu chi tiết gọi (call detail records - CDRs) tạo nhà mạng di động thành phố Milano Dữ liệu chi tiết gọi người dùng có mục đích tính cước quản lý mạng Có nhiều kiểu liệu chi tiết gọi nhung tịu chung lại có hoạt động sau tạo tập liệu: o Nhận SMS: CDRs tạo lần người dùng nhận SMS o Gửi SMS: CDR tạo người sử dụng gửi tin nhắn SMS o Nhận gọi: CDR tạo lần người dùng nhận gọi o Thực gọi: CDR tạo người dùng thực gọi o Internet: CDR tạo có hành động sau Người dùng bắt đầu kết nối internet 28 29 - - - Một người dùng kết thúc kết nối internet Trong kết nối mức sau đạt 15 phút tính từ lần tạo CDR cuối MB tính từ lần tạo CDR cuối Thông qua cách tập hợp liệu trình bày, thu tập liệu cung cấp thông tin SMSs, gọi hoạt động kết nối internet Những liệu đo lường tương tác người dùng với nhà mạng di động Một ví dụ mức độ cao số lượng tin nhắn SMS gửi người dùng Cao hoạt động gửi tin nhắn SMS người dùng Các phép đo gọi tin nhắn SMS có quy mơ tương tự (do so sánh), lượng truy cập internet khơng Dữ liệu tập hợp theo hai cách sau o Tập hợp theo không gian: Tập hợp liệu khác ô vuông đồ thành phố Milano o Tập hợp theo thời gian: Tập hợp liệu sinh khoảng thời gian 10 phút Mô tả chi tiết Table STT Tên SQUARE_ID Mô tả Kiểu liệu ID hình vng Numeric phần đồ thành phố Milano TIME_INTERVAL Bắt đầu Numeric khoảng thời gian lấy liệu, kết thúc q trình lấy liệu cơng thêm 10 phút vào giá trị COUNTRY_CODE Mã code điện thoại vùng Numeric SMS_IN_ACTIVITY Số lượng SMS nhận vùng QUARE_ID Numeric 29 30 khoảng thời gian tương ứng gửi từ mã vùng COUNTRY_COD E SMS_OUT_ACTIVITY Số lượng SMS gửi Numeric vùng QUARE_ID khoảng thời gian tương ứng gửi từ mã vùng COUNTRY_COD E CALL_IN_ACTIVITY Số lượng gọi Numeric nhận vùng QUARE_ID khoảng thời gian tương ứng gửi từ mã vùng COUNTRY_COD E CALL_OUT_ACTIVITY Số lượng gọi Numeric gọi vùng QUARE_ID khoảng thời gian tương ứng gửi từ mã vùng COUNTRY_COD E INTERNET_TRAFFIC_ACTI VITY Lưu lượng sử dụng internet vùng QUARE_ID khoảng thời gian tương ứng 30 Numeric 31 sử dụng người dùng thuộc COUNTRY_COD E Bảng 3.2: mô tả chi tiết trường bảng 3.4 Mơ hình triển khai Hệ thống Hadoop triển khai mơi trường ảo hóa bao gồm node chạy trên máy vật lý với chức sau node cài đặt Master Hadoop Oracle node cài đặt Node Hadoop Các node tạo quản trị OpenStack cho phép linh động trình cài đặt triển khai Hình 3.1: mơ hình triển khai Hadoop Oracle Thơng số cấu hình Node sau: No Tên Cấu hình Master core CPU, 4G RAM, DISK 100G Node core CPU, 4G RAM, DISK 50G Bảng 3.3: cấu hình phần cứng Node hệ thống 31 32 Mơ hình chức tích hợp Oracle với Hadoop sau: Hình 3.2: mơ hình thực thi kết hợp Hadoop với Oracle Các file liệu lưu trữ HDFS, trường cách dấu tab Thông qua Oracle big data connector để tải liệu vào external table Oracle Trên Master viết java method thực chức Map & reduce Các Method compile thành class Trên Oracle khai báo Function cho phép gọi class java để thực câu truy vấn theo mơ hình MapReduce 32 33 3.5 Phƣơng pháp thực Trên sở liệu Oracle tạo table & external table với dung lượng ghi sau: No Số lượng ghi 160.000.000 120.000.000 100.000.000 80.000.000 40.000.000 20.000.000 Bảng 3.4: chi tiết số lượng ghi thực thực nghiệm Thực 10 lần câu truy vấn phức tạp Oracle lấy thời gian response trung bình tất câu truy vấn Tương tự thực lại câu truy vấn với table external Table theo mơ hình Hadoop MapReduce lấy giá trị trung bình thời gian response tất lần Bảng kết thực truy vấn Thực câu truy vấn theo Phương pháp mô tả ta kết sau: Time Response 160.000.000 120.000.000 100.000.000 80.000.000 40.000.000 20.000.000 Oracle (giây) Oracle + Hadoop (giây) 66.241 55.632 55.573 43.826 45.821 34.475 33.798 21.325 21.183 13.768 8.342 6.731 Bảng 3.5: chi tiết kết thực nghiệm 3.6 Đánh giá Với kết theo bảng trên, sử dụng phương pháp hồi quy tuyến tính ta có kết sau: ## ## One Sample t-test ## ## data: perf$ratio ## t = 19.662, df = 5, p-value = 6.284e-06 33 34 ## alternative hypothesis: true mean is not equal to ## 95 percent confidence interval: ## 1.366642 1.777740 ## sample estimates: ## mean of x ## 1.572191 Oracle chạy chậm Oracle Hadoop 1.57 lần với khoảng tin cậy 95% từ 1.37 đến 1.78 lần Dự báo hiệu mơ hình Oracle: ## ## Call: ## lm(formula = oracle ~ records, data = perf) ## ## Residuals: ## ## -1.54978 1.40810 1.81704 -1.14402 -0.02814 -0.50320 ## ## Coefficients: ## Estimate Std Error t value Pr(>|t|) ## (Intercept) 1.233e+00 1.299e+00 0.949 0.396250 ## records 2.007e-07 1.317e-08 15.244 0.000108 *** ## ## Signif codes: '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' ## ## Residual standard error: 1.521 on degrees of freedom ## Multiple R-squared: 0.9831, Adjusted R-squared: 0.9788 ## F-statistic: 232.4 on and DF, p-value: 0.000108 Biểu đồ hiệu với mơ hình Oracle: 34 35 Hình 3.3: biểu đồ biểu thị kết hiệu mơ hình Oracle Mơ hình Oracle có hệ số xác định R2 = 0.979 p-value < 0.05 mơ hình hợp lý Thời gian chạy dự đốn Oracle = 1.233+số ghi (đơn vị triệu)*0.20075 giây Dự báo hiệu mơ hình Oracle Hadoop: ## ## Call: ## lm(formula = oraclehadoop ~ records, data = perf) ## ## Residuals: ## ## 0.06387 0.62685 0.02784 -1.10717 -0.37119 0.75980 ## ## Coefficients: ## Estimate Std Error t value Pr(>|t|) ## (Intercept) 6.072e-01 6.533e-01 0.929 0.405 ## records 1.279e-07 6.622e-09 19.314 4.24e-05 *** ## 35 36 ## Signif codes: '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' ## ## Residual standard error: 0.7646 on degrees of freedom ## Multiple R-squared: 0.9894, Adjusted R-squared: 0.9867 ## F-statistic: 373 on and DF, p-value: 4.236e-05 Biểu đồ hiệu xử lý mơ hình Oracle Hadoop: Hình 3.4: biểu đồ thống kê xử ký liệu với Oracle kết hợp Hadoop Mơ hình Oracle kết hợp Hadoop có hệ số xác định R2 = 0.987 p-value < 0.05 mơ hình hợp lý Thời gian chạy dự đốn Oracle Hadoop = 0.61 + số ghi (đơn vị triệu)*0.127 giây 36 37 3.7 Kết luận Thông qua phương pháp hồi quy tuyến tính, ta đến kết luận, tốc độ xử lý liệu theo mơ hình Oracle kết hợp với Hadoop nhanh mơ hình Oracle 1.57 lần với khoảng tin cậy 95% từ 1.37 đến 1.78 lần 3.7.1 Các kết đạt đƣợc Sau thời gian nghiên cứu tìm hiểu, đạt số kết sau: Tìm hiểu tảng kiến thức chi tiết kiến trúc, đặc điểm chế hoạt động hai thành phần Hadoop: HDFS MapReduce Engine Biết cách tích hợp Oracle với Hadoop cho phép xử lý câu truy vấn theo mơ hình MapReduce So sánh, đánh giá thống kê truy vấn liệu hai mơ hình sở liệu Oracle sở liệu Oracle kết hợp Hadoop 3.7.2 Hƣớng phát triển Hadoop có nhiều dự án khác cho phép tương tác với sở liệu HBase, Hive, Pig Mỗi dự án xây dựng lên thêm công cụ với mục đích hồn chỉnh thêm cho Hadoop Việc tìm hiểu cơng cụ mang lại nhiều lựa chọn cho việc phát triển ứng dụng phân tán tương tác với sở liệu với mục đích khác 37 38 Tài liệu tham khảo Tài liệu tiếng Anh Xueyuan Su (2012), “Oracle In-Database Hadoop: When MapReduce Meets RDBMS”, Computer Science Yale University Natalie Gruska and Patrick Martin (2010), Integrating MapReduce and RDBMSs”, School of Computing Queen’s University Kingston, ON, Canada Juliana Freire (2009), “Hadoop vs Parallel Databases”, Oracle white paper, “In-Database Map-Reduce”, October 2009 Hướng dẫn tích hợp Oracle với Hadoop http://docs.oracle.com/cd/E37231_01/doc.20/e36961/sqlch.htm#BDCUG347 Khái niệm external Table http://docs.oracle.com/cd/B19306_01/server.102/b14215/et_concepts.htm Hướng dẫn tích hợp Oracle với HDFS http://docs.oracle.com/cd/E27101_01/doc.10/e27365/directhdfs.htm Cài đặt Hadoop Centos - http://www.tecmint.com/install-hadoop-multinodecluster-in-centos/ Nguồn liệu - https://dandelion.eu/datamine/open-big-data/ 10 In-Database MapReduce - https://blogs.oracle.com/datawarehousing/entry/indatabase_map-reduce 11 Hướng dẫn gọi hàm Java từ sở liệu Oracle https://docs.oracle.com/cd/B19306_01/java.102/b14187/chthree.htm 12 Hadoop wiki: http://wiki.apache.org/hadoop/ 13 Ví dụ source code mơ hình MapReduce: https://sites.google.com/site/hadoopandhive/home/hadoop-how-to-count-number-oflines-in-a-file-using-map-reduce-framework 14 Hướng dẫn cách đóng gói class java: https://docs.oracle.com/cd/B10501_01/java.920/a96659/03_pub.htm 15 Hướng dẫn sử dụng big data connector Oracle: http://docs.oracle.com/cd/E37231_01/doc.20/e36961/start.htm#BDCUG107 16 Hướng dẫn cách quản trị external tables: http://docs.oracle.com/cd/E18283_01/server.112/e17120/tables013.htm 38 ... tài luận văn: Ứng dụng sở liệu song song xử lý số liệu gọi. ” Sơ lược: Trong đề tài này, tơi thực tìm hiểu tảng phát triển ứng dụng MapReduce framework Hadoop để phát triển ứng dụng phân tán Sau... for Hadoop Mô tả Xử lý song song, cho phép load liệu tốc độ cao từ Hadoop vào sở liệu Oracle Oracle SQL Connector for HDFS Xử lý song song, cho phép query liệu Hadoop từ sở liệu Oracle với câu...2 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN XUÂN HIẾU ỨNG DỤNG SƠ DỞ DỮ LIỆU SONG SONG TRONG XỬ LÝ DỮ LIỆU CUỘC GỌI Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã