• polardb基础~使用场景和并行查询


    使用场景
    1 由于polardb本身构建是基础两个实例,存储花费比较大,所以需要的场景大概是以下几点
    1 程序本身需要做读写分离,由于polardb基础已经拥有一个读实例,和rds做对比,就节省了一个读实例的花费
    2 预估现有数据量和未来数据增长量的磁盘占用,尽量将磁盘成本控制降低,只保留有效的活跃数据,其他不必要的历史查询都放置在es/hdfs或者其他rds实例上
    3 使用场景本身不必要频繁的DDL或者在迁移前将DDL变更一次性做好,polardb本身对于DDL操作的成本还是有点高的,所有实例都是共享MDL锁,防止因为慢查询或者其他事务导致全局性的MDL锁等待
    4 设置好备份的保留机制,控制备份的成本花费
    5 慢查询做好监控,防止产生锁问题
    2 并行查询
    1 可以分为以下几个阶段
    1 版本并不支持任何并行查询
    2 版本支持有限场景的并行查询,大概有以下几个
    1 单表聚合函数的场景 sum() count()等
    2 多表并行JOIN的场景 各种join
    3 collector组件 负责做后续的GROUP BY、ORDER BY及LIMIT操作 组件只有一个,负责所有的线程结果
    2 基于什么
    1 必须基于成本,优化器进行判定,表扫描行数是否需要并行查询,否则可能极大浪费资源
    2 并行包括 并行读取到BUFF,并行进行处理 最后 由一个专门线程进行合并处理
    3 polardb如果使用了并行查询会在explain出现parallel scan(xx workers)关键特征 xx代表多少线程参与了活动
    3 补充
    1 如果想对比polardb和rds的性能,则需要按照同等条件下对比大SQL的查询性能
    2 polardb只有8.0版本才支持并行查询和ddl加速


  • 相关阅读:
    视图
    Adaboost算法
    关于友谊的残酷真相
    排序与搜索
    队列

    Xgboost集成算法
    川普“零容忍”政策:拆散移民家庭惹争议
    第八篇:使用字符串流对象进行格式转换
    第七篇:两个经典的文件IO程序示例
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/14416345.html
Copyright © 2020-2023  润新知