对于分布式数据库在多表关联、聚合查询性能偏弱的问题,有什么思路吗?

  在分布式数据库的实际使用中,在充分利用分片将表进行分片处理后,从实际使用过程中可以发现,对于复杂查询、多表关联、聚合查询等这类较为复杂,涉及表较多的SQL,分布式数据库的查询性能比较差,尤其是TDSQL这种类似分布式中间件型的分布式数据库,而oceanbase会好很多,但对比传...显示全部

  在分布式数据库的实际使用中,在充分利用分片将表进行分片处理后,从实际使用过程中可以发现,对于复杂查询、多表关联、聚合查询等这类较为复杂,涉及表较多的SQL,分布式数据库的查询性能比较差,尤其是TDSQL这种类似分布式中间件型的分布式数据库,而oceanbase会好很多,但对比传统集中式的Oracle仍没有优势。
  现在主流的思路是,将这类处理交由程序去解决,数据库仅作简单的SQL处理,这种用法已经渐渐的趋于KV数据库的使用思想了,那么这种思路合理吗?
  当然,现在是个厂商都在吹HTAP,但不知道,从各家的使用上,真正能做到分布式数据库HTAP的,有哪些产品?
  假设分布式数据库HTAP技术能在三年之后趋于成熟,那么对我们现在分布式数据库的使用习惯和程序开发思维,又有哪些启发?

收起
参与12

查看其它 3 个回答hanfeng_twt的回答

hanfeng_twthanfeng_twt数据库架构师SphereEx

个人观点:
1.尽量简化数据库的使用,特别是在分布式架构下,一方面可以减少复杂度,一方面减少可能的抖动。
2.纯原生分布式架构(如OB、TiDB)处理复杂查询,较分库分表的还是有优势的,可以在一定程度上解决部分复杂分析问题。
3.Oracle的优化器及软硬一体能力,表现比国产库好很多,这是短期内无法改观的。
4.更为复杂的查询需求,可考虑仍然使用ETL+MPP或流式查询来解决。
5.HTAP的实现能力,各产品有差异;对于开发上要有针对性的设计。

金融其它 · 2022-06-23
浏览820

回答者

hanfeng_twt
数据库架构师SphereEx
擅长领域: 数据库服务器分布式系统

hanfeng_twt 最近回答过的问题

回答状态

  • 发布时间:2022-06-23
  • 关注会员:7 人
  • 回答浏览:820
  • X社区推广