Показатели базы данных Firestore в реальном времени не соответствуют работе с базой данных?

# #java #android #google-cloud-firestore

Вопрос:

Я сравниваю показатели чтения и записи из моей новой учетной записи Firestore с первым запуском некоторого кода базы данных, но они не совпадают.

Вот код, который я запускал только один раз в Android:

 public class MainActivity extends AppCompatActivity {

    private FirebaseFirestore db;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        db = FirebaseFirestore.getInstance();

        Map<String, Object> user = new HashMap<>();

        for(int i = 0; i < 1000; i  ) {
            user.put("value", String.valueOf(i));
            db.collection("files").document(String.valueOf(i)).set(user);
        }
    }
}
 

и вот показатели:

введите описание изображения здесь

Почему я получил более 5000 чтений и только 414 записей?

Комментарии:

1. У вас открыта консоль Firebase?

2. Да, но я уже совершил другие транзакции с базой данных. ЛОЛ, я на самом деле читаю страницу вашего сайта о сокращении Firestore 🙂

3. Так что это ожидаемое поведение, верно? Поскольку вы уже совершили другие транзакции с базой данных.

4. О, я понимаю, к чему вы клоните…. консоль наблюдает за каждым изменением, происходящим в режиме реального времени, которое действует как другое устройство, подключенное к базе данных?

5. Да, это правильно.

Ответ №1:

Консоль наблюдает за каждым изменением, происходящим в режиме реального времени, которое действует как другое устройство, подключенное к базе данных.

Если у вас открыта консоль, скорее всего, именно по этой причине вы видите большое количество операций чтения. Когда ваше приложение активно используется, оставлять консоль открытой — не такая уж хорошая идея.