Hướng dẫn HDFS: Giới thiệu về HDFS và các tính năng của nó



Blog Hướng dẫn HDFS này sẽ giúp bạn hiểu Hệ thống tệp phân tán HDFS hoặc Hadoop và các tính năng của nó. Bạn cũng sẽ khám phá tóm tắt các thành phần cốt lõi của nó.

Hướng dẫn HDFS

Trước khi tiếp tục trong blog hướng dẫn HDFS này, hãy để tôi đưa bạn qua một số thống kê điên rồ liên quan đến HDFS:

  • Trong năm 2010, Facebook tuyên bố có một trong những cụm HDFS lớn nhất lưu trữ 21 Petabyte Dữ liệu.
  • Vào năm 2012, Facebook tuyên bố rằng họ có cụm HDFS đơn lẻ lớn nhất với hơn 100 PB Dữ liệu .
  • Yahoo ! Có nhiều hơn 100.000 CPU hết 40.000 máy chủ đang chạy Hadoop, với cụm Hadoop lớn nhất đang chạy 4.500 nút . Tất cả đã nói, Yahoo! cửa hàng 455 petabyte dữ liệu trong HDFS.
  • Trên thực tế, đến năm 2013, hầu hết các tên tuổi lớn trong Fortune 50 đều bắt đầu sử dụng Hadoop.

Quá khó để tiêu hóa? Đúng. Như đã thảo luận trong , Hadoop có hai đơn vị cơ bản - S giận dữ Chế biến . Khi tôi nói phần lưu trữ của Hadoop, tôi đang nói đến HDFS Viết tắt của Hệ thống tệp phân tán Hadoop . Vì vậy, trong blog này, tôi sẽ giới thiệu với bạn HDFS .





Ở đây, tôi sẽ nói về:

khác nhau giữa cuối cùng cuối cùng và cuối cùng
  • HDFS là gì?
  • Ưu điểm của HDFS
  • Các tính năng của HDFS

Trước khi nói về HDFS, hãy để tôi cho bạn biết, Hệ thống tệp phân tán là gì?



DFS hoặc Hệ thống tệp phân tán:

Hệ thống tệp phân tán nói về quản lý dữ liệu , I E. tệp hoặc thư mục trên nhiều máy tính hoặc máy chủ. Nói cách khác, DFS là một hệ thống tệp cho phép chúng ta lưu trữ dữ liệu qua nhiều nút hoặc máy trong một cụm và cho phép nhiều người dùng truy cập dữ liệu. Vì vậy, về cơ bản, nó phục vụ cùng mục đích với hệ thống tệp có sẵn trong máy của bạn, như đối với windows bạn có NTFS (Hệ thống tệp công nghệ mới) hoặc đối với Mac, bạn có HFS (Hệ thống tệp phân cấp). Sự khác biệt duy nhất là, trong trường hợp Hệ thống tệp phân tán, bạn lưu trữ dữ liệu trong nhiều máy hơn là một máy. Mặc dù các tệp được lưu trữ trên mạng, DFS tổ chức và hiển thị dữ liệu theo cách mà người dùng ngồi trên máy sẽ cảm thấy như tất cả dữ liệu được lưu trữ trong chính máy đó.

HDFS là gì?

Hadoop Hệ thống tệp phân tán hoặc HDFS là một hệ thống tệp phân tán dựa trên Java cho phép bạn lưu trữ dữ liệu lớn trên nhiều nút trong một cụm Hadoop. Vì vậy, nếu bạn cài đặt Hadoop, bạn sẽ nhận được HDFS làm hệ thống lưu trữ cơ bản để lưu trữ dữ liệu trong môi trường phân tán.

Hãy lấy một ví dụ để hiểu nó. Hãy tưởng tượng rằng bạn có mười máy hoặc mười máy tính với ổ cứng 1 TB trên mỗi máy. Bây giờ, HDFS nói rằng nếu bạn cài đặt Hadoop làm nền tảng trên mười máy này, bạn sẽ nhận được HDFS làm dịch vụ lưu trữ. Hệ thống tệp phân tán Hadoop được phân phối theo cách mà mọi máy đóng góp bộ nhớ riêng để lưu trữ bất kỳ loại dữ liệu nào.



Hướng dẫn HDFS: Ưu điểm của HDFS

1. Lưu trữ phân tán:

Lưu trữ phân tán - Hướng dẫn HDFS - Edureka

Khi bạn truy cập Hệ thống tệp phân tán Hadoop từ bất kỳ máy nào trong số mười máy trong cụm Hadoop, bạn sẽ cảm thấy như thể bạn đã đăng nhập vào một máy lớn duy nhất có dung lượng lưu trữ 10 TB (tổng dung lượng lưu trữ trên mười máy). Nó có nghĩa là gì? Nó có nghĩa là bạn có thể lưu trữ một tệp lớn 10 TB sẽ được phân phối trên mười máy (mỗi máy 1 TB).Nên nó là không giới hạn trong các ranh giới vật lý của từng máy riêng lẻ.

