Firebase 结构化Firestore数据以实现高效读取
假设我有一个显示餐馆列表的应用程序&要显示1000家餐馆 我的第一印象是创建一个餐厅的Firebase 结构化Firestore数据以实现高效读取,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,假设我有一个显示餐馆列表的应用程序&要显示1000家餐馆 我的第一印象是创建一个餐厅的集合,每个餐厅都是这个集合中的文档 上述方法的问题是,对于每个用户云Firestore,将注册1000次读取 我的问题是,是否有更好的方法来存储餐厅,以减少阅读次数 我的第一印象是创建一个餐厅集合,每个餐厅都是这个集合中的一个文档 是的,这是正确的方法 上述方法的问题是firestore将为每个用户注册1000次读取 只有在一次读取所有文档的情况下,您才会被收取1000次读取操作的费用。但这不是正确的方法,你需
集合
,每个餐厅都是这个集合中的文档
上述方法的问题是,对于每个用户云Firestore,将注册1000次读取
我的问题是,是否有更好的方法来存储餐厅,以减少阅读次数
我的第一印象是创建一个餐厅集合,每个餐厅都是这个集合中的一个文档
是的,这是正确的方法
上述方法的问题是firestore将为每个用户注册1000次读取
只有在一次读取所有文档的情况下,您才会被收取1000次读取操作的费用。但这不是正确的方法,你需要限制你得到的数据。关于如何实现这一点,请查看有关的官方文件
另一种最简单的方法是以较小的数据块加载数据。这种做法称为分页,可以非常简单地在CloudFireStore中使用startAt()
或startAfter()
方法
对于Android,是一种推荐的方法,通过将查询游标与limit()
方法相结合,可以对查询进行分页。为了更好地理解,我还建议您看看这个
我的问题是,是否有更好的方法来存储餐厅,以减少阅读次数
要回答您的问题,问题不在于存储数据的方式,而在于读取数据的方式
我的第一印象是创建一个餐厅集合,每个餐厅都是这个集合中的一个文档
是的,这是正确的方法
上述方法的问题是firestore将为每个用户注册1000次读取
只有在一次读取所有文档的情况下,您才会被收取1000次读取操作的费用。但这不是正确的方法,你需要限制你得到的数据。关于如何实现这一点,请查看有关的官方文件
另一种最简单的方法是以较小的数据块加载数据。这种做法称为分页,可以非常简单地在CloudFireStore中使用startAt()
或startAfter()
方法
对于Android,是一种推荐的方法,通过将查询游标与limit()
方法相结合,可以对查询进行分页。为了更好地理解,我还建议您看看这个
我的问题是,是否有更好的方法来存储餐厅,以减少阅读次数
要回答您的问题,问题不在于存储数据的方式,而在于读取数据的方式