python最常用的三个数据库

上周 谈谈Python数据库 SQLite MySQL PostgreSQL 这三个其实是最常用的SQLite。
光的选择 2 02 3 年 我已经使用过 SQLite 好几次了。
本地开发时 以记事本软件为例。
请插入.db 文件。
与sqlite3 模块直接连接 它确实可以开箱即用,但 SQLite 存在问题。
2 02 3 年 3 月 我测试过 同时写入数据可能会导致问题 例如5 个线程同时写入 卡住了 所以SQLite不适合 高并发Web应用程序MySQL Web开发主流 2 02 3 年 我的朋友 打造电子商务平台 使用MySQL 腾讯云托管 性能确实稳定。
还有很多链接库 mysql-连接器-python PyMySQL 会做的 还支持 ORM。
SQLAlchemy 用得很多,但 MySQL 也有它的缺点。
2 02 3 年 1 月 调试了该错误。
由于MySQL的锁定机制 查询速度慢 这可能会导致整个应用程序崩溃。
PostgreSQL 在这个 PostgreSQL 中要好得多。
用于复杂场景 2 02 3 年 我最近从事地理信息系统方面的工作。
只需使用 PostgreSQL 支持 JSON 格式。
还提供空间数据 psycopg2 连接 还支持异步 asyncpg 可扩展性确实比MySQL更好。

补充说明 2 02 3 年 非关系型数据库Redis 我也用过缓存 MongoDB 文档存储也可以 但是关系型数据库 Python 仍然是生态系统的主流吗? 选择时需要看现场 轻量级原生 SQLite 网页开发MySQL 复杂的业务 PostgreSQL 这取决于你

sqlite是什么意思

sqlite不适合生产吗

坦白说,SQLite并不是完全不适合生产环境。
其实这个很复杂,因为这取决于具体的业务场景。
我们先来说说最重要的事情。
对于小型应用程序,例如个人博客或小部件,数据量和并发量都比较小,SQLite的性能相当不错。
去年我们跑的一个项目,数据量不到百万,使用SQLite非常流畅。

还有一点是,SQLite也非常适合嵌入式系统,比如物联网设备和移动APP本地存储,因为SQLite使用的资源非常少,仅使用几十KB的内存。

我一开始以为SQLite能够轻松处理高并发场景,但后来发现我错了。
尤其是高并发写入时,SQLite文件级锁会导致锁争用。
当一张表同时写入超过1 00QPS时,很容易出现问题。
另一个重要的细节是,在处理大量数据时,SQLite查询性能会大幅下降,不适合超过千万级的数据量。

不过也有一些优化建议,比如开启WRITEAHEADLOG模式来提高并发读性能或者分表防止一张表变得太大。
还有一点就是可以考虑使用Redis这样的缓存来减少对数据库的直接读写。
对于大型应用,我觉得可以考虑混合架构,核心业务使用MySQL/PostgreSQL,非核心场景使用SQLite。
说实话,很多人都没有注意到这一点,但我认为值得一试。

常见的数据库有哪些

记得当时在一家创业公司做项目的时候,老板很强调数据库的选择。
当时,我们队遇到了麻烦。
项目需求复杂,数据量大。
在考虑成本的同时保证效率很重要。
最终,我们选择了 MySQL,因为它便宜、开源、免费且稳定。
使用几个月后,没有出现什么大的问题,数据读写速度也还好。
然而有一次,我突然接到一个紧急任务,需要在短时间内处理大量的数据。
正因为如此,MySQL 变得有点拥挤。
等等,还有别的事。
当时我突然发现,如果我们选择Oracle或者IBM DB2 ,情况可能就不是这样了。
不过,这也提醒我们,数据库选型确实要根据实际需求来选择。