构建组消息firebase

时间:2017-03-03 19:49:11

标签: firebase data-structures firebase-realtime-database nosql

我正在开发一个消息板应用程序,允许管理员向特定的一组人发送消息。人们可以订阅多个群组。

我需要一个用户列表,显示他订阅的群组的所有消息。我做了以下结构:

grep -f filedups file

但问题是,当管理员发送消息时,需要将消息添加到订阅该组的所有用户。这可能意味着10.000条消息的原子写入操作。我希望这会很慢,有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我认为以下JSON提供了有关如何解决问题的想法。

{
    "groups": [{
        "groupId": "001",
        "messages": [{
            "messageId": "001_1001",
            "subject": ""
            "message": ""
            "date": "<date>"
        }, {
            "messageId": "001_1002",
            "subject": ""
            "message": ""
            "date": "<date>"
        }]
    }, {
        "groupId": "002",
        "messages": [{
            "messageId": "002_1001",
            "subject": ""
            "message": ""
            "date": "<date>"
        }, {
            "messageId": "002_1002",
            "subject": ""
            "message": ""
            "date": "<date>"
        }]
    }],

    "users": [{
        "userId": 10001,
        "subscribedGroups": ["001", "002"]
    }, {
        "userId": 100012,
        "subscribedGroups": ["001"]
    }, {
        "userId": 100013,
        "subscribedGroups": ["002"]
    }]
}

注意:这不是您问题的实际解决方案。我以一种普遍的方式解决了这个问题。