title: Optimisation In Data Check
body: <p><strong>Problem :</strong></p>
  <p>Booking.com offers a feature “book now, pay later” that allows users to make a
  booking a hotel room now and pay later, on or before check-in. Credit card details
  are provided by users at the time of booking. However, people can misuse this
  feature &amp; make bookings with fraudulent credit cards which can cause legal problems.
  Design a system that detects the use of fraudulent credit cards and blocks them from
  booking rooms. Given: a 3rd party API that provides a list of newly added fraudulent
  credit card numbers.</p>
  <p><strong>Solution :</strong></p>
  <p>We store Booking Date, Credit Card Number in DB.</p>
  <p>We need to check available (Booking Date is still further) CCs from DB to check in Redis where We store CCs from Third party API.</p>
  <p>From list of Credit Cards that we check in Redis each hour, if found, we push that value to other services via kafka.
  Eg. 100M records * O(1) lookup time</p>
  <p><strong>How do we optimise the 100M values lookup in Redis based on previous hour lookup?</strong></p>