Firebase:维护用户名目录

Firebase: Maintain a Username Directory

我正在创建一个社交应用程序并想跟踪用户名是否已经存在。用户名列表应该会在未来增长,而我现在这样做的方式是 的键值对,如下所示:

name1: true,
name2: true

以上所有数据都将存储在一个文档中,每当我想查看用户是否存在时,我都会调用该文档并进行相应检查。但这就是问题所在,firebase 最大文档大小为 1MB,随着用户的增长,这可能会出现问题,因此想从 firebase 专家那里了解在 firestorerealtime database 中解决此用例的最佳方法是什么但由于我需要查询是否存在,实时数据库可能不太适合。

请注意,我不需要任何 firestore 查询功能,而只是检查记录中是否存在条目,如果不存在则添加它。

实时数据库没有 1MB 的限制(因为它没有文档的概念,一切都只是 JSON 的树),所以我通常将其用于索引用户名。

检查名称是否存在也很简单,在 JavaScript 中看起来像:

const usernames = firebase.database().ref('usernames');
usernames.child('name1').once((snapshot) => {
  if (snapshot.exists()) {
    ...
  }
});