2. Tính toán phân tán & song song:

Bởi vì dữ liệu được phân chia trên các máy, nó cho phép chúng tôi tận dụng Tính toán phân tán và song song . Hãy hiểu khái niệm này bằng ví dụ trên. Giả sử, mất 43 phút để xử lý 1 TB tệp trên một máy. Vì vậy, bây giờ cho tôi biết, sẽ mất bao nhiêu thời gian để xử lý cùng một tệp 1 TB khi bạn có 10 máy trong một cụm Hadoop có cấu hình tương tự - 43 phút hay 4,3 phút? 4,3 phút, Đúng! Điều gì đã xảy ra ở đây? Mỗi nút đang làm việc với một phần của tệp 1 TB song song. Do đó, công việc trước đây mất 43 phút, giờ đã hoàn thành chỉ trong 4,3 phút khi công việc được chia cho hơn mười máy.

3. Khả năng mở rộng theo chiều ngang:

là một có một java

Cuối cùng nhưng không kém phần quan trọng, hãy cùng chúng tôi xác định chia tỷ lệ ngang hoặc là Mở rộng ra trong Hadoop. Có hai loại tỷ lệ: theo chiều dọcngang . Trong quy mô theo chiều dọc (scale up), bạn tăng dung lượng phần cứng của hệ thống. Nói cách khác, bạn mua thêm RAM hoặc CPU và thêm nó vào hệ thống hiện có của mình để làm cho nó mạnh mẽ và mạnh mẽ hơn. Nhưng có những thách thức liên quan đến việc mở rộng quy mô theo chiều dọc hoặc mở rộng quy mô:

  • Luôn có giới hạn mà bạn có thể tăng dung lượng phần cứng của mình. Vì vậy, bạn không thể tiếp tục tăng RAM hoặc CPU của máy.
  • Trong chia tỷ lệ dọc, bạn dừng máy trước. Sau đó, bạn tăng RAM hoặc CPU để làm cho nó trở thành một ngăn xếp phần cứng mạnh mẽ hơn. Sau khi đã tăng dung lượng phần cứng, bạn khởi động lại máy. Thời gian ngừng hoạt động khi bạn dừng hệ thống của mình sẽ trở thành một thách thức.

Trong trường hợp chia tỷ lệ ngang (mở rộng quy mô) , bạn thêm nhiều nút hơn vào cụm hiện có thay vì tăng dung lượng phần cứng của từng máy. Và quan trọng nhất, bạn có thể thêm nhiều máy hơn khi đang di chuyển tức là không dừng hệ thống . Do đó, trong khi mở rộng quy mô, chúng tôi không có bất kỳ thời gian nào hoặc vùng xanh, không có loại nào như vậy. Vào cuối ngày, bạn sẽ có thêm máy móc hoạt động song song để đáp ứng yêu cầu của bạn.

Video hướng dẫn HDFS:

Bạn có thể xem video dưới đây, nơi tất cả các khái niệm liên quan đến HDFS đã được thảo luận chi tiết:

Hướng dẫn HDFS: Các tính năng của HDFS

Chúng tôi sẽ hiểu chi tiết các tính năng này khi chúng tôi khám phá Kiến trúc HDFS trong blog hướng dẫn HDFS tiếp theo của chúng tôi. Tuy nhiên, bây giờ, hãy cùng xem tổng quan về các tính năng của HDFS:

