diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2018-04-11 15:30:45 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2018-04-11 15:30:45 -0700 |
commit | 229b22cedf786d55af210c806864459b29c1b27d (patch) | |
tree | 919e27a33e21a828db54db51c774e2100cc9c29b /TODO | |
parent | 2c769d488334bc6aab9f65a7c66e18442949d482 (diff) | |
download | fatcat-229b22cedf786d55af210c806864459b29c1b27d.tar.gz fatcat-229b22cedf786d55af210c806864459b29c1b27d.zip |
fix test (with a skip)
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 34 |
1 files changed, 34 insertions, 0 deletions
@@ -0,0 +1,34 @@ + +Should probably just UUID all the (public) ids. + +Instead of having a separate id pointer table, could have an extra "mutable" +public ID column (unique, indexed) on entity rows. Backend would ensure the +right thing happens. Changelog tables (or special redirect/deletion tables) +would record changes and be "fallen through" to. + +Instead of having merge redirects, could just point all identifiers to the same +revision (and update them all in the future). Don't need to recurse! Need to +keep this forever though, could scale badly if "aggregations" get merged. + +Redirections of redirections should probably simply be disallowed. + +"Deletion" is really just pointing to a special or null entity. + +Trade-off: easy querying for common case (wanting "active" rows) vs. robust +handling of redirects (likely to be pretty common). Also, having UUID handling +across more than one table. + +## Scaling database + +Two scaling issues: size of database due to edits (likely billions of rows) and +desire to do complex queries/reports ("analytics"). The later is probably not a +concern, and could be handled by dumping and working on a cluster (or secondary +views, etc). So just a distraction? Simpler to have all rolled up. + +Cockroach is postgres-like; might be able to use that for HA and scaling? +Bottlenecks are probably complex joins (mitigated by "interleave"?) and bulk +import performance (one-time?). + +Using elastic for most (eg, non-logged-in) views could keep things fast. + +Cockroach seems more resourced/polished than TiDB? |