When I look this up online, everything indicates that it is the result of sediment having settled to the bottom of the water heater. However, if that’s the case, I’d expect it to happen predictably after using the hot water, especially after a shower. But this is not the case — the timing seems to be completely random. Furthermore, I notice that there are corresponding noises made elsewhere in my plumbing system, e.g. my upstairs toilet. Perhaps these symptoms are in line with the sediment issue, but I have not seen them mentioned anywhere.
Here are a couple audio clips: