コンテンツにスキップ

バックエンド: データ不整合 10 パターン

元ネタ

  • X: https://x.com/avrldotdev/status/2041024380470268090
  • 投稿者: @avrldotdev

原文

10 Data Inconsistency issues you'll face as a Backend Developer:

  1. Read-after-write inconsistency
  2. Stale cache vs DB mismatch
  3. Replication lag issues
  4. Lost updates (race conditions)
  5. Double writes (partial failures)
  6. Phantom reads/non-repeatable reads
  7. Idempotency failures
  8. Distributed transaction failures
  9. Out-of-order events
  10. Clock skew issues (timestamp drift)

要約

バックエンド開発者が直面するデータ不整合の問題を 10 個リストアップしている。書き込み直後の読み取り不整合、キャッシュと DB のずれ、レプリケーション遅延、レースコンディションによる更新消失、部分的書き込み失敗、ファントムリード、冪等性の欠如、分散トランザクション障害、イベント順序の逆転、クロックスキューなど。

深掘りしたい観点

  • 各パターンの具体的な再現シナリオと対策
  • Go で分散システムを書くときにどこで踏みやすいか
  • 冪等性の設計パターン(idempotency key など)
  • レプリケーション遅延への対処(read-your-writes consistency)

tags: #backend #data-consistency #distributed-systems #interview #database