Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

33 12 0
Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Đ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

LỜI CẢM ƠN Ngày nay, cơng nghiệp hóa đại hóa phát triển kéo theo phát triển cơng nghệ Đặc biệt nganh công nghệ thông tin trở thành lĩnh vực thiếu người Có thể nói cơng nghệ thơng tin mang lại diện mạo cho nhiều nghành Đây lý em chọn đề tài “Xử lý liệu phân tán công nghệ Hadoop ứng dụng” cho báo cáo Thực tập trình tham gia học hỏi, so sánh, nghiên cứu ứng dụng kiến thức học vào thực tế công việc Báo cáo thực tập vừa hội để sinh viên trình bày nghiên cứu vấn đề quan tâm trình học tập, đồng thời tài liệu giúp giảng viên kiểm tra đánh giá trình học tập kết thực tập sinh viên Trong thời gian thực tập Phịng Cơng Nghệ Phần Mềm, Viện Cơng Nghệ Thơng Tin, Viện Hàn Lâm Khoa Học Việt Nam, em có hội vận dụng kiến thức học nhà trường kết hợp với kiến thức thu nhận bảo tận tình Thầy Nguyễn Long Giang Viện Công Nghệ Thông Tin, Viện Hàn Lâm Khoa Học Và Công Nghệ Việt Nam quý thầy cô khoa Công nghệ thông tin – Trường Đại Học Tài Nguyên Môi Trường Hà Nội truyền đạt cho em kiến thức quý báu để hoàn thành khóa thực tập giúp đỡ em hồn thành tốt đợt thực tập tốt nghiệp Qua giúp em có kinh nghiệm quý báu cho thân dự định cho tương lai Trong trình thực tập, làm báo cáo thực tập, khó tránh khỏi sai sót, em mong Thầy (Cô) bỏ qua Cũng kinh nghiệm thực tiễn hạn chế nên báo cáo khơng thể tránh khỏi thiếu sót, em mong nhận ý kiến đóng góp Thầy (Cô) để em học thêm nhiều kinh nghiệm để hoàn thành đồ án tốt nghiệp tới Cuối em xin chúc Thầy Nguyễn Long Giag Thầy, Cơ Viện CNTT đồng kính chúc Thầy, Cô Khoa CNTT - Trường Đại Học Tài Nguyên Môi Trường Hà Nội lời chúc sức khoẻ, hạnh phúc thành công nghiệp cao quý thiêng liêng Em xin chân thành cảm ơn! MỤC LỤ MỞ ĐẦU CHƯƠNG I KẾT QUẢ THỰC HIỆN CHUYÊN ĐỀ THỰC TẬP .3 I.Tổng quan Hadoop .3 1.1.Giới thiệu Hadoop .3 1.2.Kiến trúc Hadoop 1.3.Các thành phần Hadoop 1.4.Ứng dụng Hadoop số công ty 1.5.Tổng quan Hadoop cluster .7 1.6.Cơ chế MapReduce 1.7.Mơ hình luồng liệu 2.1.Giới thiệu HDFS .10 2.2.Tổng quan thiết kế HDFS 11 CHƯƠNG KẾT LUẬN 21 TỔNG KẾT 28 TÀI LIỆU THAM KHẢO .29 DANH MỤC HÌNH ẢNH STT Hình Hình Mơ hình Hadoop Hình Kiến trúc tổng thể Hadoop Hình Cấu trúc thành phần Hadoop Hình Kiến trúc Hadoop cluster Hình Sơ đồ luồng liệu Hình Kiến trúc HDFS Hình Sơ đồ trình đọc file HDFS Hình Quá trình tạo ghi liệu file HDFS Hình Cấu trúc mạng tobology mạng MỞ ĐẦU Lý chọn đề tài Mong muốn doanh nghiệp tận dụng liệu khổng lồ để đưa định kinh doanh, Hadoop giúp công ty xử lý khối lượng cỡ terabyte chí petabyte liệu phức tạp tương đối hiệu với chi phí thấp Các doanh nghiệp nỗ lực tìm kiếm thông tin quý giá từ khối lượng lớn liệu phi cấu trúc tạo weblog, công cụ clickstream, sản phẩm truyền thơng xã hội Chính yếu tố dần làm tăng quan tâm đến công nghệ mã nguồn mỡ Hadoop Hadoop dự án phần mềm quản lý liệu Apche với nhân khung phần mềm MapReduce Google, thiết kế để hỗ trợ ứng dụng sử dụng số lượng lớn liệu cấu trúc phi cấu trúc Không giống hệ quản trị sở liệu truyền thống, Hadoop thiết kế để làm việc với nhiều loại liệu liệu nguồn Công nghệ HDFS Hadoop cho phép khối lượng lớn công việc chia thành khối liệu nhỏ nhân rộng phân phối phần cứng cluster để xử lý nhanh Vì để nghiên cứu sâu định chọn đề tài “Xử lý liệu phân tán công nghệ Hadoop ứng dụng” Đối tượng, phạm vi phương pháp thực chuyên đề thực tập 2.1 Đối tượng, phạm vi thực chuyên đề - Đối tượng: Là hệ thống lưu trữ, xử lý liệu phân tán, cơng cụ lập trình hỗ trợ phần mềm mã nguồn mở Có tính linh động, khả chịu lỗi chế chia sẻ tài nguyên thông qua nghien cứu số mã nguồn mở hệ thống quản lý cụm ảo - Thực chuyên đề Viện CNTT, Viện Hàn Lâm KH&CN Việt Nam, thời gian từ ngày 22 thánh 02 năm 2016 đến ngày 22 thánh 04 năm 2016 2.2.Phạm vi nghiên cứu - Đề tài nghiên cứu để xử lý liệu phân tán khối lượng lớn cụm máy tính thơng qua mơ hình lập trình đơn giản 2.3.Phương pháp thực - Thu thập phân tích tài liệu thơng tin, tài liệu liên quan đến đề tài - Nghiên cứu vấn đề liên quan đến xử lý liệu phân tán tảng Hadoop - Lựa chọn phương hướng để giải vấn đề - Triển khai cài đặt Hadoop Ubuntu 14.04.deskop tìm hiểu phần mềm Hadoop ứng dụng - Kiểm tra đánh giá kết Mục tiêu nội dung chuyên đề 3.1.Mục tiêu đề tài - Nghiên cứu phần mềm mã nguồn mở, công cụ, phần mềm hỗ trợ cài đặt Hadoop xử lý phân tán khối liệu lớn nhiều cụm máy tính khác mơ hình lập trình đơn giản Tìm hiểu chọn cơng cụ để phát triển cách hiệu 3.2.Nhiệm vụ chuyên đề - Đề tài tập trung vào nghiên cứu vấn đề sau: + Vấn đề chung cần thiết khối liệu phân tán cần xử lý nhanh gọn + Sự cần thiết để xây dựng phát triển Hadoop để triển khai khối liệu nhanh gọn + Nghiên cứu hệ thống quản lý tập tin gói liệu mã nguồn mở + Quy trình cài đặt xây dựng mơ hình Hadoop CHƯƠNG I KẾT QUẢ THỰC HIỆN CHUYÊN ĐỀ THỰC TẬP I.Tổng quan Hadoop 1.1.Giới thiệu Hadoop Hình 1: Mơ hình Hadoop - Hadoop framework nguồn mở viết Java cho phép phát triển ứng dụng phân tán có cường độ liệu lớn miễn phí Nó cho phép ứng dụng làm việc với hang ngàn node khác hang petabyte lieu Hadoop lấy phát triển dựa ý tưởng từ công bố Google mơn hình MapReduce hệ thống file phân tán Google File System (GFS) + Hadoop framework cho phép phát triển ứng dụng phân tán + Hadoop viết Java Tuy nhiên, nhờ chế streaming, Hadoop cho phép phát triển ứng dụng phân tán java lẫn số ngơn ngữ lập trình khác C++, Python, Pearl + Hadoop cung cấp phương tiện lưu trữ liệu phân tán nhiều node, hỗ trợ tối ưu hố lưu lượng mạng, HDFS HDFS che giấu tất thành phần phân tán, nhà phát triển ứng dụng phân tán nhìn thấy HDFS hệ thống flie cục bình thường + Hadoop giúp nhà phát triển ứng dụng phân tán tập trung tối đa vào phần logic ứng dụng, bỏ qua số phần chi tiết kỹ thuật phân tán bên (phần Hadoop tự động quản lý) + Hadoop chạy môi trường Linux 1.2.Kiến trúc Hadoop Hadoop gồm có nhân Hadoop, nhân cung cấp truy cập tới file hệ thống mà Hadoop hỗ trợ bao gồm: + HDFS: hệ thống tập tin riêng Hadoop Nó thiết kế co giãn tới hàng petabytes lưu trữ chạy file hệ thống hệ điều hành nằm + File hệ thống Amazon S3 + Cloud Store: giống HDFS + FPT Filesystems + Read-only HTTT hệ thống file HTTPS Hệ thống file HDFS lưu trữ tập tin lớn qua nhiều máy tính phức tạp Nó đạt độ tin cậy cách chép liệu nhiều máy chủ Với giá trị chép mặc định, liệu lưu trữ node: rack rack khác Hệ thống file xây dựng từ cụm node liệu, node cung cấp lên khối liệu qua mạng sử dụng giao thức cụ thể tới HDFS Chúng cung cấp liệu qua HTTP, cho phép truy cập tới tất nội dung từ web client Các node liệu giao tiếp với node khác để tái cân liệu, di chuyển vòng quanh, để giữ liệu quan trọng Một filesystem yêu cầu máy chủ nhấ, NameNode Đây điểm khơng thích hợp việc cài đặt HDFS Nếu NameNode tắt, filesystem tắt Khi trở lại NameNode phát lại tất hoạt động bật Q trình phát lại cho cụm lớn Filesystem bao gồm Secondary NameNode, thứ mà làm cho mọt vài người nghĩ NameNode offline, NameNode thứ thay Trong thực tế, Namenode thứ kết nối thường xuyên tới namenode tải chụp thông tin thư mục Namenode chính, mà sau lưu vào thư mục Namenode thứ hai sử dụng với ghi chỉnh sửa Namenode để tạo cấu trúc thư mục cập nhật Hình 2: Kiến trúc tổng thể Hadoop Một hạn chế HDFS khơng thể mount trực tiếp hệ điều hành Lấy liệu vào khỏi hệ thống file HDFS, hoat động cần phải làm trước sau thực xong cơng việc, gây bất tiện Sao chép liệu tốn Để giảm bớt chi phí, phiên HDFS xoá việc hỗ trợ mã hố, theo nhiều khối tập tin kết hợp để tạo khối chẳn lẽ HDFS tạo khối chẳn lẽ khơng đồng sau giảm nhân tố việc chép từ ba xuống hai 1.3.Các thành phần Hadoop Ngày nay, HDFS MapReduce, Hadoop cịn có dự án sau: Hình 3: Cấu trúc thành phần Hadoop - Core: cung cấp công cụ giao diện cho hệ thống phân tán tiện ích - I/O Đây lõi để xây dựng nên HDFS MapReduce MapReduce: framework giúp phát triển ứng dụng phân tán 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 - HDFS: 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ố việc sử dụng bang thơng node HDFS sử - dụng để chạy cluster lớn với hang chục ngàn node HBase: sở liệu phân tán, theo hướng cột (column-oriented) HBase sử dụng HDFS làm hạ tầng cho việc lưu trữ liệu bên dưới, cung cấp khả - tính tốn song song dựa MapReduce Hive: data warehouse phân tán Hive quản lý liệu lưu trữ - HDFS cung cấp ngôn ngữ truy vấn dựa SQL Chukwa: 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 Pig: ngôn ngữ luồng liệu cấp cao framework thực thi dùng cho tính tốn song song 1.4.Ứng dụng Hadoop số cơng ty Ngồi Yahoo, ngày có nhiều cơng ty sử dụng Hadoop công cụ để lưu trữ phân tích liệu khối liệu lớn như: - Twitter: sử dụng Hadoop để xử lý tweets (các viết văn lên đến 140 ký tự hiển thik profile tác giả), logs nguồn liệu phát sinh - trình hoạt động Twitter Facebook: sử dụng Hadoop để lưu trữ log nội kích thích nguồn liệu Các liệu dùng làm nguồn cho báo cáo phân tích máy học Hiện tại, facebook có Hadoop cluter chính: cluster - 1100 máy với 8800 nhân 12 Petabye ổ cứng lưu trữ A9.com – Amazon: sử dụng Hadoop để đánh giá số tìm kiếm sản phẩm Amazon, xử lý đến hang triệu Session ngày Các cluster cuarA9.com có độ lớn từ 1-100 node Và cịn nhiều cơng ty sử dụng Hadoop vào việc lưu trữ xử lý liệu, đặc biệt cho nguồn liệu lớn với kích thước lên tới hàng petabyte 1.5.Tổng quan Hadoop cluster Hadoop cluster có hai thành phần HDFS MapReduce Nhìn chung, 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 sau: Client thực việc đọc block lặp lặp lại block cuối file đọc xong Quá trình client đọc liệu từ HDFS transparent với người dùng chương trình ứng dụng client, người dùng dùng tập API Hadoop để tương tác với HDFS, API che giấu trình liên lạc với Namenode kết nối Datanode để nhận liệu 2.2.4.Quá trình ghi file Hình 8: Quá trình tạo ghi liệu file HDFS Trước tiên, client gửi yêu cầu đến Namenode tạo file entry lên File System Namespace (1) File tạo file rỗng, sau Namenode định danh sách Datanode chứa file cần gửi lại cho client (2) Client chia file cần thành block với block client đóng gói thành packet Mỗi block lưu thành nhiều Datanode khác (tuỳ vào số độ nhân file) Client gửi packet cho Datanode thứ nhất, Datanode thứ sau nhận packet tiến hành lưu lại thứ block Tiếp theo, Datanode thứ gửi packet cho Datanode thứ hai để lưu thứ hai block Cứ vậy, Datanode lưu block hình thành ống dẫn liệu data pile Sau Datanode cuối nhận thành packet, gửi lại cho Datanode thứ hai gói xác nhận lưu thành cơng (4) Và gói thứ hai lại gửi xác nhận tình trạng thành cơng hai Datanode Datanode thứ Nếu có Datanode bị lỗi trình ghi liệu, client tiến hành xác nhận lại Datanode lưu thành công block thực hành vi ghi lại block lên Datanode bị lỗi Sau tất block file ghi lên Datanode, client thực thông điệp báo cho Namenode nhằm cập nhật lại danh sách block file vừa tạo Thông tin từ block ID sang danh sách Datanode lưu trữ Namenode tự động cập nhật định kỳ Datanode gửi báo cáo cho Namenode danh sách block mà quản lý 2.2.5.Block size Trên đĩa cứng, đơn vị lưu trữ liệu nhỏ block Block size đĩa cứng quy định lượng liệu nhỏ mà ta đọc/ghi lên đĩa Các file system đĩa đơn Windown hay Unix sử dụng block đơn vị trao đổi liệu nhỏ nhất, block size file system thường khoảng nhiều lần block size đĩa cứng HDFS chia file thành block block lưu trữ Datanode thành file riêng biệt hệ thống file localhost Đây đơn vị trao đổi liệu nhỏ HDFS client Việc sử dụng block size lớn, tức giảm số lượng block file mang lại số thuận lợi Đầu tiên, làm giảm nhu cầu tương tác với Namenode client đọc/ghi block cần lần tương tác với Namenode client để lấy block ID lưu block Thứ hai, với block size lớn, client phải tương tác với Datanode Mỗi lần client cần đọc block ID Datanode, client phải tạo kết nối TCP/IP đến Datanode Giảm số lượng block cần đọc giảm số lượng kết nối cần tạo, client thường làm việc với kết nối bền vững tạo nhiều kết nối Thứ ba, giảm số lượng block file làm giảm khối lượng metadata Namenode, giúp đưa tồn metadata vào nhớ Mặt khác, việc sử dụng block size lớn dẫn đến việc file nhỏ có vài block, thường có Điều dẫn đến việc Datanode lưu block trở thành điểm nóng có nhiều client truy cập vào file Tuy nhiên, hệ thống HDFS đa phần làm việc file có kích thước lớn với nhiều block nên bất tiện không đáng kể thực tiễn 2.2.6.Metadata Namenode lưu trữ ba loại metadata chính: file system namespace, thông tin ánh xạ filethành block thông tin nơi lưu trữ block Tất metasata lưu trữ nhớ Namenode Hai loại metadata lưu trữ bền vũng cách ghi nhật ký thay đổi vào EditLog FsImage lưu trữ hẹ thống file localhost Namenode Việc sử dụng nhật ký để lưu trữ thay đổi metadata giúp cho thay đổi trạng thái metadata cách thuận tiện Namenode hỏi Datanode thông tin block mà lưu trữ Datanode tham gia vào cluster Cấu trúc liệu lưu nhớ: Vì cấu trúc liệu lưu nhớ nên thao tác Namenode nhanh Hơn nữa, điều làm cho việc toàn metadata diễn cách dễ dàng Việc scan định kỳ dùng để cài đặt tính thu nhặt rác câng khối lượng liệu lưu trữ Datanode Một bất lợi việc lưu trữ toàn metadata số lượng block clust bị giới hạn chung lượng nhớ Namenode Vị trí lưu block NameNode không lưu trữ bền vững thông tin nơi lưu trữ block Nó hỏi DataNode thơng tin lúc DataNode khởi động NameNode giữ cho thông tin nơi lưu trữ block đươc cập nhật điều đơn giản: NameNode điều khiển tất thao tác đặt block lên DataNode quản lý tình trạng DataNode thơng điệp HearBeat Nhật ký thao tác EditLog chứa tất nhật ký thao tác làm thay đổi tình trạng metadata Ví dụ việc tạo file HDFS làm cho NameNode thêm record vào EditLog ghi nhận hành động tạo file Hoặc việc thay đổi số độ chép (replication level) file tạo EditLog record Vì EditLog quan trọng nên ta phải lưu ghi liệu cách tin cậy xuống EditLog không cho client thấy thay đổi hệ thống thay đổi cập nhật lên metadata ghi nhật ký bền vững xuống EditLog EditLog lưu trữ file hệ thống file cục NameNode EditLog đ ược dùng q trình phục hồi hệ thống với SecondaryNameNode Tồn File System Namespace thông tin ánh xạ từ file thành block lưu trữ file tên FsImage hệ thống file cục NameNode 2.2.7.Các tính NameNode Nhận biết cấu trúc tobology mạng Trong bối cảnh xử lý liệu với kích thước lớn qua mơi trường mạng, việc nhận biết giới hạn băng thông node yếu tố quan trọng để Hadoop đưa định việc phân bố liệu phân tán tính tốn Ý tưởng đo băng thơng hai node hợp lý, nhiên làm điều khó khăn (vì 30 việc đo băng thông mạng cần thực mơi trường “n tĩnh”, tức thời điểm đo không xảy việc trao đổi liệu qua mạng) Vì vậy, Hadoop sử dụng cấu trúc topology mạng cluster để định lượng khả truyền tải liệu hai node bất kỳ.Hadoop nhận biết cấu trúc topology mạng cluster qua cấu trúc phân cấp Cấu trúc giúp Hadoop nhận biết “khoảng cách” hai node cluster Trên cấu trúc phân cấp này, bridge đóng vai trị “node trong” để phân chia mạng thành mạng (subnet) node có node cha (cùng nằm mạng con) xem “nằm rack” Hadoop đưa khái niệm “địa mạng” để xác định vị trí tương đối node “Địa mạng” node đường dẫn từ node gốc đến node xác định Ví dụ địa mạng Node hình bên /Swicth 1/Rack 1/ Node 1.Hadoop tính tốn “khoảng cách” hai node đơn giản tổng khoảng cách node đến node cha chung gần Ví dụ theo hình bên dưới, khoảng cách Node Node 2, khoảng cách Node Node Hình 9: Cấu trúc tobology mạng Hadoop đưa số giả định sau rack:  Băng thông giảm dần theo thứ tự sau Các tiến trình node Các node khác rack Các node nằm không nằm rack  Hai node có “khoảng cách” gần có băng thơng hai node lớn Giả định khẳng định lại giả định  Khả hai node nằm rack bị lỗi (death) cao so với hai node nằm hai rack khác Điều ứng dụng NameNode thực đặt cho block xuống DataNode Sắp xếp block lên DataNode Trên HDFS, file chia thành nhiều block, block lưu trữ thành N N DataNode khác nhau, N gọi số mức độ chép (replication level) Với file HDFS, ta quy định số replication level khác Chỉ số cao file “an tồn” Do block file lưu trữ nhiều DataNode khác Cân cluster Theo thời gian phân bố block liệu DataNode trở nên cân đối, số node lưu trữ nhiều block liệu số node khác lại Một cluster bị cân ảnh hưởng tới tối ưu hoá MapReduce tạo áp lực lên DataNode lưu trữ nhiều block liệu (lưu lượng truy cập từ client, dung lượng lưu trữ lớn) Thu nhặt rác (Gabage collection) Sau file HDFS bị delete người dùng ứng dụng, khơng bị xố bỏ khỏi HDFS Thay vào đó, HDFS đổi tên (name) lại thành file thư mục rác có tên /trash Các tập tin phục hồi nhanh chóng cịn thư mục rác Sau thời hạn (chúng ta cấu hình thời hạn lại), NameNode thực xố file thư mục rác Việc xoá file kèm theo việc block thuộc file thực bị xố DataNode.Một người dùng lấy lại tập tin bị xoá cách vào thư mục /trash di chuyển ra, miễn chưa thực bị xoá khỏi /trash 2.2.8.Khả chịu lỗi chuẩn đoán lỗi HDFS Khả phục hồi nhanh chóng Các NameNode DataNode thiết kế để phục hồi nhanh chóng Trong trường hợp NameNode ngừng hoạt động, ta cần phục hồi lại NameNode mà không cần phải restart tất DataNode Sau NameNode phục hồi tự động liên lạc lại với DataNode hệ thống lại phục hồi (thực chất NameNode đứng yên lắng nghe HeartBeat từ DataNode) Nếu DataNode bị ngừng hoạt động, ta cần khởi động lại DataNode tự động liên lạc với NameNode thơng qua HeartBeat để cập nhật lại tình trạng NameNode Sao chép block Mỗi block liệu HDFS lưu trữ trùng lắp DataNode khác thuộc rack khác Người dùng (hoặc ứng dụng) gán số mức độ nhân (replication level) khác cho file khác nhau, tuỳ vào mức độ quan trọng file đó, số mặc định ba Nhờ vậy, hay số DataNode bị ngừng hoạt động, ta cịn block CHƯƠNG KẾT LUẬN CÀI ĐẶT HADOOP Download: Ubuntu 14.4 (64bit) Hadoop-2.2.0 Java vesion 1.Cài đặt Javar: Để kiểm tra máy tính cá nhân cài đặt Java hay chưa bạn vào Terminal Ubuntu gõ câu lệnh sau: ubuntu1@BigDataContemi1-PC:~$ java -version - Nếu bạn không nhận kết trả trả sau có nghĩa máy bạn chưa cài đặt Java - Để cài đặt Java bạn gõ câu lệnh sau: ubuntu1@BigDataContemi1-PC:~$ sudo apt-get install openjdk-6-jdk Và máy cài xong hiển thị hình vẽ: 2.Cài đặt SSH: Để cài đặt OpenSSH bạn gõ câu lệnh sau: ubuntu1@BigDataContemi1-PC:~$ sudo apt-get install openssh-server 3.Tạo người dùng riêng: Ý nghĩa việc tạo người dùng riêng cho việc sử dụng Hadoop Ubuntu để dễ dàng quản lý Các bạn gõ câu lệnh sau: ubuntu1@BigDataContemi1-PC:~$ sudo addgroup hadoop Gõ lệnh cài đặt thành công: ubuntu1@BigDataContemi1-PC:~$ sudo adduser ingroup hadoop hduser 4.Cấu hình SSH: Hadoop sử dụng giao thức bảo mật SSH để quản lý công việc Với việc cài đặt Hadoop máy đơn ta tiến hành cấu hình SSH sau: ubuntu1@BigDataContemi1-PC:~$ su - hduser hduser@BigDataContemi1-PC:~$ ssh-keygen –t rsa –P "" Bạn cần nhấn phím Enter máy yêu cầu bạn nhập thông tin Tiếp theo: hduser@BigDataContemi1-PC:~$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authrized_keys hduser@BigDataContemi1-PC:~$ ssh localhost Nếu bạn nhận kết sau có nghĩa bạn cấu hình SSH thành công 5.Cài đặt Hadoop: Các bạn dowload phiên hadoop-2.2.0 giải nén vào đường dẫn /usr/local/ Chi tiết cài đặt sau: ubuntu1@BigDataContemi1-PC:~$ sudo tar vxzf Download/hadoop1.2.1.tar.gz -C /usr/local/ ubuntu1@BigDataContemi1-PC:~$ sudo mv /usr/local/hadoop1.2.1 /usr/local/hadoop ubuntu1@BigDataContemi1-PC:~$ sudo chown -R hduser:hadoop /usr/local/hadoop Sau thực câu lệnh bên ta kiểm tra lại kết câu lệnh: ubuntu1@BigDataContemi1-PC:~$ ls -l /usr/local/ Nếu kết trả hình bạn cài đặt thành cơng bước 6.Cấu hình Hadoop: Đầu tiên, cần phải chỉnh sửa lại file bashrc.sh Các bạn dùng ứng dụng để chỉnh sửa file bashrc.sh, dùng vim hduser@BigdatContemi1-PC:~$ vim bashrc Các bạn thêm dòng lệnh vào cuối file Bạn dùng hệ điều hành 32 bit, thay gõ java-6-openjdk-amd64 gõ java-6-openjdk-i386 export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64 export HADOOP_HOME=/usr/local/hadoop/ export PATH=$PATH:$HADOOP_HOME/bin Tiếp theo, chỉnh sửa lại file hadoop-env.sh Trong file ta cần sửa lại đường dẫn JAVA_HOME hduser@BigDataContemi1-PC:~$ vim /usr/local/hadoop/conf/hadoop-env.sh export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64 export HADOOP_OPTS=-Djava.net.preferIPv4Stack=true Tiếp theo, chỉnh sửa lại file *-site.xml Trước sửa file *-site.xml ta cần thực số thao tác sau ubuntu1@BigDataContemi1-PC:~$ sudo mkdir -p /app/hadoop/tmp/ ubuntu1@BigDataContemi1-PC:~$ sudo chown hduser:hadoop /app/hadoop/tmp/ ubuntu1@BigDataContemi1-PC:~$ sudo chmod 750 /app/hadoop/tmp/ File core-site.xml, file có đường dẫn /usr/local/hadoop/conf/core-site.xml hadoop.tmp.dir /app/hadoop/tmp/ fs.default.name hdfs://localhost:9000 File mapred-site.xml, file có đường dẫn /usr/local/hadoop/conf/mapred-site.xml mapred.job.tracker localhost:9001 File hdfs-site.xml, file có đường dẫn /usr/local/hadoop/conf/hdfs-site.xml dfs.replication 1 Sau sửa nội dung file vừa nêu trên, ta format lại file hệ thống HDFS Hadoop hduser@BigDataContemi1-PC:~$ /usr/local/hadoop/bin/hadoop namenode -format Để kiểm tra trình cài đặt có thành cơng hay khơng ta thực lệnh sau hduser@BigDataContemi1-PC:/usr/local/hadoop$ bin/start-all.sh\ hduser@BigDataContemi1-PC:/usr/local/hadoop$ jps Nếu kết trả sau cài đặt thành cơng TỔNG KẾT Qua q trình nghiên cứu báo cáo tìm hiểu hệ sở liệu phân tán cho thấy Hadoop framework cho phép người dùng nhanh chóng viết kiểm tra hệ thống phân tán Đây hiệu cho phép phân phối liệu công việc xuyên suốt máy trạm nhờ vào chế sử lý song song lõi CPU Đi sâu tìm hiểu cấu trúc , cách thức hoạt động chế quản lý tệp tin HDFS Các server thêm vào gỡ bỏ từ cluster cách linh hoạt hoạt động mà không bị ngắt quãng Ngồi mã nguồn mở khả tương thích tất tảng phát triển Java Bài báo cáo em không tránh khỏi thiếu sót Rất mong Thầy Cơ thơng cảm Em xin chân thành cảm ơn! TÀI LIỆU THAM KHẢO https://www.linkedin.com/ http://doan.edu.vn/ https://www.cloudera.com/ https://www.ibm.com https://cloud.google.com http://hadoop.apache.org/ http://en.wikipedia.org/wiki/hadoop TS Nguyễn Bá Tường Lý thuyết liệu phân tán M.Tamer Ozsu, Patrick Valduriez Nguyên lý hệ sở liệu phân tán… ... file lớn so với chuẩn truyền thống, file có kích thước hàng KB, chí hệ thống có hỗ trợ Điều quan trọng việc phân chia tập liệu thành số lượng file có kích thước lớn tối ưu Hai tác dụng to lớn. .. kích thước tập liệu vượt khả lưu trữ áy tính, tất yếu dẫn đến cầu phân chia liệu lên nhiều máy tính Các hệ thống tập tin quản lý việc lưu trữ liệu mạng nhiều máy tính gọi hệ thống tập tin phân... bảng liệu lớn đặt cụm máy tính Framework lấy ý tưởng từ Map giảm hàm thường sử dụng lập trình chức MapReduce dùng cho xử lý bảng liệu khổng lồ số nhóm vấn đề phân hối sử dụng số lượng lớn máy tính

