From a place my wife and I are fond of in San Francisco called Chenery Park; I was reading their website because I was surprised when I went onto Opentable to make a reservation for New Years Eve to find that they were requesting a credit card to hold the reservation. (We eat there a couple of times a month and they don't normally take credit cards to hold the reservation.)
On their website is this note:
Credit Card needed for all New Years Eve Reservations
24 hour Cancellation policy-
A no-call, no show results in $25 per person charge to your credit card, given in the form of a Chenery Park gift certificate to be mailed to you.
I think this is a great way to handle the situation. Seems like an idea that strikes something of a balance between the needs of the customer and the restaurant.