за счетчик айдишников обычно большая конкуренция в кластере. Как это вот все синхрогизировать, чтобы две записи с одинаковым ключом не сгенерились? Проще использовать UUID и проверять перед вставкой, чтотакого ключа в базе еще нет. С растущим интом такое тоже возможно, но в зависимости от степени конкуренции большая часть транзакций будет ретраится на этапе проверки, что такого ключа еще нет и производительность просто в 0 упадет.
// arrDataStaff - массив, в который я записываю
// objDataStaff - объект, значение которого изменяется в соседней функции,
// и после каждого изменения добавляется в массив (как указано ниже)
arrDataStaff.push(JSON.stringify(objDataStaff));