Ứng dụng cơ sở dữ liệu song song trong xử lý dữ liệu cuộc gọi

11 440 0
Ứng dụng cơ sở dữ liệu song song trong xử lý dữ liệu cuộc gọi

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠ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 (ngoà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 toán phân tán kết hợp Oracle Hadoop 2.1 Kiến trúc Hadoop 2.1.1 HDFS Error! Bookmark not defined 2.1.2 Mô hình MapReduce Error! Bookmark not defined 2.2 Oracle big data connector Error! Bookmark not defined 2.2.1 Oracle Loader for Hadoop Error! Bookmark not defined 2.2.2 Oracle SQL Connector for Hadoop Distributed File System Error! Bookmark not defined 2.3 Oracle Table Function Error! Bookmark not defined Chƣơng 3: Thực nghiệm kết Error! Bookmark not defined 3.1 Giới thiệu Error! Bookmark not defined 3.2 Phƣơng pháp hồi quy tuyến tính Error! Bookmark not defined 3.3 Mẫu liệu Error! Bookmark not defined 3.4 Mô hình triển khai Error! Bookmark not defined 3.5 Phƣơng pháp thực Error! Bookmark not defined 3.6 Đánh giá Error! Bookmark not defined 3.7 Kết luận Error! Bookmark not defined 3.7.1 Các kết đạt đƣợc Error! Bookmark not defined 3.7.2 Hƣớng phát triển Error! Bookmark not defined 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, 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 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 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 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 toá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 toá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 toá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 toá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 hoạt động mà 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 11 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 11 [...]... http://docs.oracle.com/cd/E27101_01/doc.10/e27365/directhdfs.htm 8 Cài đặt Hadoop trên Centos - http://www.tecmint.com/install-hadoop-multinodecluster-in-centos/ 9 Nguồn dữ 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ừ cơ sở dữ liệu Oracle https://docs.oracle.com/cd/B19306_01/java.102/b14187/chthree.htm 12 Hadoop wiki: http://wiki.apache.org/hadoop/...11 Tài liệu tham khảo Tài liệu tiếng Anh 1 Xueyuan Su (2012), “Oracle In-Database Hadoop: When MapReduce Meets RDBMS”, Computer Science Yale University 2 Natalie Gruska and Patrick Martin (2010), Integrating 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 của 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

Ngày đăng: 27/08/2016, 23:09

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan