Умови застосовності, архітектура та кількісні моделі апаратного другого рівня у дворівневій розподіленій обробці подій
Main Article Content
Анотація
Актуальність. Події, що мають спільний ідентифікатор агрегата, є функціонально залежними: їх слід застосовувати до стану проєкції строго послідовно, тому пропускна здатність одного агрегата обмежена одним послідовним виконавцем, горизонтальне масштабування не підвищує цю межу, а програмні виконавці додатково демонструють «хвости» затримок, спричинені паузами. Метою статті є визначення формальних умов, за яких другий (проєкційний) рівень дворівневої розподіленої архітектури обробки подій доцільно обчислювати в реконфігурованій апаратурі, а не в програмному забезпеченні, а також побудова й валідація кількісних моделей такої реалізації. Завдання: формалізація проєкції як поключового автомата-перетворювача станів; виведення атрибутів застосовності та умов прийняття рішень; специфікація еталонної архітектури рівня серіалізації, апаратного ядра та супровідного програмного забезпечення хоста; побудова і валідація моделей пропускної здатності, затримок, вартості, ущільненого (конфльованого) вихідного потоку та контрольних точок. Методи: теорія автоматів із регістрами вартості та об'єднаних напівґраток, теорія масового обслуговування, теорія відновлення, модель контрольних точок Янга–Делі, імітаційне моделювання дискретних подій. Наукова новизна: уперше запропоновано формальний апарат застосовності — шість атрибутів зі сполучними твердженнями та чотири умови прийняття рішень, — який точно визначає, які алгоритми обробки подій виграють від апаратного проєкційного рівня; уперше отримано точний замкнений вираз для інтенсивності вихідного потоку та середнього віку інформації кеша останнього значення з обмеженням темпу, що живиться пуассонівським потоком оновлень; удосконалено дворівневу архітектуру з обробкою в оперативній пам'яті шляхом перенесення обчислення проєкції в апаратне ядро з контрактом серіалізації з фіксованими зміщеннями; дістали подальшого розвитку кількісні моделі дворівневої обробки подій для апаратної основи. Практична значимість: поверхні прийняття рішень і криві беззбитковості, що дають змогу практикам обґрунтовано обирати між апаратним рівнем, оптимізованим програмним забезпеченням і потоковими каркасами, а також принципи реалізації та протокол верифікації, які знижують ризики апаратного шляху Результати: окремий апаратний прискорювач забезпечує обробку великого обсягу подій із короткими пакетами за секунду, суттєво перевершуючи звичайні ядра процесорів та стандартні показники послідовної обробки програмним забезпеченням; він підтримує наднизькі та передбачувані затримки хвоста, повністю усуваючи піки зупинок, притаманні програмному забезпеченню; досягає високої економічної ефективності порівняно з програмними альтернативами в масштабі за сучасних цін у хмарних середовищах; а також суттєво зменшує вихідний трафік розсилки аукціонів за збереження обмеженого середнього показника застарілості даних. Висновки: перенесення другого рівня в апаратуру є контрактом із шести атрибутів; там, де контракт виконується, виграш є структурним, а не поступовим, а там, де він порушується, правильною основою залишаються потокові каркаси. Усі аналітичні вирази підтверджено результатами моделювання з нехтовно малою відносною похибкою у найгіршому випадку.

