不使用关系数据库的充分理由? [英] Good reasons NOT to use a relational database?
问题描述
您能否指出替代数据存储工具并给出使用它们而不是旧的关系数据库的充分理由?在我看来,大多数应用程序很少使用 SQL 的全部功能——看看如何构建一个无 SQL 的应用程序会很有趣.
Can you please point to alternative data storage tools and give good reasons to use them instead of good-old relational databases? In my opinion, most applications rarely use the full power of SQL--it would be interesting to see how to build an SQL-free application.
推荐答案
文件系统中的纯文本文件
Plain text files in a filesystem
- 创建和编辑非常简单
- 用户可以使用简单的工具(即文本编辑器、grep 等)轻松操作
- 高效存储二进制文档
磁盘上的 XML 或 JSON 文件
XML or JSON files on disk
- 同上,但具有更多验证结构的能力.
电子表格/CSV 文件
Spreadsheet / CSV file
- 商业用户易于理解的模型
Subversion(或类似的基于磁盘的版本控制系统)
Subversion (or similar disk based version control system)
- 对数据版本控制的支持非常好
Berkeley DB(基本上是基于磁盘的哈希表)
Berkeley DB (Basically, a disk based hashtable)
- 概念上非常简单(只是未键入的键/值)
- 很快
- 没有管理开销
- 支持我认为的交易
- 我相信很像 Berkeley DB,但托管
- 托管且高度可扩展
- 按文档键值存储(即灵活的数据模型)
- 文档焦点
- 半结构化/基于文档的数据的简单存储
本地语言集合(存储在内存中或序列化在磁盘上)
Native language collections (stored in memory or serialised on disk)
- 非常紧密的语言集成
自定义(手写)存储引擎
Custom (hand-written) storage engine
- 在所需用例中可能具有非常高的性能
我不能声称对它们了解很多,但您可能还想查看 对象数据库系统.
I can't claim to know anything much about them, but you might also like to look into object database systems.
这篇关于不使用关系数据库的充分理由?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!