ĐỌC RANDOM NHANH CHÓNG = PREPREPARED dữ liệu đang ngồi trong HBase! Sử dụng HBase cho những gì ...
1. Nơi lưu trữ nhiều dữ liệu.
2. Một nơi mà bạn có thể đọc siêu nhanh.
3. Một nơi mà SQL sẽ không làm bạn tốt (sử dụng java).
Mặc dù bạn có thể đọc dữ liệu từ HBase và thực hiện tất cả các loại tập hợp ngay trong cấu trúc dữ liệu Java trước khi trả về kết quả tổng hợp, tốt nhất là để tính toán thành mapreduce. Từ các câu hỏi của bạn, có vẻ như bạn muốn dữ liệu nguồn để tính toán ngồi trong HBase. Nếu trường hợp này xảy ra, tuyến đường bạn muốn thực hiện có HBase là dữ liệu nguồn cho công việc Mapreduce. Do tính toán trên đó và trả về dữ liệu tổng hợp. Nhưng sau đó một lần nữa, tại sao bạn sẽ đọc từ HBase để chạy một công việc Mapreduce? Chỉ cần để các bảng dữ liệu HDFS/Hive đang ngồi và chạy các công việc Mapreduce trên chúng THEN tải dữ liệu vào các bảng Hbase "đã được chuẩn bị trước" để bạn có thể đọc siêu nhanh ngẫu nhiên từ nó.
Nguồn
2012-06-16 18:57:26
Cảm ơn câu trả lời của bạn. Nếu tôi đi với tùy chọn 2, sau đó sẽ có tất cả các chi phí liên quan đến khởi động và chạy một M/R từ khởi động của Map/Redcude để shufffle và sắp xếp và những gì không. Làm thế nào mà có thể là thời gian thực như thế nào? – iCode
Và cũng có thể, nếu tôi cần làm điều này ngày hôm nay, thì câu trả lời là không có cách thực tế để làm điều đó chưa? Như 1 là chậm, 3 và 4 là tương lai và 2 là iffy? – iCode
Vâng, câu trả lời của tôi có nghĩa là hôm nay không có cách nào để làm điều đó theo thời gian thực. Khi bản phát hành tiếp theo (được gọi là bản phát hành bộ xử lý) sẽ có sẵn, chúng tôi sẽ có tổng hợp thời gian thực ở cấp độ khu vực. –