Calendar stores availability per listing per night. Options: bitmap per month (efficient), date range table (flexible), or hybrid.
Double-booking prevention: lock dates during booking flow. Optimistic: check availability, attempt book, handle conflict. Pessimistic: lock calendar, book, release. Redis distributed locks for high-concurrency listings. Instant Book vs Request to Book affects locking strategy.