Trang Chủ Tài chính Cá nhân ĐăNg nhập Dữ liệu với Flume trong HDFS - núm vú

ĐăNg nhập Dữ liệu với Flume trong HDFS - núm vú

Video: Cô Gái Tiên Nữ Anime 2x Cực Hay Tình Cảm Một Thời Của Cộng Đồng Anime [DTH - OTAKU] 2025

Video: Cô Gái Tiên Nữ Anime 2x Cực Hay Tình Cảm Một Thời Của Cộng Đồng Anime [DTH - OTAKU] 2025
Anonim

Một số dữ liệu kết thúc trong Hệ thống tệp phân tán Hadoop (HDFS) có thể tải xuống qua các hoạt động tải cơ sở dữ liệu hoặc các loại quy trình theo lô, nếu bạn muốn nắm bắt dữ liệu đang chảy trong luồng dữ liệu thông lượng cao, chẳng hạn như dữ liệu nhật ký ứng dụng? Apache Flume là cách tiêu chuẩn hiện tại để làm điều đó một cách dễ dàng, hiệu quả và an toàn.

Apache Flume , một dự án cấp cao khác từ Apache Software Foundation, là một hệ thống phân phối để tập hợp và di chuyển số lượng lớn dữ liệu phát trực tuyến từ các nguồn khác nhau sang một kho dữ liệu tập trung.

Nói cách khác, Flume được thiết kế để tiếp tục nhập dữ liệu vào HDFS. Dữ liệu có thể là bất kỳ loại dữ liệu nào, nhưng Flume đặc biệt phù hợp để xử lý dữ liệu nhật ký, chẳng hạn như dữ liệu nhật ký từ các máy chủ web. Các đơn vị dữ liệu mà các quy trình Flume được gọi là sự kiện ; một ví dụ của sự kiện là một bản ghi.

Để hiểu Flume hoạt động như thế nào trong một cụm Hadoop, bạn cần phải biết rằng Flume chạy như một hoặc nhiều agent, và mỗi agent có ba thành phần có khả năng cắm là: các nguồn, các kênh và các bồn rửa:

  • Nguồn lấy dữ liệu và gửi nó đến các kênh.

  • Kênh giữ hàng đợi dữ liệu và đóng vai trò như các ống dẫn giữa các nguồn và bồn rửa, hữu ích khi tỷ lệ dòng chảy đến vượt quá tốc độ dòng chảy đi.

  • Chìm xử lý dữ liệu được lấy từ các kênh và phân phối đến đích, chẳng hạn như HDFS.

Một đại lý phải có ít nhất một thành phần để chạy, và mỗi agent được chứa trong một ví dụ riêng của nó là Java Virtual Machine (JVM).

Một sự kiện được ghi vào kênh theo nguồn không bị xóa khỏi kênh đó cho đến khi một bồn rửa sẽ loại bỏ nó bằng cách giao dịch. Nếu một mạng thất bại xảy ra, các kênh giữ các sự kiện của họ xếp hàng đợi cho đến khi bồn rửa có thể ghi chúng vào cluster. Một kênh trong bộ nhớ có thể xử lý các sự kiện nhanh chóng, nhưng nó không ổn định và không thể phục hồi, trong khi một kênh dựa trên tệp cung cấp tính bền bỉ và có thể phục hồi được trong trường hợp thất bại.

Mỗi đại lý có thể có nhiều nguồn, kênh và bồn rửa, và mặc dù một nguồn có thể ghi vào nhiều kênh, một bồn rửa chén có thể lấy dữ liệu từ chỉ một kênh.

Một đại lý chỉ là một JVM đang chạy Flume và các bồn chứa cho mỗi nút đại lý trong cụm Hadoop gửi dữ liệu tới các nút thu, tổng hợp dữ liệu từ nhiều đại lý trước viết nó lên HDFS, nơi nó có thể được phân tích bởi các công cụ Hadoop khác. Các đại lý có thể được nối liền với nhau để bồn rửa từ một đại lý gửi dữ liệu đến nguồn từ một đại lý khác.Avro, khuôn khổ gọi và nối tiếp từ xa của Apache, là cách thông thường để gửi dữ liệu qua mạng với Flume, bởi vì nó phục vụ như một công cụ hữu ích cho việc tuần tự hóa hay chuyển đổi dữ liệu thành một định dạng nhị phân nhỏ gọn. Trong ngữ cảnh của Flume, sự tương thích rất quan trọng: Một sự kiện Avro đòi hỏi một nguồn Avro, ví dụ và một bồn rửa chén phải cung cấp các sự kiện phù hợp với điểm đến.

