Терминология¶
Fragment¶
Fragment (фрагмент) - фрагмент исполнямого кода. Можеть быть исходным кодом или скомпилированым бинарником. Перед исполнением фрагмент необходимо складывать в снапшот.
Program order¶
Program order - порядок операций чтения и записи явным образом определнный в исходном коде фрагмента.
DAM¶
DAM (Data Access Marker) - последовтельность байтов неограниченного размера (теоритически), по которой можно однозначно установить program order. Лексикографически больший DAM означает более позднюю операцию чтения или записи.
IO-resource¶
IO-resource (IO-ресурс) - внешний по отношению к TVM ресурс (чтение/запись данных). Например: REST-ресурс ячейка Acapella DB * файл локальной ФС
IO-cell¶
Ячейка, "привязанная" к IO-ресурсу. Чтение из IO-cell приводит к чтению из IO-ресурса.
Запись приводит к непосредственной записи IO-ресурс только после commit
(исключение REST-ресурсы).
CPVM Transaction¶
CPVM Transaction - группа исполнений фрагментов, представляющая из себя дерево задач, где корень - запускаемый фрагмент транзакции (корневой фрагмент).
TODO связь с AcapellaDB Transaction
AcapellaDB Transaction¶
AcapellaDB Transaction - "symbolizes a unit of work performed within a database management system (or similar system) against a database, and treated in a coherent and reliable way independent of other transactions" (wikipedia).
Worker¶
Worker (исполнитель/executor) - некий програмный компонент, способный исполнять определенные типы фрагментов. Один исполнитель может одновременно брать на себя выполнение нескольких фрагментов.
Snapshot¶
Snapshot (cнапшот) - единица деплоймента, группа файлов, в которой присутсвует как минимум один фрагмент. Снапшот идентифицируется по 3 компонентам:
- User ID - идентификатор владельца.
- Name - имя снапшота. Может быть несколько снапшотов с одинаковым именем, но разными тегами.
- Tag/Version - тег/версия снапшота.
Короткая форма записи такой идентфикации: <UserID>/<Name>/<Tag>
.
Снапшот может находится в двух 2 состояниях - заморожен/не заморожен. Замороженный снапшот можно исполнять, но нельзя модифицировать (и наоборот).