Professional Documents
Culture Documents
Báo Cáo Big Data (39-47)
Báo Cáo Big Data (39-47)
Báo Cáo Big Data (39-47)
◼ Giống như cơ sở dữ liệu liên kết, nhưng có một số điểm khác biệt:
Truy vấn liên tục: được đăng ký vào hệ thống và luôn luôn hoạt động.
Trong hệ quản trị cơ sở dữ liệu truy vấn trên dòng dữ liệu, truy vấn được
gọi là "liên tục" vì chúng được đăng ký và duy trì trong hệ thống để chạy
liên tục theo thời gian. Điều này khác biệt so với mô hình liên kết, nơi
truy vấn thường được thực thi chỉ khi được yêu cầu
Dữ liệu được đẩy thông qua kế hoạch truy vấn, không phải được truy
xuất.
Trong hệ thống này, dữ liệu không được rút (pull) mà được đẩy (push)
qua kế hoạch truy vấn. Điều này có nghĩa là khi có dữ liệu mới xuất hiện,
hệ thống tự động đẩy dữ liệu đó qua các bước của kế hoạch truy vấn để
thực hiện các thao tác xử lý cần thiết. Trong mô hình truy vấn liên tục,
quá trình này liên tục xảy ra mà không cần phải chờ đợi truy vấn được
khởi chạy từ bên ngoài.
Dòng dữ liệu
Dòng dữ liệu Hoạt động
Dòng dữ liệu
Hoạt động
Nguồn Dòng dữ liệu Dòng dữ liệu
dữ liệu
Hoạt động
Đầu
Dòng dữ liệu ra
Nguồn
dữ liệu Dòng dữ liệu
Hoạt động
Vấn đề xử lý truy vấn(tr40)
❑ Mỗi khi có dữ liệu mới xuất hiện, hệ thống xử lý truy vấn liên tục sẽ ngay
lập tức xử lý nó. Điều này giúp đảm bảo rằng mọi sự kiện mới được xử lý ngay
lập tức sau khi chúng được hệ thống nhận diện
❑ Ví dụ: Apache Storm, Heron (các công nghệ xử lý dữ liệu liên tục)
❑ Dữ liệu được nhóm lại thành các phần, và sau đó, cả nhóm này sẽ được xử
lý như một đơn vị. Các hệ thống xử lý dữ liệu theo cửa sổ thời gian thường sử
dụng kỹ thuật này để xử lý dữ liệu theo từng đợt (batch) thời gian cố định
❑ Ví dụ: Aurora, STREAM, Spark Streaming (các hệ thống xử lý dữ liệu
theo cửa sổ thời gian)
❑ Ví dụ: Dễ dàng xác định các kế hoạch con được chia sẻ (cơ hội nhiều hơn
cho việc tối ưu hóa đồng thời nhiều truy vấn). Do truy vấn liên tục được biết
trước, hệ thống có nhiều cơ hội tối ưu hóa hiệu suất. Có thể tổng hợp các truy
vấn cho các khoảng thời gian khác nhau hoặc với các cách trượt khác nhau. Hơn
nữa, có khả năng chia sẻ trạng thái và tính toán giữa các truy vấn, tăng cường
khả năng tối ưu hóa đồng thời nhiều truy vấn.
◼ Các hành động của hệ thống phụ thuộc vào các toán tử
❑ Hệ thống thực hiện các hành động cụ thể dựa trên các toán tử được áp
dụng. Ví dụ, khi thực hiện phép Join, hệ thống tạo ra kết quả mới bằng cách kết
hợp dữ liệu từ các nguồn khác nhau. Ngược lại, toán tử Negation có thể loại bỏ
kết quả đã có trước đó.
❑ Khi cửa sổ thời gian di chuyển, một số mục trong cửa sổ di chuyển ra
khỏi vùng xử lý. Điều này đặt ra câu hỏi về việc xử lý kết quả liên quan. Nếu
quá trình di chuyển là đơn điệu, tức là không có thay đổi quan trọng, hệ thống
có thể tiếp tục mà không cần can thiệp. Tuy nhiên, nếu không đơn điệu, có hai
lựa chọn:
> Tiếp cận trực tiếp : Xử lý dữ liệu theo cách trực tiếp và tự động điều
chỉnh để đáp ứng thay đổi vị trí của cửa sổ.
> Tiếp cận bản ghi bị động (Negative tuple approach) : Loại bỏ các kết
quả liên quan đến dữ liệu bị loại bỏ để giữ cho hệ thống đồng bộ.
Quản lý tải(tr42)
Tốc độ xuất hiện của dữ liệu dòng lớn hơn khả năng xử lý của hệ thống.
◼ Giảm tải
Giảm tải (load shedding) là một chiến lược để giảm tải hệ thống khi nó không
thể xử lý hết được lượng dữ liệu đến. Có hai chiến lược phổ biến cho load
shedding:
❑ Ngẫu nhiên
Chọn ngẫu nhiên một số dữ liệu để loại bỏ.
❑ Ngữ nghĩa
Dựa trên ý nghĩa của dữ liệu, giữ lại hoặc loại bỏ dữ liệu để đảm bảo rằng dữ
liệu quan trọng được xử lý đầu tiên.
◼ Giả định: sự xuất hiện của dữ liệu được sắp xếp theo dấu thời gian
Điều này ngụ ý rằng dữ liệu mới sẽ xuất hiện theo thứ tự thời gian, tức là các sự
kiện mới được tạo ra sẽ có dấu thời gian (timestamp) tăng dần.
◼ Nhiều cơ hội hơn vì các truy vấn liên tục được biết trước
❑ Tổng hợp truy vấn qua các độ dài cửa sổ khác nhau hoặc với các khoảng
trượt khác nhau
Chúng ta có khả năng tổng hợp các truy vấn liên tục theo các độ dài cửa sổ khác
nhau hoặc với các khoảng trượt khác nhau. Điều này mở ra khả năng tối ưu hóa
hiệu suất và tính toán theo nhiều cách khác nhau, tùy thuộc vào yêu cầu cụ thể
của hệ thống hoặc ứng dụng.
❑ Có thể chia sẻ trạng thái và tính toán (phổ biến)
Chia sẻ trạng thái và tính toán giữa các truy vấn liên tục là một phương pháp
phổ biến. Điều này giúp giảm tải công việc tính toán và lưu trữ, tăng hiệu suất
và khả năng mở rộng của hệ thống cơ sở dữ liệu phân tán.
Xử lý dữ liệu dòng song song(45)
W1
Hành động 4
P A
W2
P
W8
W3
P A