How INTEGER and INT Produced Different Schemas in Debezium A Debezium investigation: how MySQL synonyms INT and INTEGER were treated as different types. One of our CDC pipelines started failing with …
Nguồn: https://lambda.blinkit.com/how-integer-and-int-produced-different-schemas-in-debezium-9c98e8a80aa2. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Trên instance GCP c4d-standard-4, tiến trình MySQL tiêu tốn 10.4 GB RAM dù innodb_buffer_pool_size chỉ được thiết lập là 7168 MB. Khoảng trống này được truy qua 4 lớp: dự kiến overhead từ InnoDB/Performance Schema/thread-buffer, khoảng ~9% mmap chunk padding trên buffer pool, sự tích tụ dirty pages của jemalloc trên DR replica không hoạt động, và nguyên nhân gốc - MALLOC_CONF không được thiết lập khiến decay của background_thread bị vô hiệu hóa. Các sửa chữa gồm giảm buffer pool thành bội số sạch (6144 MB), cắt giảm max_connections từ 3000 xuống 500, bật background_thread của jemalloc với decay 5 giây, và thêm swap để phòng OOM, giúp giảm RSS xuống còn ~7.9 GB. Bài viết cung cấp kiến thức sâu về quản lý memory của MySQL khi sử dụng jemalloc, cách tối ưu buffer pool size và thiết lập MALLOC_CONF phù hợp.
Đang tải bình luận…
innodb_buffer_pool_size không đủ để giải quyết cảnh báo nhớ, khi hệ thống vẫn tiêu thụ nhiều bộ nhớ hơn dự kiến do các yếu tố như cấu hình bộ nhớ phân vùng, quá trình làm sạch nhớ của jemalloc, hoặc tình trạng replica hoạt động không hiệu quả.Wix cần di chuyển 5 tỷ bản ghi, tổng khoảng 10TB dữ liệu trong vòng 4 tuần để nâng cấp hệ thống lưu trữ của mình. Họ sử dụng Change Data Capture (CDC) để lấy thay đổi real‑time từ nguồn, đưa vào Apache Kafka làm message broker, đồng thời áp dụng database sharding để phân tán tải trên nhiều node. Quá trình diễn ra ổn định, không gây downtime đáng kể, và sau khi hoàn tất họ thực hiện parity testing để xác minh tính nhất quán giữa cơ sở dữ liệu nguồn và đích. Kết hợp CDC, Kafka và sharding cho phép xây dựng pipeline chịu lỗi, mở rộng dễ dàng, giảm rủi ro khi di chuyển khối lượng dữ liệu lớn. Bài viết còn cung cấp chỉ số throughput, cấu hình cụ thể và bài học về monitoring và rollback mà bất kỳ đội dev nào đang cân nhác migration tương tự có thể tham khảo.
Bài viết này sẽ giúp bạn hiểu cách áp dụng CDC (Change Data Capture), Kafka và kỹ thuật phân mảnh cơ sở dữ liệu để tối ưu hóa quá trình di chuyển hàng tỷ dữ liệu một cách hiệu quả và an toàn trong thời gian ngắn.
Debezium 3.6.2.Final là bản phát hành mới nhất của nền tảng open source change data capture, cho phép ứng dụng phản ứng với các thay đổi trong database. Với khả năng tracking inserts, updates, và deletes từ các transaction khác, Debezium đảm bảo không bỏ sót sự kiện nào. Nền tảng này tập trung vào độ bền và tốc độ xử lý, đảm bảo ứng dụng phản hồi nhanh ngay cả khi có sự cố. Lập trình viên làm việc với streaming data và CDC nên cân nhắc xem xét bản release này để hiểu rõ các cải tiến.
Debezium 3.6.2.Final mang đến những cải tiến quan trọng giúp lập trình viên tối ưu hóa việc theo dõi thay đổi dữ liệu trong hệ thống phân tán.
Bài viết đánh giá lại những lời khuyên trước đây về các tính năng như COPY, TOAST, BRIN, covering indexes và partitioning trong PostgreSQL, xem xét những thay đổi từ các phiên bản Postgres gần đây và đưa ra khuyến nghị cho phiên bản sắp tới (Postgres 19).
Một lập trình viên nên đọc bài này để cập nhật cách tối ưu hóa cơ sở dữ liệu PostgreSQL 19 mới nhất, đặc biệt là về các kỹ thuật như COPY, TOAST, BRIN, và cách sử dụng các chỉ mục bù và phân vùng hiệu quả, giúp cải thiện hiệu suất và quản lý tài nguyên trong ứng dụng hiện đại.
Doltgres đã đạt hiệu suất tương đương MySQL nhờ những tối ưu hóa gần đây.
Lập trình viên muốn tối ưu ứng dụng database cho hiệu suất cao và khả năng mở rộng nhanh chóng nên đọc bài này để khám phá cách Doltgres vượt trội so với MySQL trong các trường hợp sử dụng thực tế.
Người thực hành MySQL khuyên không nên dùng các kiểu dữ liệu phức tạp như TIMESTAMP, DATE/TIME hay ENUM, thay vào đó nên dùng các kiểu số đơn giản hơn. Việc sử dụng ENUM gặp vấn đề khi xóa giá trị buộc phải rebuild toàn bộ bảng, cùng lỗi MySQL khiến MIN()/MAX() hoạt động không nhất quán trên ENUM.
Lập trình viên nên đọc bài này để tránh rủi ro về hiệu suất, tính bảo trì và tính nhất quán khi sử dụng các kiểu dữ liệu phức tạp như ENUM và TIMESTAMP trong MySQL, mà thay vào đó có thể áp dụng các giải pháp đơn giản và đáng tin cậy hơn.
Giải quyết vấn đề ghi kép (dual-write) trong ứng dụng Kotlin & Spring Boot bằng cách triển khai mẫu Transactional Outbox với Okapi, hỗ trợ Postgres, MySQL, Kafka và HTTP.
Lập trình viên cần đọc bài này để giải quyết vấn đề đồng thời ghi dữ liệu vào cơ sở dữ liệu và hệ thống message queue một cách đáng tin cậy trong ứng dụng Kotlin-Spring Boot, tránh rủi ro mất dữ liệu do lỗi đồng thời.
Di chuyển từ kiến trúc monolith sang microservices cần áp dụng các pattern cụ thể thay vì viết lại toàn bộ. Bốn chiến lược chính gồm: Strangler Fig (dần dần chuyển lưu lượng qua API gateway), Parallel Run (chạy song song để kiểm chứng), Collaborator (thêm microservices mới mà không sửa core), và Change Data Capture (đồng bộ dữ liệu real-time bằng Debezium/Kafka Connect). Các pattern này hiệu quả nhất khi kết hợp theo trình tự trong quá trình chuyển đổi.
Lập trình viên nên đọc bài này để hiểu cách chuyển đổi từ kiến trúc monolith sang microservices một cách chỉnh xác, ít rủi ro và tối ưu hóa hiệu suất, không phải là một thay đổi đột ngột mà là một quá trình thuần túy, có kế hoạch với các mẫu thiết kế hiệu quả.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000+ bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thử