Phân loại cơ chế đồng bộ: Snapshot vs Streaming

1. Tổng quan

  • Định nghĩa: Cơ chế đồng bộ là cách thức và tần suất mà hệ thống Mobio lấy dữ liệu từ Connector. Hệ thống cung cấp hai cơ chế chính: đồng bộ theo sự kiện thực (Streaming) và đồng bộ định kỳ theo lô (Snapshot).
  • Lợi ích/Giá trị: Việc hiểu và chọn đúng cơ chế đồng bộ ngay từ đầu giúp hệ thống không bị quá tải, ngăn chặn tình trạng thiếu hụt dữ liệu hoặc ghi đè làm sai lệch dữ liệu hiện tại của khách hàng trên Mobio.
  • Đối tượng sử dụng: Quản trị viên hệ thống (Admin), Kỹ sư dữ liệu (Data Engineer), Cán bộ kỹ thuật phụ trách tích hợp (IT/Technical Specialist).

2. Giải thích Thuật ngữ & Thông số

  • Streaming (đồng bộ thời gian thực): Dữ liệu được đẩy từ hệ thống của bạn sang Mobio ngay lập tức (real-time) khi sự kiện phát sinh. Cơ chế này thường áp dụng cho luồng API (Webhook) hoặc SDK.
  • Snapshot (Đồng bộ theo lô/định kỳ): Mobio sẽ tiến hành kéo một cục dữ liệu (batch) từ hệ thống của bạn vào những khoảng thời gian cố định (ví dụ: 12h đêm mỗi ngày). Trong Snapshot, hệ thống chia tiếp làm 2 phương thức:
    • Full (Đồng bộ toàn phần): Quét và lấy lại toàn bộ dữ liệu từ đầu đến cuối, đồng thời ghi đè. Gây gánh nặng lớn cho hệ thống nhưng vẫn đảm bảo tính nhất quán tuyệt đối.
    • Incremental (Đồng bộ gia tăng): Chỉ kéo những bản ghi dữ liệu mới được tạo ra hoặc mới được cập nhật kể từ lần đồng bộ cuối cùng. Tiết kiệm tài nguyên và cực kỳ nhanh chóng.

3. Điều kiện tiên quyết (Prerequisite)

4. Các bước đánh giá và lựa chọn cơ chế

  • Vì đây là tài liệu lý thuyết nền tảng, bạn không cần cài đặt trên giao diện. Thay vào đó, hãy trả lời 3 câu hỏi sau trước khi cấu hình:
  1. Dữ liệu của bạn nằm ở đâu? (Nếu là Database nội bộ → dùng phương thức Snapshot.) Nếu là hành vi từ website → dùng phương thức streaming.
  2. Nhu cầu nghiệp vụ có cần data ngay lập tức để chạy chiến dịch tương tác near-real-time không? (Nếu có → ưu tiên các Connector hỗ trợ Streaming).
  3. Với Snapshot Database, bảng dữ liệu của bạn có cột ghi chú thời gian cập nhật (datadate) không? (Nếu có → khuyến khích dùng Snapshot Incremental để tối ưu.)

5. Quy tắc vận hành & Use case

  • Dữ liệu Profile (Hồ sơ cá nhân): Đặc thù ít thay đổi, thường phù hợp với Snapshot Incremental. (Ví dụ: cập nhật thẻ hạng thành viên mỗi đêm).
  • Dữ liệu Event (Hành vi): Gắn với các sự kiện Click, Mua hàng cần phản ứng ngay lập tức → dùng Streaming.
  • Cảnh báo phần cứng: không sử dụng Snapshot Full để quét lại Database hàng triệu bản ghi với tần suất liên tục (VD: vài tiếng/lần) vì sẽ làm chết cả hệ thống server của bạn và Mobio.

6. Các câu hỏi thường gặp (FAQ)

  • Hỏi: Nếu tôi cấu hình Snapshot Incremental nhưng hôm đó server của tôi bị chết mạng, dữ liệu có bị lọt (miss) không?
    • Trả lời: Không. Mobio ghi nhận checkpoint — bản ghi đồng bộ thành công gần nhất (được đánh dấu bằng giá trị order_key, có thể là số hoặc thời gian). Khi kết nối được khôi phục, hệ thống sẽ tiếp tục đồng bộ từ checkpoint đó và kéo về toàn bộ các bản ghi phát sinh trong thời gian gián đoạn.
  • Hỏi: Có thể chuyển đổi Snapshot Full sang Snapshot Incremental không?
    • Trả lời: Có. Bạn có thể vào phần chỉnh sửa Lịch đồng bộ của Data Flow để thay đổi thông số này.

7. Bước tiếp theo

image-zoom
© MOBIO 2022 v1.3 Powered by MOBIO
Back to Top