database - 数据库决策 - Cassandra 或 PostGres
问题描述
我正在尝试确定是否使用 PostGres 或 Cassandra 数据存储。最初将通过以下方式将数据插入到这个新存储中: 1. 每天插入 100MB 的批处理。2. 稍后以每秒 20 次操作的速度现有批处理 + CRUD 操作。
通过阅读文章和与其他人的各种对话,我确定:
**Cassandra**
Type: NoSql
Read Speed: Fast
Write Speed: Slow
Storage: Distributed Cluster
Scaling: Horizontal
**PostGres**
Type: Relational
Storage: Single Instance
Scaling: Horizontal
我一直在阅读的一些资源:
https://www.quora.com/How-do-you-compare-Postgres-to-Cassandra-for-big-data-application
https://www.quora.com/How-do-you-approach-choosing-a-database-architecture-and-design
https://www.thegeekstuff.com/2014/01/sql-vs-nosql-db/?utm_source=tuicool
在做出决定之前还应考虑哪些其他因素?我是否应该在决策过程中包括其他数据点,例如确定从表中读取、写入、更新、删除的预期数量?
我可以使用 PostGres,然后在其他时间迁移到 Cassandra,但更愿意避免数据库迁移过程的开销。
解决方案
我使用 postgres,因为它对开发人员来说更可定制,而且它是一个 nosql 数据库,结合了 sql db 中最漂亮的部分。
推荐阅读
- vue.js - .NET Core 3 Web API + SPA 应用程序 (vue) 的 Dockerfile
- vue.js - 追加表单不添加文件对象并返回(二进制)
- javascript - 如何使用 jQuery 删除动态添加的行
- html - 如何解决 Safari 中的边框半径问题?
- javascript - 无效的元素类型:期望字符串或类函数
- selenium - 我收到以下错误“请保护 ChromeDriver 和相关测试框架使用的端口,以防止恶意代码访问。”
- usb - 使用 Yubikey Nano 时笔记本电脑空闲功耗调整
- c# - 如何控制 WPF 应用程序启动时默认“选择”的元素 - 即启动时默认键盘光标在哪里?
- php - 如何对php文件中两行或多行的总和运行sql查询
- c# - 模式匹配和范围 - If 语句