Firestore已经读取了每100K读数的配额和价格 . 我在基于关系的数据库中有很简单的任务,但它看起来像Firestore的开销:

  • 我有Firestore集合"articles",每篇文章都有字段"viewed_by_uids"作为Firebase用户UID的数组

  • 我已经阅读了100K篇文章(简称)

  • 我想为我的UID获取UNREaded文章

我是否真的需要通过分页来查询这个100K的readed文章,例如,每页50个项目来过滤它(通过我的弱移动网络发送太多数据)并最终获得UNreaded文章显示?

EDIT: clarifications 以下是我使用Kotlin在Android中创建"article"的方法:

data class Article (
val title: String, 
val text: String, 
val ownerUid: String, 
@ServerTimestamp val creationDate: Date? = null)

//将填充的文章写入firestore

val article = Article (title = "test title" text = "test text", ownerUid = FirebaseAuth.getInstance().uid!!)

val articleRef = FirebaseFirestore.getInstance()
            .collection(Article.COLLECTION_NAME)
            .document()
.set(article)
            .addOnFailureListener { ...just show error }
            .addOnSuccessListener { ...just show success }

显示不是由我写的文章列表是由 FirestoreRecyclerAdapter 与选项:

val query = FirebaseFirestore.getInstance()
            .collection(Article.COLLECTION_NAME)
            .orderBy("creationDate", Query.Direction.DESCENDING)
            .limit(ITEMS_PER_QUERY_LIMIT)

FirestoreRecyclerOptions.Builder<Task>()
                .setQuery(query, Task::class.java)
                .build()

现在我真的不明白如何过滤传入的项目,只显示ownerUid的文章!= FirestoreAuth.getInstance() . uid !!
我只是逐项隐藏RecyclerView根据LayoutParams - 疯了! :(

我想我需要自定义适配器 EXCLUDE 我的文章DocumentSnapshots?

  • 在这种情况下,这意味着我是否已经写了100K文章,我需要通过网络获取它们 TO JUST EXCLUDE AND DON'T SHOW ?