If users want notifications or certain activities triggered based on an hour of the day in their local timezone. You could store each users preferred notification hour in the database, and just poll the table every hour for who wants a notification. But this won't take daylight savings into account. How is this normally solved?
Assuming the user requests 9am EST:
If you convert 9am EST to GMT, and store the GMT hour in the database. This doesn't work, because that GMT conversion is only valid until daylight savings time.
If you store 9am EST directly in the table, then you have to query every single row in the table including their timezone and calculate the current time in every row.
Option 2 works, but only for a small database. What is the best way to do this?