Letysite.ru

IT Новости с интернет пространства
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Point in time

Data Vault. Серия 3: Даты окончания действия и основы соединений — new

Первоисточник статьи на английском языке доступен на www.tdan.com

Аннотация

Назначение этого документа – представить и обсудить заявленную на патент технологию под названием ***
Data Vault – набор уникально связанных нормализованных таблиц, содержащих детальные данные, отслеживающих историю изменений и предназначенных для поддержки одной или нескольких функциональных областей бизнеса. Это – гибридный подход, обобщающий лучшие свойства третьей нормальной формы (3NF) и схемы Звезда (Star schema).
Прим.: Не путать с Oracle Data Vault.»> ***
Data Vault – набор уникально связанных нормализованных таблиц, содержащих детальные данные, отслеживающих историю изменений и предназначенных для поддержки одной или нескольких функциональных областей бизнеса. Это – гибридный подход, обобщающий лучшие свойства третьей нормальной формы (3NF) и схемы Звезда (Star schema).
Прим.: Не путать с Oracle Data Vault.»>Data Vault ™ (прим. переводчика: статья была написана в 2001 году, в предоставлении патента было отказано в январе 2005; сейчас архитектура Data Vault – общедоступна – FREE and PUBLIC DOMAIN). Data Vault™ – новый этап эволюции моделирования данных для хранилищ данных масштаба предприятия. Это — третья статья в ряду публикаций о Data Vault. Эта статья исследует пример Data Vault, приведенный во 2-ой статье Серии, расширяет понятие «даты окончания действия» и содержит некоторое введение в методы соединения (join techniques). Это обсуждение охватывает также способности архитектуры Data Vault к обработке данных в режиме близком к реальному времени (на уровне 1 — 20 секунд). Следующая статья в серии будет сосредоточена на таблицах Связи с дополнительными методами соединения. Завершающая статья обсудит такие темы, как: вставка, обновление, удаление, управление фактами, агрегаты, режим близкий к реальному времени и пакеты (batch). В этой статье мы начинаем рассматривать некоторые аспекты, связанные с запросами данных и с логикой управления данными в Data Vault. Рекомендуется, чтобы Вы были знакомы с концепцией Data Vault, и прочитали предыдущие две на http://www.tdan.com
(или у нас на сайте).

1.0 Введение

Назначение этого документа – представить и обсудить заявленную на патент технологию под названием Data Vault™ (прим. переводчика: статья была написана в 2001 году, в предоставлении патента было отказано в январе 2005; сейчас архитектура Data Vault – общедоступна – FREE and PUBLIC DOMAIN). Data Vault™ – новый этап эволюции моделирования данных для хранилищ данных масштаба предприятия. Целевая аудитория этой статьи: проектировщики данных, желающие построить модель Data Vault, или специалисты в области хранилищ данных и BI , интересующиеся запросами к Data Vault. Здесь представлены на первый взгляд не связанные темы: даты загрузки (load date), даты окончания действия (end-date), и введение в операции соединения (join operations). Соединения (Join) данных могут быть проблемой при применении Data Vault, но сделанные должным образом могут быть очень эффективными. Следующая статья серии охватит соединения более подробно: таблицы Связи (Link), Спутники (Satellites) таблиц Связи и дополнительные методы запросов. В этой же статье рассмотрим следующие темы:

  • Стили моделирования дат окончания (End-Date Styles).
  • Введение в операции соединения (проходит нитью через весь документ)
  • Резюме и выводы.

Прочитав это документ, Вы можете узнать:

  • Как моделировать конечные даты в зависимости от различных требований.
  • Как моделировать при требованиях практически нулевого времени задержки.
  • Обработка различных запросов к структурам Спутников и Хабов.
  • Как подготовить запросы к структурам Data Vault (возможности соединения).
Читать еще:  Параметры запуска access 2020

Наибольшие задачи моделирования хранилищ составляют: архитектура для больших объемов (терабайты); создание стандартов загрузки и восстановления; установление синхронизации содержания; запросы информации, зависимой от даты/времени; а также настройка модели, позволяющей загрузку в реальном времени. Архитектору данных или проектировщику остается искать способы встроить эти функциональности в модель. Архитектура Data Vault обеспечивает структурные компоненты, которые соответствуют вышеперечисленным аспектам. Хотя каждый из этих аспектов и описан в высокоуровневой дескриптивной форме в этом документе – в центре внимания все же остаются даты окончания и введение в методы соединений.

Даты окончания могут обрабатываться несколькими способами (с точки зрения Data Vault)

  1. Таблицы Point-In-Time (system of record / snapshot / picture tables).
  2. Поля с датами окончания, помещенные в Спутники.
  3. Комбинация двух вышеупомянутых методов.

Пожалуйста, имейте в виду, что загрузка в режиме реального времени – функция архитектуры и техники моделирования. Это не функция наличия или отсутствия PIT таблицы (point-in-time). Другими словами, для загрузки в режиме близком к реальному времени модели Data Vault достаточно Хабов, Связей и Спутников. PIT таблица – специализированная производная Спутника.

2.0 Стили моделирования дат окончания действия

Первый стиль – поместить поле, содержащее значение даты загрузки или даты наблюдения/измерения (observation date), в Спутник, и предположить, что информация действительна, пока не появится новая строка. Таким образом, промежуток времени между датами загрузки – по существу и есть период действия информации. Второй стиль – поместить поле, содержащее значение даты начала наблюдения/загрузки (start date), и поле, содержащее значение даты окончания (end date), в каждую строку Спутника. Третий метод должен быть использован, когда доступно достаточно дискового объема – чаще всего используется в режиме загрузки близкой к реальному времени, но так же может быть очень эффективной техникой для пакетной загрузки. Каждый метод работоспособен, ниже мы обсудим «за и против» для каждого.

Синхронизация временных отметок (date-time stamp) и систем, управляющих этими временными отметками, помогает решить проблемы географически разделенного хранилища Data Vaults. Во всяком случае, упрощает эти проблемы. Временная отметка также магически работает в другом случае – она предоставляет собой основу для того, что называют двойным датированием. Мы взяли GAAP (generally accepted accounting principles – общепринятые принципы бухгалтерского учета) – принципы, определяющие двойной ввод для главной бухгалтерской книги (general ledger), и повторно применили для логики дат в хранилище. Это также помогает нам с бухгалтерским представлением детальной информации – только с точки зрения времени. Помните, Data Vault ориентировано для массовой вставки (основанной только на изменениях/дельтах). Data Vault не приспособлено для обновлений или удалений (мы обсудим это в других статьях этой серии).

2.1 Дата загрузки и структуры Point-In Time.

Как уже обсуждалось в 1-ой статье серии, первый возможный стиль моделирования дат окончания заключается в том, чтобы поместить поле, содержащее значение даты загрузки, в первичном ключе каждого из Спутников. Поскольку функция Спутника заключается в том, чтобы хранить информацию только об изменении (дельте), то каждая строка действительна до появления следующей строки-дельты. Разница между этими датами двух строк Спутника может быть вычислена и фигурировать в качестве эффективного периода жизни данной информации.

Читать еще:  Direct memory access

Почему используются «Даты Загрузки»?

Необходимо применять Даты Загрузки (Load Date) или Даты Начала Наблюдения (Observation Start Date), чтобы вся информация, внесенная в хранилище, оставалась согласованной по временной шкале. Без использования даты о появлении информации в хранилище, такие действия, как восстановление, отмена, удаление или сворачивание старых данных, будут трудноосуществимы или невозможны. Это не единственная причина. Запросы конечного пользователя требуют данных, бывших действительными в определенный момент времени. Эта возможность выбирать данные за определенный период должна присутствовать в хранилище.

Что, если мои исходные системы имеют даты создания и даты обновления, разве я не могу использовать их?

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

Если у меня есть несколько Data Vaults географически распределенных по различным часовым поясам, то это означает, что я должен синхронизировать часы серверов?

Этого не требуется, потому что, обычно, когда объединяются данные различных хранилищ Data Vaults, то преобразование часовых поясов может делаться согласно Среднему времени по Гринвичу (GMT). Однако, может быть полезным синхронизировать часы всех серверов по стандарту «Гринвич + X», чтобы загрузка временных отметок была точной. Фактически, как только часы синхронизированы, становится намного легче объединять информацию из географически распределенных хранилищ и избежать проблем, связанных со значениями времени.

Хорошо, теперь я понимаю, почему дата загрузки необходима, но как она работает?

