У нас есть процесс загрузки файлов на S3. На самом деле это косвенно. Мы используем Amazon Elastic MapReduce (EMR), а Hadoop записывает файлы на S3 из разных узлов. Затем после успешного выполнения задания Hadoop другая часть процесса использует файл FileSystem.createNewFile() Hadoop для создания некоторых файлов с главного узла.Как S3 назначает отметку времени при загрузке?
Файлы, созданные на этих различных машинах, имеют метки времени в S3. Мы предполагаем, что временные метки файлов, переданных из узлов задачи, находятся перед файлами, созданными с главного узла.
Я считаю, что это иногда неверно, но почему?
Что назначает метку времени S3-файлу? Это клиент Amazon EMR Hadoop или какой-либо S3-машине?
Если у меня есть две машины, загружающие на S3, чьи локальные часы отличаются на 30 минут, отметки времени будут на 30 минут друг от друга?
Предположительно, это какой-то сервер S3, но может быть другим для каждого файла. – dfrankow
Если я правильно понимаю ваш комментарий, то да. У вас нет контроля над тем, какой сервер вы попали или точное значение часов этого сервера. – sethwm