Điều gì làm cho chuỗi nguồn, kênh và bồn rửa này hoạt động tốt là cấu hình tác nhân Flume, được lưu trữ trong một tệp văn bản cục bộ được cấu trúc giống như tệp thuộc tính Java. Bạn có thể cấu hình nhiều agent trong cùng một file. Xem một tập tin mẫu, được gọi là flume-agent. conf - nó được thiết lập để cấu hình một agent có tên shaman:

# Xác định các thành phần trên shaman agent: shaman. nguồn = netcat_s1 shaman. chìm = hdfs_w1 shaman. channel = in-mem_c1 # Cấu hình nguồn: shaman. nguồn. netcat_s1. type = netcat shaman. nguồn. netcat_s1. bind = pháp sư localhost. nguồn. netcat_s1. port = 44444 # Mô tả bồn rửa chén: shaman. chìm. hdfs_w1. type = hdfs shaman. chìm. hdfs_w1. hdfs. path = hdfs: // shaman. chìm. hdfs_w1. hdfs. writeFormat = Văn bản pháp sư. chìm. hdfs_w1. hdfs. fileType = DataStream # Định cấu hình kênh đệm các sự kiện trong bộ nhớ: shaman. kênh truyền hình. in-mem_c1. type = bộ nhớ shaman. kênh truyền hình. in-mem_c1. năng lực = 20000 pháp sư. kênh truyền hình. in-mem_c1. transactionCapacity = 100 # Gắn nguồn và chìm vào kênh: shaman. nguồn. netcat_s1. kênh = trong-mem_c1 pháp sư. chìm. hdfs_w1. channels = in-mem_c1

Tập tin cấu hình bao gồm các thuộc tính cho từng nguồn, kênh, và chìm trong đại lý và xác định cách chúng được kết nối. Trong ví dụ này, agent shaman có một nguồn để lắng nghe dữ liệu (tin nhắn tới netcat) trên cổng 44444, một kênh đệm dữ liệu sự kiện trong bộ nhớ, và một bồn rửa chén để ghi dữ liệu sự kiện vào bàn điều khiển.

Tệp cấu hình này có thể đã được sử dụng để xác định một số tác nhân; ở đây, bạn đang cấu hình chỉ một để giữ mọi thứ đơn giản.

Để bắt đầu tác nhân, hãy sử dụng một tập lệnh vỏ gọi là flume-ng, nằm trong thư mục bin của phân phối Flume. Từ dòng lệnh, đưa ra lệnh agent, xác định đường dẫn đến tệp cấu hình và tên tác nhân.

Lệnh mẫu sau đây bắt đầu với đại lý Flume:

agent flume-ng -f / -n shaman

Nhật ký của đại lý Flume phải có các mục xác nhận rằng nguồn, kênh và bồn rửa bắt đầu thành công.

Để kiểm tra thêm cấu hình, bạn có thể telnet đến cổng 44444 từ thiết bị đầu cuối khác và gửi Flume một sự kiện bằng cách nhập một chuỗi văn bản tùy ý. Nếu mọi việc suôn sẻ, nhà ga Flume ban đầu sẽ đưa ra sự kiện trong một thông điệp tường trình rằng bạn sẽ có thể nhìn thấy trong bản ghi của đại lý.
ĐăNg nhập Dữ liệu với Flume trong HDFS - núm vú

Lựa chọn của người biên tập

Web Marketing: Loại bỏ đăng ký và đăng nhập để đảm bảo khả năng hiển thị - núm vú

Web Marketing: Loại bỏ đăng ký và đăng nhập để đảm bảo khả năng hiển thị - núm vú

Tiếp thị web, một cách để đảm bảo khả năng hiển thị là để loại bỏ đăng ký và các hình thức đăng nhập. Khách truy cập thường phải hoàn thành các biểu mẫu này trước khi họ có thể tải xuống một số loại nội dung cao cấp, chẳng hạn như giấy trắng hoặc trước khi họ có thể đọc một số bài viết trên trang web. Các công ty đã đưa chúng vào vị trí vì họ muốn dẫn ...

Web Marketing: Làm thế nào để Tránh Duplicate Content - núm vú

Web Marketing: Làm thế nào để Tránh Duplicate Content - núm vú

Duplicate nội dung cần tránh trong web tiếp thị và Google cung cấp công cụ để phát hiện thông tin lặp lại. Không có gì gây tổn hại cho việc tìm kiếm nội dung có liên quan của công cụ tìm kiếm cũng như tìm ra chính xác những từ giống nhau trên hai trang khác nhau. Sao chép là xấu vì những lý do này: Sao chép được sử dụng để được một chiến thuật được sử dụng để đánh lừa ...

