Рекомендации по хранению временных данных

Эта документация ArcGIS 3.1 была перемещена в архив и более не обновляется. Ресурсы и ссылки могут быть устаревшими. См. самую последнюю документацию.

Вы можете хранить временные данные разными способами. Вот некоторые практические рекомендации, которым вы можете следовать при хранении ваших временных данных.

Храните временные метки в поле даты

Временные метки временных данных рекомендуется хранить в поле дат. Это – тип поля базы данных, предназначенный специально для хранения информации о времени и датах. Он наиболее эффективен с точки зрения скорости обработки запроса и поддерживает более сложные запросы в базе данных по сравнению с вариантами хранения значений времени в числовом или строчном поле.

Если поле даты нельзя использовать, вы можете сохранить метки времени в своих данных в строковых или числовых полях. Например, вы можете хранить годовые данные как 2000, 2001 и так далее. Для строковых полей потребность в эффективных запросах и сортировке означает, что текстовые значения должны перечислять значения единиц времени от наибольшего к наименьшему, например 20120126 для 26 января 2012 г.

Примечание:

Отображение даты поддерживается только в диапазоне от AD100 до AD10,000. Для работы с датами вне этого диапазона рекомендуется конвертировать значения либо в числовой формат (и фильтровать с помощью бегунка диапазона), либо в строковый формат (для надписей).

Можно использовать инструмент геообработки Конвертировать поле времени для преобразования строкового или числового поля, содержащего временные метки, в поле дат.

Храните временные данные в формате строки

Для использования временных данных в ArcGIS Pro следует хранить значения времени, связанные с отдельными объектами, в строковом формате. Вы можете использовать бегунок времени для навигации по вашим данным во времени, а бегунок времени фильтрует отображение на основе слоя, чтобы отображать только строки в течение указанного периода времени.

Каждый объект или строка в таблице может иметь либо значения времени в одном поле, представляющие момент времени, либо значения времени в двух полях, представляющие длительность во времени с началом и окончанием наблюдения.

В зависимости от того, что изменится со временем – атрибуты ваших данных или формы объектов – вы можете хранить ваши временные данные в одной единой таблице или в разных отдельных таблицах.

Часто время в ваших данных будет представлено в столбцах таблицы атрибутов. Например, медицинские расходы по округам за 1990, 1991 и 1992 годы могут быть перечислены в отдельных столбцах в одной строке таблицы. Чтобы визуализировать эти данные во времени, используя возможности бегунка времени для фильтрации данных, вы должны переформатировать таблицу, чтобы значения времени были в формате строки.

Индексные поля, содержащие значения времени

Для улучшения производительности временной визуализации и запросов рекомендуется индексировать поля, содержащие значения времени. Вы можете использовать инструмент геообработки Добавить атрибутивный индекс, чтобы в поле существующей таблицы или в класс объектов был добавлен индекс.

Используйте стандартное время

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

Хранение значений времени в стандартном времени позволяет избежать потерь или перекрытия данных при компиляции данных и исключает неопределенность при временной визуализации данных, относящихся к переходному периоду.

Использование значений null в поле времени

Бывают случаи, когда в поле времени хранится значение null. Например, слой с временем начала и окончания может указывать на то, что объект считается существующим в будущем, с помощью времени окончания null. Затем при воспроизведении бегунка времени объект появляется, когда включено время начала, и продолжает отображаться в течение оставшегося воспроизведения. То же самое можно сказать и в обратном порядке: нулевое время начала указывает на то, что объект существует в прошлом и немедленно отображается с начала до тех пор, пока не будет достигнуто время окончания.

Однако, когда время хранится в одном поле, объект со значением null исключается, поскольку он не может попасть в промежуток времени.

Связанные разделы