Если вам действительно не нравятся множественные выбросы, вы можете попробовать некоторые операторы RxJS перед подпиской.
this.db.list('/' + this.user.uid + '/data).valueChanges().pipe(
buffer(interval(1000))
)
.subscribe(items=>{
console.log(items);
});
Например, это выдает массив значений в пределах одного секунды.
Если есть способ прослушивания , когда вы обновляете (или, скорее, подтверждение от сервера, что обновление прошло успешно), вы можете прослушать это, а затем просто получить текущее значение this.db.list
вместо каждого изменения значения по мере поступления.