Извличане на данни: Импортиране на партиди срещу придобиване на базата на куки

Най-подходящо ли е пакетното импортиране или придобиване въз основа на куки за вашата стратегия за извличане на данни?

Когато извличате данни от външни източници, методологията може да бъде идентифицирана като „партида“ или „кука“. Те са много различни и имат своите собствени достойнства. Нека използваме пример, за да опростим това леко. За нашия пример информацията е полетни данни, отнасящи се до местоположението на самолета по всяко време. Следователно, трябва да имаме следните ключови данни:

  1. Състояние на движение (неподвижно или в движение)
  2. Географска ширина
  3. дължина
  4. Надморска височина
  5. Произход (на текущ или следващ полет)
  6. Дестинация (на текущ или следващ полет)
  7. Време (точност милисекунда)

В този пример трябва да сме в състояние да екстраполираме повечето информация, отнасяща се до въздухоплавателното средство, като използваме гореспоменатите данни. Нека анализираме двата метода за импортиране на данни.

Партиден внос

Партидният импорт се основава на график и ще "изтегля" информация от източник на повтарящ се интервал. Използвайки нашия пример по-горе за полетните данни, това може да се реализира по следния начин:

  1. Часово, ние сме импортирали всички полетни записи, отнасящи се до този самолет от последната инстанция. Ще наречем това време за партида, което може да бъде 10: 00: 00.000 (10 часа сутринта, с точност милисекунда).
  2. Този сървър обработва тези данни (успешно импортирани).
  3. Актуализираме партидното време до времето на последния запис. Следователно, въпреки че времето за партида в стъпка 1 е 10: 00.000, ако последният запис е 9: 59: 52.915, това ще стане новото партидно време.

Защо имплементираме времевия пакет по този начин?

  1. Актуализираме времето за партида, тъй като часовата партида може да се провали. Това ни осигурява увереността, че дори ако една партида не успее, в следващия случай ще импортираме цялата информация след последната партида.
  2. Освен това спестяваме време за партида до времето на най-новия запис на полета, тъй като незначителната разлика във времето между сървърите може да доведе до не импортиране на някои данни в следващия случай. Да обясня това по различен начин; ако нашият сървър е с 5 секунди по-напред от този, предоставящ полетните данни, и ние трябваше да запишем последното време на партида като време на нашия сървър, по време на следващото импортиране ще загубим тези 5 секунди данни. Вместо това използваме последното записано време на полетните данни, за да гарантираме, че партидите улавят всички данни.

Внос на основата на куката

Вносът на базата на куки е чист метод в реално време за събиране на данни. „Кука“ в изчисленията се отнася до процес, при който външна система (като например решението за полетни данни) изпраща съобщение (съдържащо данни) на вашия сървър, когато се случи събитие. Примерно импортиране на базата на куки може да бъде изпълнено, както следва:

  1. Нов запис се записва на сървъра за полетни данни с цялата информация (състояние на движение, географска ширина, дължина, надморска височина и т.н.).
  2. Задейства „кука“, която автоматично изпраща данните на вашия сървър.
  3. Вашият сървър обработва тези данни (успешно импортирани).

заключение

Въпреки че методите за импортиране на базата на куки са предпочитани от гледна точка на „реално време“, те предлагат два основни риска:

  1. Трябва да изложите достъп до вашия сървър от външно местоположение. Това създава риск за киберсигурност, дори когато се прави правилно.
  2. Ако не се предоставят данни за куката (например, ако сървърът ви е недостъпен), става невероятно тромаво да изтегляте тези данни, без да разчитате на целостта на външната платформа.

Склонни сме да използваме пакетно импортиране, когато е възможно, за да избегнем това, с по-кратки „интервали“, когато това се изисква за повече актуална информация.