ECS Table Joins
Classic SQL tables are stored using B+ trees, so the data stays sorted by primary key.
That is good for SQL, since majority of the time is spent loading the data into memory.
But using ECS as a replacement for OOP requires our tables to be fast.
So here is an article about efficiently implementing ECS tables and doing the inner joins:
https://www.dataorienteddesign.com/dodbook/node9.html#SECTION00940000000000000000
Inner join is required when some system operates on several components.
Apparently it is possible to cache such join into an internal "super component" table, which gets invalidated on change.