Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 正在寻找一个消除数据库的webapp框架_Python_Nosql_Web Frameworks_Ram_Object Oriented Database - Fatal编程技术网

Python 正在寻找一个消除数据库的webapp框架

Python 正在寻找一个消除数据库的webapp框架,python,nosql,web-frameworks,ram,object-oriented-database,Python,Nosql,Web Frameworks,Ram,Object Oriented Database,在过去一年左右的时间里,我一直在和Django一起发展 好好享受吧。但有时我发现ORM有点像 紧身衣。我来回移动到数据库的所有数据 数据库可以很容易地放入1GB的RAM中。即使这个项目发展迅速 几个数量级,它仍然可以容纳1GB 我想要一个解决方案,我的应用程序只需要从磁盘读取 启动时,但在更新对象时隐式写入磁盘。我 不要太在意这可能给我带来的任何提速。什么 我真正想要的是增加灵活性。如果我有问题 可以很好地与链表、树或其他对象匹配 数据结构,我不应该把它移植到关系数据库上 数据库 Python很

在过去一年左右的时间里,我一直在和Django一起发展 好好享受吧。但有时我发现ORM有点像 紧身衣。我来回移动到数据库的所有数据 数据库可以很容易地放入1GB的RAM中。即使这个项目发展迅速 几个数量级,它仍然可以容纳1GB

我想要一个解决方案,我的应用程序只需要从磁盘读取 启动时,但在更新对象时隐式写入磁盘。我 不要太在意这可能给我带来的任何提速。什么 我真正想要的是增加灵活性。如果我有问题 可以很好地与链表、树或其他对象匹配 数据结构,我不应该把它移植到关系数据库上 数据库

Python很好,但其他语言也不错。我在探险队 在这一阶段。我想了解解决方案是什么 在外面。在谷歌上搜索这个问题时,我得到了很多关于 不同的Nosql项目。但据我所知,Nosql就是关于 当关系数据库因太多而无法使用时,该怎么办 很多数据。我真的处在另一个极端。我有很多钱 很少有数据表明关系数据库实际上是过度使用的

是一个 谷歌搜索这个问题时出现的另一个问题 我知道Zope和ZODB。我在很久以前和Zope有过一点接触 我不喜欢它。但是读了一点对象数据库让我觉得 可能是我要找的。然后,他们又一次失败了 吸引用户让我怀疑。对象数据库已经出现 很长一段时间了,还没有流行起来。我猜 这意味着它们有问题吗?

如果您正在寻找“将数据结构存储在内存中”和“将其备份到磁盘”,那么您实际上是在寻找一个持久缓存系统,并且完全符合要求

如果您想使用django,有一个内置的很棒的缓存系统,可以通过project插入redis后端。redis容纳的更多数据结构具有到python数据结构的一对一映射,因此非常无缝

我不确定跳过数据库本身的概念是否是个好主意。数据库在聚合、注释、关系等方面提供了巨大的能力,所有这些都在可接受的性能级别内,直到达到真正的大规模

也许另一个想法是使用。SQLite现在无处不在,它已经消失在基础设施中。它是内置的、Android应用程序、iphone应用程序,并拥有所有标准库的支持。它也是一款开发和测试都非常出色的软件,很难反对使用它。

如果您正在寻找“在内存中存储数据结构”和“将其备份到磁盘”,那么您确实在寻找一个持久缓存系统,并且完全符合要求

如果您想使用django,有一个内置的很棒的缓存系统,可以通过project插入redis后端。redis容纳的更多数据结构具有到python数据结构的一对一映射,因此非常无缝

我不确定跳过数据库本身的概念是否是个好主意。数据库在聚合、注释、关系等方面提供了巨大的能力,所有这些都在可接受的性能级别内,直到达到真正的大规模

也许另一个想法是使用。SQLite现在无处不在,它已经消失在基础设施中。它是内置的、Android应用程序、iphone应用程序,并拥有所有标准库的支持。它也是一款开发和测试都非常出色的软件,很难提出任何反对使用它的理由。

我工作的公司(Starcounter)创建了一个完全按照您描述的方式工作的数据库。我们已经与我们的合作伙伴客户一起运行该数据库几年了,并且即将公开该产品。我们创建它的主要原因是为了易于使用和性能。如果您在我们的企业论坛上给我发消息(我是Starconter Jack),我很乐意给您发送一份副本。 关于面向对象数据库的主题;OO数据库失败的原因主要是因为它们更多的是实验,而不是真正的产品。它们的实现很差,只支持OO范式,忽略了SQL和ODBC等标准。它们也缺乏稳定性、性能和成熟度。他们的故事类似于iPhone、iPad和Kindle出现前一二十年的早期平板电脑、电子书和智能手机。 但正如任何技术一样,有两种浪潮(查阅“炒作周期”)。虽然第一波会让人失望,但第二波会很好。第一个将由概念和想法驱动,缺乏商业成功和现实生活中的可用性。第二次浪潮将不希望与第一次浪潮失败的霉味有关,因此将使用新的首字母缩略词和流行语。 未来的数据库将从NoSQL运动中涌现出来。它将增加SQL支持,许多人会认为这是一种新颖的方式。它将增加良好的语言集成(大多数语言都是面向对象的),许多人会认为这也是一种新颖的方法。它将支持文件,许多人会认为这将是新颖的。许多人将重新发现交易的需要等。 一些脾气暴躁的老人会试图告诉我们,我们所做的只是重新创造现有的想法。在某种程度上,他们是对的;在某些方面,他们不会。这一次,概念已经成熟。将增加新的想法,允许实用主义。 但话说回来,iPad在某种程度上仍然是PDA。

我工作的公司(Starcounter)创建了一个数据库,它的工作方式与您描述的完全相同。我们已经与我们的合作伙伴客户一起运行该数据库几年了,并且即将公开该产品。我们创建它的主要原因是为了易于使用和性能。我会的