>Each post gets 2 HLL counters, one positive votes and one negative. When a user upvotes or downvotes a post, their id is submitted to the corresponding HLL counter.
It shouldn't be an issue given that HLL is approximate and that relatively few votes are undone. You could also debounce the vote before recording it in the counter, at the cost of a small delay.
Ya. I would be curious at the false positive rate for this. For a website with millions of members and few voting rings you would need the false positive rate to be really really low for this to work
Ye gods, what a waste of time. This is what you get when you let reddit brogrammers run away with their own pedestrian imaginations.
To keep a count of uniques, you have
to store every IP address that you
ever see. And upon receiving a new IP
address, you have to first check that
the new IP address has not been run
across before, and only then do you
increment the site counter. Under the
best of situations, the storage and
the computation probably scale
as O(log(n)).
Okay, guy. Scamper off back to your SEO click-bait advertising gif banner day job, and don't work on anything important.
The seas are boiling the foundations of the ecosystem in a stew of toxic waste and plastic. Species are going extinct. Governments are waging wars with robots, while starving countries are crushed, bought and sold wholesale, and spy satellites are enumerating all of us, as we walk to seven eleven for another pack of smokes, and here's an article about tracking unique users by... checking their... IP adresses...
This is all just an over-engineered way of saying:
"If a person's lifetime tally of all unique fans (say: 150 different people, cumulative) consistently matches the typical number of unique fans per thread/article (say: ~135 on any particular post) then those fans are probably employees with vested interests"
(in other words, it's the same people upvoting that guy every time, and they're all in a gang)
You don't need big O notation and hash tables to conflate that idea.
Third, you wouldn't be able to undo your vote.