From Events to Insights: Memgraph Production Telemetry Stack with AWS, ClickHouse, and Grafana
Bài tóm tắt Memgraph 2026 2. Tăng trưởng Độ khó: Dễ
Memgraph · 2026 · 2. Tăng trưởng · Độ khó: Dễ — bài gốc
Telemetry ở đây là dữ liệu sử dụng sản phẩm (phiên bản nào, tính năng nào, môi trường nào) gửi về từ các bản Memgraph đang chạy, không phải metric vận hành của Memgraph Cloud. Bài không có số liệu lưu lượng.
Bối cảnh
- Memgraph (graph database) chạy ở nhiều môi trường, từ máy dev tới production lớn. Cách làm đơn giản lúc đầu không còn đủ khi lượng, độ đa dạng và tầm quan trọng của telemetry tăng; họ cần nạp nhanh, giữ lâu, phân tích linh hoạt mà không phải lập một đội nền tảng riêng.
Thay đổi chính
- Đường nạp: event qua HTTPS, đi Cloudflare → Elastic IP → EC2 chạy NGINX làm lớp nạp đơn giản → API trên Lambda (chịu đỉnh khi có release mà không cấp sẵn năng lực) → kiểm tra nhẹ rồi ghi nguyên request JSON lên S3. S3 là nguồn sự thật; lifecycle rule tự xoá request thô chưa gom sau một thời gian.
- Gom chứ không biến đổi: job AWS Glue hằng đêm gom hàng trăm nghìn request nhỏ thành file Parquet theo ngày, gần như giữ nguyên JSON. Mục đích chính là bỏ vấn đề nhiều file nhỏ và nén.
- ClickHouse kéo từ S3: nạp file Parquet đã gom; vì dữ liệu bền nằm ở S3, có thể dựng lại ClickHouse ở bất cứ đâu mà không mất lịch sử, đổi định nghĩa bảng hay thêm bảng dẫn xuất mà không phải phát lại lưu lượng nạp. Phần lớn dữ liệu nằm trong cột JSON; trường hay query thì thêm type hint cho đường dẫn đó. Giữ khoảng hai năm bằng TTL, cũ hơn vẫn còn ở S3.
- Grafana query thẳng ClickHouse: dashboard theo xu hướng tổng hợp (tính năng được dùng, môi trường triển khai, thay đổi sau release), không theo từng người dùng hay từng bản cài.
Vì sao
- Theo Memgraph, chủ đề chung là tách rời: nạp tách khỏi phân tích, storage tách khỏi compute (Tách compute khỏi storage), và quan trọng nhất là schema telemetry tách khỏi hạ tầng: developer thêm trường mới vào event mà không cần migration DB hay sửa pipeline; batch kế tiếp có trường đó là query được (Pipeline dữ liệu và analytics).
- Request nhỏ, nhiều thì gom một lần mỗi đêm thành file lớn để mọi bước sau rẻ (Batching và khấu hao round-trip).
Bài học cho SWE
- Giữ dữ liệu thô bất biến trên object storage làm nguồn sự thật; kho phân tích là thứ dựng lại được.
- Bước gom có thể tách khỏi bước biến đổi; gom sớm, biến đổi muộn (lúc query hoặc bằng bảng dẫn xuất).
- Cột JSON + type hint cho đường dẫn nóng là điểm giữa giữa schema cứng và không schema.
Liên quan
- Memgraph 2026 · ClickHouse 2024 (kiểu JSON của ClickHouse) · DuckDB Labs 2026 (một cách khác cho ghi nhỏ) · Notion 2024 (hướng ngược lại: schema bắt buộc ở nguồn)
- Pipeline dữ liệu và analytics · Batching và khấu hao round-trip · Tách compute khỏi storage
#Product telemetry#Lambda#S3 raw#AWS Glue#Parquet#Small files#ClickHouse JSON column#Type hints#TTL#Grafana
Được nhắc tới trong
Công ty (1)
Bài tóm tắt (1)