Ngày đăng: 28/12/2021, 10:11

Hình ảnh liên quan

Hình 1: Mô hình về Hadoop - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 1.

Mô hình về Hadoop Xem tại trang 7 của tài liệu.
Hình 3: Cấu trúc các thành phần của Hadoop - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 3.

Cấu trúc các thành phần của Hadoop Xem tại trang 9 của tài liệu.
Hình 2: Kiến trúc tổng thể của Hadoop - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 2.

Kiến trúc tổng thể của Hadoop Xem tại trang 9 của tài liệu.
Hình 4: Kiến trúc của Hadoop cluster - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 4.

Kiến trúc của Hadoop cluster Xem tại trang 11 của tài liệu.
Hình 5: Sơ đồ luồng dữ liệu - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 5.

Sơ đồ luồng dữ liệu Xem tại trang 13 của tài liệu.
Hình 6: Kiến trúc của HDFS - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 6.

Kiến trúc của HDFS Xem tại trang 17 của tài liệu.
Hình 7: Sơ đồ quá trình đọc file trên HDFS - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 7.

Sơ đồ quá trình đọc file trên HDFS Xem tại trang 18 của tài liệu.
Hình 8: Quá trình tạo và ghi dữ liệu trên file của HDFS - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 8.

Quá trình tạo và ghi dữ liệu trên file của HDFS Xem tại trang 19 của tài liệu.
Hình 9: Cấu trúc tobology mạng - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

