Как вы обрабатываете часовые пояса для обработки данных? - PullRequest
2 голосов
/ 21 сентября 2010

любопытно, как люди решили эту проблему ... У меня есть ряд заданий, которые выполняются в одночасье и сводят отчеты на основе данных за день для клиентов. Теперь они просят о поддержке часовых поясов.

Один из отчетов: у вас было x заказов на прошлую ночь, однако вчерашняя ночь могла отличаться в зависимости от часового пояса. Каков наилучший способ организации или обработки данных, чтобы часовые пояса учитывали эту задачу проще?

спасибо

Ответы [ 3 ]

3 голосов
/ 21 сентября 2010

Рекомендуется представлять все даты в часовом поясе UTC.Этот часовой пояс не сбивает с толку летнее время.Затем клиент в часовом поясе США / Тихого океана может запросить отчет о заказах в период с 2010-09-20T00: 00-700 до 2010-09-21T00: 00-700 (используя формат ISO 8601 ).Входной слой вашей программы должен преобразовать даты клиентов и сохраненные даты заказа в секунды с начала эпохи в UTC, а затем перейти оттуда.

1 голос
/ 21 сентября 2010

В моем приложении я сохраняю местное время плюс смещение на UTC . Таким образом, я все еще могу сравнивать значения (путем преобразования их в универсальное время) в коде, но когда я отображаю его на экране, пользователи видят ожидаемое время («Да, я сделал это в 9:30 вчера») , С помощью переключателя они могут отображать часовой пояс или переключаться на универсальное время или отображать все время по местному времени.

0 голосов
/ 22 сентября 2010

По моему опыту, мы свернули данные в почасовые (или пятнадцатиминутные) сегменты во время ночного пробега. Затем пользовательские запросы могут получать соответствующие сегменты в зависимости от часового пояса, который они используют для своего отчета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...