có các phương thức của lớp máy quét cho phép bạn
  • Giá cả: Nói chung, HDFS được triển khai trên một phần cứng hàng hóa như máy tính để bàn / máy tính xách tay mà bạn sử dụng hàng ngày. Vì vậy, rất tiết kiệm về chi phí sở hữu công trình. Vì chúng tôi đang sử dụng phần cứng hàng hóa chi phí thấp, bạn không cần phải chi số tiền lớn để mở rộng cụm Hadoop của mình. Nói cách khác, thêm nhiều nút hơn vào HDFS của bạn sẽ hiệu quả về chi phí.
  • Đa dạng và Khối lượng Dữ liệu: Khi chúng ta nói về HDFS thì chúng ta sẽ nói đến việc lưu trữ dữ liệu khổng lồ, tức là hàng Terabyte & petabyte dữ liệu và các loại dữ liệu khác nhau. Vì vậy, bạn có thể lưu trữ bất kỳ loại dữ liệu nào vào HDFS, có thể là có cấu trúc, không có cấu trúc hoặc bán cấu trúc.
  • Độ tin cậy và khả năng chịu lỗi: Khi bạn lưu trữ dữ liệu trên HDFS, nó sẽ phân chia nội bộ dữ liệu đã cho thành các khối dữ liệu và lưu trữ nó theo kiểu phân tán trên cụm Hadoop của bạn. Thông tin liên quan đến khối dữ liệu nằm trên nút dữ liệu nào được ghi lại trong siêu dữ liệu. NameNode quản lý dữ liệu meta và Mã dữ liệu chịu trách nhiệm lưu trữ dữ liệu.
    Nút tên cũng sao chép dữ liệu, tức là duy trì nhiều bản sao của dữ liệu. Việc nhân rộng dữ liệu này làm cho HDFS rất đáng tin cậy và có khả năng chịu lỗi. Vì vậy, ngay cả khi bất kỳ nút nào bị lỗi, chúng ta có thể lấy dữ liệu từ các bản sao nằm trên các nút dữ liệu khác. Theo mặc định, hệ số sao chép là 3. Do đó, nếu bạn lưu trữ 1 GB tệp trong HDFS, cuối cùng nó sẽ chiếm 3 GB dung lượng. Nút tên cập nhật định kỳ siêu dữ liệu và duy trì yếu tố sao chép nhất quán.
  • Toàn vẹn dữ liệu: Tính toàn vẹn dữ liệu nói về việc dữ liệu được lưu trữ trong HDFS của tôi có chính xác hay không. HDFS liên tục kiểm tra tính toàn vẹn của dữ liệu được lưu trữ dựa trên tổng kiểm tra của nó. Nếu nó tìm thấy bất kỳ lỗi nào, nó sẽ báo cáo cho nút tên về nó. Sau đó, nút tên tạo thêm các bản sao mới và do đó xóa các bản sao bị hỏng.
  • Thông lượng cao: Thông lượng là lượng công việc được thực hiện trong một đơn vị thời gian. Nó nói về tốc độ bạn có thể truy cập dữ liệu từ hệ thống tệp. Về cơ bản, nó cung cấp cho bạn một cái nhìn sâu sắc về hiệu suất hệ thống. Như bạn đã thấy trong ví dụ trên, chúng tôi sử dụng chung mười máy để nâng cao khả năng tính toán. Ở đó, chúng tôi có thể giảm thời gian xử lý từ 43 phút đơn thuần 4.3 phút vì tất cả các máy đều hoạt động song song. Do đó, bằng cách xử lý dữ liệu song song, chúng tôi đã giảm thời gian xử lý rất nhiều và do đó, đạt được thông lượng cao.
  • Vị trí dữ liệu: Vị trí dữ liệu nói về việc chuyển đơn vị xử lý sang dữ liệu thay vì dữ liệu đến đơn vị xử lý. Trong hệ thống truyền thống của chúng tôi, chúng tôi thường đưa dữ liệu đến lớp ứng dụng và sau đó xử lý nó. Nhưng hiện tại, do kiến ​​trúc và khối lượng dữ liệu khổng lồ, việc đưa dữ liệu đến lớp ứng dụng sẽgiảm hiệu suất mạng đến một mức độ đáng chú ý.Vì vậy, trong HDFS, chúng tôi đưa phần tính toán đến các nút dữ liệu nơi dữ liệu đang cư trú. Do đó, bạn không di chuyển dữ liệu, bạn đang đưa chương trình hoặc quy trìnhnhập một phần vào dữ liệu.

Vì vậy, bây giờ, bạn đã có một ý tưởng ngắn gọn về HDFS và các tính năng của nó. Nhưng tin tôi đi các bạn, đây chỉ là phần nổi của tảng băng chìm. Trong tiếp theo của tôi , Tôi sẽ đi sâu vào Kiến trúc HDFS và tôi sẽ tiết lộ những bí mật đằng sau sự thành công của HDFS. Chúng ta sẽ cùng nhau trả lời tất cả những câu hỏi mà bạn đang đắn đo trong đầu chẳng hạn như:

  • Điều gì xảy ra đằng sau hậu trường khi bạn đọc hoặc ghi dữ liệu trong Hệ thống tệp phân tán Hadoop?
  • Các thuật toán như nhận thức về giá đỡ làm cho HDFS có khả năng chịu lỗi là gì?
  • Hệ thống tệp phân tán Hadoop quản lý và tạo bản sao như thế nào?
  • Các hoạt động khối là gì?

Bây giờ bạn đã hiểu HDFS và các tính năng của nó, hãy xem của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu. Khóa đào tạo Chứng chỉ Edureka Big Data Hadoop giúp người học trở thành chuyên gia trong lĩnh vực HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume và Sqoop bằng các trường hợp sử dụng thời gian thực trên miền Bán lẻ, Truyền thông xã hội, Hàng không, Du lịch, Tài chính.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần bình luận và chúng tôi sẽ liên hệ lại với bạn.