Этот метод легок для загрузки, но может вызвать проблемы при запросах информации. Для того чтобы получить последнюю строку на определенную дату, запрос без структуры Point-in-time (PIT) должен иметь вложенные подзапросы. Примечание: Мы используем термины PIT (point in time), PIC (picture table), and SOR (system of record) как синонимы. Ниже для примера приведен Спутник, содержащий несколько строк

Рисунок 2-1. Customer Name Hub и Satellite

В случае отсутствия PIT-таблицы, запрос к этому Спутнику должен выглядеть следующим образом (на дату: 1-ое декабря 2000 г.):

Select * from HUB_CUST, SAT_CUST_NAME scst
Where hub_cust.CSID = scst.CSID
And scst.load_dts – без доступа пользователей, за исключением, возможно, особо технически грамотных пользователей.

3.0 Заключение

Различные стили моделирования конечных дат предоставляют архитектуре гибкость в парадигме запросов и производительности. Гибридный подход вобрал лучшее из обоих миров, позволяя как исторический, так и неисторический захват данных в PIT таблицу. Работа с соединениями важна, в плане наблюдения за задаваемыми условиями и существованием или отсутствием данных в Спутниках. Это важно для выбора соответствующего стиля моделирования конечных дат и поддержки выбранного стиля, в качестве стандарта, при создании Data Vault в организации. Как только стандарт установлен, тогда архитектура становится универсальной – для выполнения доступа, запросов, загрузки, удаление, и обновление.

Читать еще:  Security access code amazon что это

Как отмечалось выше, создавайте сложные запросы с помощь представлений (view). Если это необходимо, используйте вложенные представления. Стройте представления на основе Хабов и соответствующих им Спутников, Ссылок и их Спутников. Это позволит свести доступ к минимуму и наладить стандарты. Разграничьте доступы к текущей информации и к исторической, чтобы запросы были как можно быстрее. Когда возможно используйте значения NULL в ваших полях с датами – это поможет сохранить истинную природу данных. В следующей статье мы углубимся в таблицы Связей, их объединение и их Спутники.

Thread: Point in time vs Point of Time

Thread Tools
Display
  • Linear Mode
  • Switch to Hybrid Mode
  • Switch to Threaded Mode

  • Member Info
    • Native Language:
    • Hindi
    • Home Country:
    • India
    • Current Location:
    • India
  • Join Date: Jul 2009
  • Posts: 1,109

Point in time vs Point of Time

Which is appropriate, Point in Time or Point of Time.

At that point in time of time, I was enjoying work.

At that point in time, I was enjoying work.

Are both correct, is there any difference in meaning?

  • Member Info
    • Native Language:
    • American English
    • Home Country:
    • United States
    • Current Location:
    • United States
  • Join Date: Mar 2007
  • Posts: 19,062

Re: Point in time vs Point of Time

In your example, use «point in time.»

  • Member Info
    • Native Language:
    • Hindi
    • Home Country:
    • India
    • Current Location:
    • India
  • Join Date: Jul 2009
  • Posts: 1,109

Re: Point in time vs Point of Time

In your example, use «point in time.»

  • Member Info
    • Native Language:
    • British English
    • Home Country:
    • UK
    • Current Location:
    • Japan
  • Join Date: Jan 2009
  • Posts: 1,482

Re: Point in time vs Point of Time

  • Join Date: Jul 2009
  • Posts: 2,036

Re: Point in time vs Point of Time

I have not used «point of time», and I can’t say I recall hearing it. However, based on just a few glances — quick looks and observations that is to say — it appears that, perhaps, «point of time» is used in technical contexts or maybe things technological. For general purposes — general language — I would really recommend just using «point in time».

I did a UK search. It’s interesting because it’s possible to search specific countries with Google.

Google — Australia
Google — New Zealand — and etcetera

As an aside, I’d like to add this:

I’ve learned to consult Google even if I have not heard the expression. In fact, I’m probably going to stop learning new things altogether because everything is recorded in Google. If we want to know something, we should go to Google. I don’t have to know anything. Google has it all taken care of for me.

Be careful of using «at this point in time». Language critics have singled that one out for special attention. Too wordy they say. Just say «at this time». I kind of have to agree with this, but I wouldn’t fault anyone for using it. It’s not that bad.

Ссылка на основную публикацию
Adblock
detector