Database-Recommendation
Python - 指數增長數據庫的最佳數據庫?
所以我正在用 Python 製作一個 Discord(社交媒體)機器人
discord.py-rewrite
,我需要保存很多伺服器和使用者的資訊(例如他們有多少錢,他們有什麼物品……)。這可以成倍增長。我的問題是,那時最好使用的數據庫是什麼(sqlite3
,PostGreSQL/asyncpg
,MySQL
…)?我目前使用sqlite3
,但我聽說它對於呈指數增長的數據庫來說還不夠好。
根據您僅儲存幾千行的評論,您幾乎可以使用任何數據庫產品。大多數關係數據庫只有在它們大很多數量級時才開始出現問題,比如 TB 的數據。
請記住,一些免費產品,如 SQL Server Express Edition 確實有大小限制,但正如您所概述的,您不會達到這些限制。SQL Server Express Edition 的最大數據大小為 10GB,連結:https ://www.microsoft.com/en-us/sql-server/sql-server-2019-comparison#CP_StickyNav_1 。
在您選擇的平台上找到了限制,https://www.sqlite.org/limits.html
最大數據庫大小
- 每個數據庫都由一個或多個“頁面”組成。在單個數據庫中,每個頁面的大小相同,但不同數據庫的頁面大小可以是 512 和 65536 之間的 2 的冪,包括 512 和 65536。數據庫文件的最大大小為 2147483646 頁。在最大頁面大小為 65536 字節時,這相當於最大數據庫大小約為 1.4e+14 字節(140 TB,或 128 TB,或 140,000 GB 或 128,000 GB)。
- 此特定上限未經測試,因為開發人員無法訪問能夠達到此限制的硬體。但是,測試確實驗證了當數據庫達到底層文件系統的最大文件大小(通常遠小於最大理論數據庫大小)以及數據庫由於磁碟空間耗盡而無法增長時,SQLite 的行為是否正確和健全。
就大小而言,您應該沒問題。關於動態數據類型的東西當然很有趣,而且你應該注意一些事情。