代码之家  ›  专栏  ›  技术社区  ›  Ashwin Prabhu

实体中有大量属性会影响数据存储的读/写性能吗?

  •  1
  • Ashwin Prabhu  · 技术社区  · 16 年前

    我想知道在BigTable中读取或写入具有大量属性的实体是否会对性能产生影响。

    由于这些大型实体仅由它们的键获取,并且从不参与任何查询,因此我想知道是否应该序列化实体pojo并将其存储为blob。使用@Serialized注释在Objectify中实现这一点非常简单。我知道,通过序列化实体并将其存储为blob,可以使blob对任何其他程序或非Java代码都完全不透明,但这并不是一个问题。

    2 回复  |  直到 16 年前
        1
  •  3
  •   iamgopal    16 年前

    属性的数量总是有开销的。序列化也没有多大帮助,因为它只是将处理从一个点转移到另一个点。

    我拥有的实体的属性数高达25个,我几乎可以根据所有的请求按键获取它们。性能上的差异对我来说微不足道。几乎没有+-1ms。性能问题通常发生在查询部件上。数量 未编制索引 财产对业绩影响不大。而索引属性会因索引的修改而显著延迟put。

        2
  •  2
  •   Sudhir Jonathan    15 年前

    纯粹就我对它的工作原理所知甚少而言,我想说拥有一堆未编制索引的属性和序列化整个东西没有什么区别。