想请教您,在flask中使用sqlalchemy对数据库(比如mysql)分库和分表的最佳实践怎么做?

来源:4-10 ORM与CodeFirst区别

null_386

2019-06-03

您好,您提到flask sqlalchemy对数据库横向分片的支持,我看了sqlalchemy官方文档和示例代码,但还是不太理解该如何使用。

想请教您,在flask中使用sqlalchemy对数据库(比如mysql)分库和分表的最佳实践怎么做?

拜谢!

写回答

1回答

7七月

2019-06-05

我其实不建议水平切割用ORM,因为不太灵活。当遇到水平切割的时候最好使用原生的SQL自己来封装。它这个文档里我看了下,主要是bind和mapper这两个方法,它其实是在内部对水平表做了一个关联,具体的还需要实践,我也没有用Sqlalchemy做过这个水平切割,大数据量的场景以前都是用Java做的。Python我之前2个项目都是用的缓存来解决的性能问题。

0
2
null_386
另外对于交易类型的表,最近接触到一个叫 event sourcing 的东西,非常适合解决我目前业务的读写性能问题,用空间换时间。缓存和db可能会有同步问题,对于实时性不高,以及修改不频繁但查询频繁的数据,我也会考虑使用缓存。 https://www.imooc.com/article/40858
2019-06-14
共2条回复

Python Flask高级编程之从0到1开发《鱼书》精品项目

7月老师深入浅出剖析Flask核心机制,和你一起探讨Python高级编程

2735 学习 · 1267 问题

查看课程