Hình 9.

Cấu trúc tobology mạng Xem tại trang 23 của tài liệu.
- Nếu bạn không nhận được kết trả trả về trên màn hình như sau thì có nghĩa là máy bạn chưa cài đặt Java - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

u.

bạn không nhận được kết trả trả về trên màn hình như sau thì có nghĩa là máy bạn chưa cài đặt Java Xem tại trang 25 của tài liệu.
việc cài đặt Hadoop trên một máy đơn thì ta tiến hành cấu hình SSH như sau: - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

vi.

ệc cài đặt Hadoop trên một máy đơn thì ta tiến hành cấu hình SSH như sau: Xem tại trang 27 của tài liệu.
4.Cấu hình SSH: Hadoop sử dụng giao thức bảo mật SSH để quản lý công việc. Với - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

4..

Cấu hình SSH: Hadoop sử dụng giao thức bảo mật SSH để quản lý công việc. Với Xem tại trang 27 của tài liệu.
Nếu bạn nhận được kết quả như sau thì có nghĩa là bạn đã cấu hình SSH thành công. - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

u.

bạn nhận được kết quả như sau thì có nghĩa là bạn đã cấu hình SSH thành công Xem tại trang 28 của tài liệu.
Nếu như kết quả trả về như hình dưới đây thì bạn đã cài đặt thành công bước này - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

