You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issues #508 (Cache secondary keys with Vary) and #731 (Multi-layer firewall) actually require secondary index (for Vary headers and each filtered HTTP header correspondingly). In fact there could be any number of secondary indexes (imagine a filtering rule with many HTTP headers). Exact design is TDB, but secondary index, as opposed to traditional DBMSes, can be implemented as HTrie's subtree (e.g. a simple heap) directly placed in a HTrie's bucket. The features (issues) mentioned above must be reworked in context of the change.
See secondary indexed data size quotas in #515 to limit Vary impact on the CDN node cache.
Primary index
The current HTrie allows either to purge content by specific key (single web page) or fully, but purging content on a query like `curl -X PURGE -D – "https://www.tempesta-tech.com/blog/*" would be an issue - we have to scan the whole database.
It seems we need another index for web content, probably patricia tree will work much better. It also allows to grow the index by 2ndary, 3rdly etc. indexes almost infinitely. (Do we need to save in the index which data it actually stores, e.g. Host, Uri, a vary header(s)?) Probably plugable indexes from #516 should be done in this task.
Spatial indexes
Some use cases require several primary indexes, e.g. the cache can be purged by URL and by Vary, e.g. to purge all French language resources for a particular vhost.
The text was updated successfully, but these errors were encountered:
Seconday indexes
Issues #508 (Cache secondary keys with Vary) and #731 (Multi-layer firewall) actually require secondary index (for Vary headers and each filtered HTTP header correspondingly). In fact there could be any number of secondary indexes (imagine a filtering rule with many HTTP headers). Exact design is TDB, but secondary index, as opposed to traditional DBMSes, can be implemented as HTrie's subtree (e.g. a simple heap) directly placed in a HTrie's bucket. The features (issues) mentioned above must be reworked in context of the change.
See secondary indexed data size quotas in #515 to limit Vary impact on the CDN node cache.
Primary index
The current HTrie allows either to purge content by specific key (single web page) or fully, but purging content on a query like `curl -X PURGE -D – "https://www.tempesta-tech.com/blog/*" would be an issue - we have to scan the whole database.
It seems we need another index for web content, probably patricia tree will work much better. It also allows to grow the index by 2ndary, 3rdly etc. indexes almost infinitely. (Do we need to save in the index which data it actually stores, e.g. Host, Uri, a vary header(s)?) Probably plugable indexes from #516 should be done in this task.
Spatial indexes
Some use cases require several primary indexes, e.g. the cache can be purged by URL and by Vary, e.g. to purge all French language resources for a particular vhost.
The text was updated successfully, but these errors were encountered: