Naf*_*Kay 5 database non-relational-database relational-database
数据库中的最新热点似乎集中在非关系数据库上.为什么?这似乎适得其反.例如,以关系方式表达我的数据对我来说更有意义(Django + SQL中的表示例代码):
class Post(models.Model):
name = models.CharField()
created = models.DateTimeField(auto_now_create = True)
class Comment(models.Model):
text = models.TextField()
post = models.ForeignKey('Post')
created = models.DateTimeField(auto_now_create = True)
Run Code Online (Sandbox Code Playgroud)
SQL:
create table post (id int primary key auto_increment,
name varchar,
created datetime);
create table comment(id int primary key auto_increment,
text text,
post_id int,
created datetime,
foreign key post_id references post(id));
Run Code Online (Sandbox Code Playgroud)
SQL的强大之处在于这些信息中可以表示 这么多的方式.当然,存在整个对象关系映射问题,但我将其视为一个特征,而不是一个问题.使用SQL,我可以获取比昨天更早的给定帖子的所有不同注释,将所有这些注释整理在一起,并生成统计信息.可以为非关系数据库做同样的事情吗?
使用非关系数据库(如MongoDB)似乎也会影响性能,因为您会立即获取整个对象图,而不是您最不需要的对象图.
有人可以向我解释使用非关系数据库的好处是什么?
| 归档时间: |
|
| 查看次数: |
11222 次 |
| 最近记录: |