u.

như kết quả trả về như hình dưới đây thì bạn đã cài đặt thành công bước này Xem tại trang 29 của tài liệu.
6.Cấu hình Hadoop: Đầu tiên, chúng ta cần phải chỉnh sửa lại file bashrc.sh. Các bạn - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

6..

Cấu hình Hadoop: Đầu tiên, chúng ta cần phải chỉnh sửa lại file bashrc.sh. Các bạn Xem tại trang 29 của tài liệu.
Nếu kết quả trả ra màn hình như sau thì cài đặt đã thành công - Xử lý dữ liệu phân tán bằngcông nghệ Hadoop và ứng dụng

u.

kết quả trả ra màn hình như sau thì cài đặt đã thành công Xem tại trang 31 của tài liệu.

Từ khóa liên quan

Mục lục

  • LỜI CẢM ƠN

  • MỞ ĐẦU

    • 1. Lý do chọn đề tài

    • 2. Đối tượng, phạm vi và phương pháp thực hiện chuyên đề thực tập

    • 2.1. Đối tượng, phạm vi thực hiện chuyên đề

      • 2.2.Phạm vi nghiên cứu

      • - Đề tài được nghiên cứu để xử lý dữ liệu phân tán khối lượng lớn trên các cụm máy tính thông qua mô hình lập trình đơn giản.

      • 2.3.Phương pháp thực hiện

      • - Thu thập và phân tích tài liệu thông tin, tài liệu liên quan đến đề tài

      • - Nghiên cứu các vấn đề liên quan đến xử lý dữ liệu phân tán trên nền tảng Hadoop.

      • - Lựa chọn phương hướng đúng để giải quyết vấn đề

      • - Triển khai cài đặt Hadoop trên Ubuntu 14.04.deskop và tìm hiểu các phần mềm được Hadoop ứng dụng.

      • - Kiểm tra đánh giá kết quả.

      • 3. Mục tiêu và nội dung chuyên đề 3.1.Mục tiêu của đề tài - Nghiên cứu về phần mềm mã nguồn mở, các công cụ, phần mềm hỗ trợ cài đặt Hadoop và xử lý phân tán khối dữ liệu lớn trên nhiều cụm máy tính khác nhau bằng mô hình lập trình đơn giản. Tìm hiểu và chọn những công cụ để phát triển một cách hiệu quả nhất.

      • CHƯƠNG I. KẾT QUẢ THỰC HIỆN CHUYÊN ĐỀ THỰC TẬP

        • I.Tổng quan về Hadoop

        • 1.1.Giới thiệu về Hadoop

        • 1.2.Kiến trúc của Hadoop

        • 1.3.Các thành phần của Hadoop

        • 1.4.Ứng dụng của Hadoop trong một số công ty

        • 1.5.Tổng quan của một Hadoop cluster

        • 1.6.Cơ chế MapReduce MapReduce là một framework đùng để hỗ trợ các máy tính phân tán trên các bảng dữ liệu lớn đặt trên các cụm máy tính.

        • 1.7.Mô hình luồng dữ liệu

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

Tài liệu liên quan