• -Hedon🍭
    2024-06-13 来自湖北
    思考题: 行式存储和列式存储都有其更加适合的场景,我个人认为,一种数据库单纯支持一种存储格式,才有可能将这种存储格式够做到极致,对于某些单一固定的场景,选择行式存储或列式存储中某一个可能是更好的选择。 但是绝大多数情况下都不需要这种“极致”,相反“灵活性”能带来更大的收益。所以混合模式可能在未来会更具有发展潜力。因为它能够提供更大的灵活性和优异的性能,适应不同的工作负载需求。

    作者回复: 确实,其实还是由需求场景决定,像StarRocks虽然是个OLAP数据库,为了支持少数行实时数据快速更新,它的主键模型已经在用混存模式了

    
    3
  • 方舟勇士
    2024-06-13 来自广东
    我觉得应该是列式存储优先。技术以摩尔定律来发展,业务不扩张还倒退,没有那么多业务数据要写入,列式存储再优化优化,是不是就够用了。

    作者回复: 在大数据存储与批量分析存储场景下,确实是列式存储优先,但是列式存储对实时数据写入和频繁更新、需要事务的一些场景,支持相对不佳,所以从当前技术来看,还是得按场景使用不同方案,混合存储其实也是用空间来换时间。

    
    2
  • 林龍
    2024-06-14 来自广东
    列式存储多条件是如何获取?? 假如我有三个字段(时间,区域,金额)。需要统计今天华南地区的总额。用实现下面哪个方式。 1.获得时间列条件查找偏移量数据,获得区域条件查找偏移量数据,然后求交集去金额列求和。 2.先从时间列条件查找偏移量数据如只有(1,2,3),去区域条件查找偏移量数据(只在1,2,3)里面查询。去金额列求和。 1.是可以在两个条件并发获取,最终求并集 2.是条件2依赖条件1,虽然不能并发获取,但是查找的数据会少很多。
    
    
  • xzy
    2024-06-14 来自河北
    列式存储通常很适合压缩 这个列式存储的非常重要的点,老师没有讲到。
    
    