【问题标题】:Too many schemas in Realm a bad thing?Realm 中的模式太多是件坏事吗?
【发布时间】:2018-02-11 00:36:32
【问题描述】:

我们有一个用例,我们的数据库需要许多相似但不同的模式。这些模型中的大多数平均只有 0 到 4 行,除了少数之外,大多数模型根本不会使用。

我们添加的每个产品大约需要 2-4 个架构(取决于树级别,因为有些需要列表中的列表),我们计划添加许多产品。完成后,我们可以看到超过 100 个模式,每个模式都有最少的行数。

所以问题来了:

  • 将这么多模式加载到 Realm 中是否会导致性能下降?

  • 是否存在与具有许多模式的性能无关的明显缺点?

另一种方法是使用共享属性创建“一刀切”模式,并具有用于存储序列化 json 数据的 misc 属性。这似乎很老套,我可以看到由此产生的问题。优点是我们只有少数模式。

【问题讨论】:

    标签: javascript react-native database-design orm realm


    【解决方案1】:

    对此我没有客观的答案,但是,我将分享一些我实施 Realm 的经验。

    我的应用程序有大约 50 个模式,我还没有发现任何问题。

    我之前也尝试过您的替代解决方案(一刀切),我几乎可以肯定这个解决方案比拥有太多模式要糟糕得多。您将丢失反序列化/序列化 json 数据的时间会让您的应用程序变得非常慢。

    我希望它对您有所帮助,或者至少让您了解前进的方向。

    【讨论】:

      【解决方案2】:

      创建新 Realm 文件和打开现有文件的时间会随着架构中对象类型的数量而有所增加,因此理论上这最终可能很重要。实际上,在您拥有数百种对象类型之前,创建或打开文件的固定成本会相形见绌,即便如此,它也可能不会慢到足以引起关注。

      一旦打开 Realm 文件,就不会对大量对象类型产生性能影响。

      【讨论】:

        猜你喜欢
        • 2011-12-12
        • 2020-02-12
        • 2010-11-15
        • 2010-09-21
        • 2013-01-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多