在分布式数据库的实际使用中,在充分利用分片将表进行分片处理后,从实际使用过程中可以发现,对于复杂查询、多表关联、聚合查询等这类较为复杂,涉及表较多的SQL,分布式数据库的查询性能比较差,尤其是TDSQL这种类似分布式中间件型的分布式数据库,而oceanbase会好很多,但对比传统集中式的Oracle仍没有优势。 现在主流的思路是,将这类处理交由程序去解决,数据库仅作简单的SQL处理,这种用法已经渐渐的趋于KV数据库的使用思想了,那么这种思路合理吗? 当然,现在是个厂商都在吹HTAP,但不知道,从各家的使用上,真正能做到分布式数据库HTAP的,有哪些产品? 假设分布式数据库HTAP技术能在三年之后趋于成熟,那么对我们现在分布式数据库的使用习惯和程序开发思维,又有哪些启发?
个人观点:1.尽量简化数据库的使用,特别是在分布式架构下,一方面可以减少复杂度,一方面减少可能的抖动。2.纯原生分布式架构(如OB、TiDB)处理复杂查询,较分库分表的还是有优势的,可以在一定程度上解决部分复杂分析问题。3.Oracle的优化器及软硬一体能力,表现比国产库好很多,这是短期内无法改观的。4.更为复杂的查询需求,可考虑仍然使用ETL+MPP或流式查询来解决。5.HTAP的实现能力,各产品有差异;对于开发上要有针对性的设计。
关于TWT使用指南社区专家合作厂商入驻社区企业招聘投诉建议版权与免责声明联系我们 © 2024talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30