Web Marketing: Làm thế nào để Deal với Broken Links - núm vú

Web Marketing: Làm thế nào để Deal với Broken Links - núm vú

Trong bài hát của họ. Là một nhà tiếp thị web, việc xử lý các liên kết hỏng này có thể giúp đảm bảo sự thành công của trang web của bạn. Nếu một công cụ tìm kiếm đạt đến một liên kết bị hỏng, nó không thể tìm thấy trang bạn dự định (rõ ràng) - nhưng nó cũng có thể bỏ trên trang web của bạn hoặc giảm sự liên quan ...

Lựa chọn của người biên tập

Các kiểu dữ liệu điểm nổi trong Java - núm vú

Các kiểu dữ liệu điểm nổi trong Java - núm vú

Số dấu phẩy động là số có các phần phân đoạn (thường được thể hiện bằng dấu thập phân). Bạn nên sử dụng một kiểu điểm nổi trong các chương trình Java bất cứ khi nào bạn cần một số có số thập phân, như là 19. 95 hoặc 3. 1415. Java có hai kiểu nguyên thủy cho các số dấu phẩy: float: Sử dụng 4 byte gấp đôi: Sử dụng 8 bytes Trong hầu hết tất cả ...

Tải phiên bản mới nhất của Java - núm vú

Tải phiên bản mới nhất của Java - núm vú

Trước khi bạn có thể viết các chương trình Java cho các thiết bị Android, bạn cần một số phần mềm công cụ, bao gồm cả phiên bản mới nhất của Java. Bạn có thể có được phiên bản Java mới nhất và lớn nhất bằng cách truy cập vào trang web Java. Trang web cung cấp một số lựa chọn thay thế. (Được giới thiệu) Nhấp chuột vào nút Free Java Download trên trang chính của trang web. Đối với hầu hết các máy tính, ...

Thử nghiệm với JShell - núm vú

Thử nghiệm với JShell - núm vú

JShell là một công cụ Java 9 cho phép bạn khám phá về lập trình. JShell làm cho nó dễ dàng để chơi xung quanh mà không sợ hậu quả thảm khốc. Các chương trình Java thường sử dụng cùng kiểu cũ, lúng túng: public class SomethingOrOther {public static void main (String args []) {Một chương trình Java đòi hỏi sự giới thiệu này bởi vì trong Java ...

Lựa chọn của người biên tập

Hẹn hò Sau 50: Tâm linh và Tôn giáo - những con voi

Hẹn hò Sau 50: Tâm linh và Tôn giáo - những con voi

Bản quyền © 2014 AARP Tất cả các quyền được bảo lưu. Tâm linh và tôn giáo, tình dục, những trò vui nhộn nhịp, sự tham gia của gia đình, lối sống và tiền bạc - tất cả những điều này thường quan trọng đối với những người trên 50 tuổi, nhưng bạn có thể đặt một số cao hơn những người khác. Trong bất kỳ trường hợp nào, điều quan trọng là phải suy nghĩ về họ trước để bạn có thể thảo luận ...

Hẹn hò Sau 50: Nói về Monogami - vú

Hẹn hò Sau 50: Nói về Monogami - vú

Bản quyền © 2014 AARP. Đã đăng ký Bản quyền. Một vợ một chồng là một vấn đề lớn cho dù bạn là người chưa sẵn sàng cho vợ chồng một vợ chồng và muốn hẹn hò xung quanh hay người chỉ có thể quan hệ tình dục với một người một lần. Đảm bảo đối tác hẹn hò của bạn biết bạn đang đứng ở đâu (hoặc nằm xuống) đối với vợ chồng một vợ chồng ...

Hẹn hò Sau 50: Thảo luận về sức khoẻ cá nhân của bạn - những con voi

Hẹn hò Sau 50: Thảo luận về sức khoẻ cá nhân của bạn - những con voi

Bản quyền © 2014 AARP. Đã đăng ký Bản quyền. Nếu bạn bị bệnh mãn tính hoặc đe dọa đến mạng sống khi bạn còn nhỏ, bạn đã có kinh nghiệm về sức khoẻ của mình. Có thể bạn phải liên tục kể câu chuyện về vết sẹo ngực hoặc nẹp chân hoặc giải thích số ít các viên thuốc mà bạn phải dùng mỗi ngày. Nó không phải ...