0

我计划最终将我网站的数据库系统从 MySQL 切换到 NoSQL(在本例中为 Cassandra)。

根据我目前对 Cassandra 的了解,没有联接之类的东西,而只是更有效地工作的更大记录。我不是 NoSQL atm 方面的专家,实际上我对它的了解非常少,并且对它的很多工作原理感到非常困惑......

我的 Web 项目的目标之一是切换到 Python 和 Cassandra,以获得更高级和更快的解决方案,因为我的网站开始增长,并且我希望能够通过额外的服务器轻松扩展它。

现在,我正在为我的网站设计一项新功能,即获取文件并从中创建文件夹的能力。到目前为止,这是我最初使用的:如何加入/子查询第二个表(我刚刚问的一个问题)

然后人们建议对数据进行规范化并使其成为一个 3 表系统,其中一个用于文件夹,一个用于文件夹/文件,一个用于文件。@egrunin 回答了我的问题,甚至给了我 NoSQL 的信息,但我真的很想用第二个来源检查它,以确保这是正确的方法。

还有 SQL 到 NoSQL 的转换工具吗?

所以我的最终目标是在数据库中设计这个文件夹/文件系统(以及我正在添加的其他功能),以便当我从 SQL 切换到 NoSQL 时,我将准备好并且我的所有数据的转换将会很多更轻松。

非常感谢任何关于将 SQL 转换为 NoSQL、Cassandra 或 NoSQL 工作原理的教程、指南和信息,到目前为止,Cassandra 文档让我非常困惑。

4

4 回答 4

5

在 Couchbase,我们最近举办了一个关于从 RDBMS 过渡到 NoSQL 的网络研讨会系列。这显然是从 JSON 文档的角度来看的,但是很多课程都适用于任何分布式数据库。

http://www.couchbase.com/webinars

于 2012-08-08T17:39:31.483 回答
3

MasterGberry:

我的 Web 项目的目标之一是切换到 Python 和 Cassandra,以获得更高级和更快的解决方案,因为我的网站开始增长,并且我希望能够通过额外的服务器轻松扩展它。

在切换到 Cassandra 之前,您需要清楚地量化这一点。

MySQL 可以做令人惊奇的事情,Cassandra 也可以,但是切换到 Cassandra 通常不能仅仅因为想要更快地完成事情而被驱动,因为它们可能不会更快 - 至少在你习惯使用 MySQL 做得很好的领域(列明确定义的表格数据的水平数值聚合)。

我绝不会阻止过渡,但我对期望提出警告。

这可能是一个很好的阅读:http: //itsecrets.wordpress.com/2012/01/12/jumping-from-mysql-to-cassandra-a-success-story/

于 2012-08-08T17:37:25.637 回答
0

Cassandra 并不是真的要成为应用程序的主要存储。它的主要目的之一是存储顺序数据并通过键查找将所有数据拉回。一个例子是日志记录。有趣的是,行键没有排序,但列名是排序的。因此,日志记录每分钟都有一个键,然后为每个日志条目创建一个新列,并以顺序时间戳作为列名。当然,这只是一个例子,聊天记录是另一个例子。

于 2013-04-20T10:19:22.907 回答
0

实际上,您可以使用 playOrm 之类的工具来支持连接,但仅限于分区而不是整个表。因此,如果您按月或按帐户进行分区,您可以获取帐户 4536 分区并查询将其与其他内容(另一个较小的表或另一个表的另一个分区)连接的​​分区。

如果您有一个具有大量客户端的系统并且每个客户端都真正独立于另一个客户端,这将非常有用,因为您可以将所有客户端信息自行包含到该客户端的所有表的分区中。

后来,迪恩

于 2012-08-21T14:40:58.533 回答