【问题标题】:export whole database data to json format for nosql database将整个数据库数据导出为 json 格式用于 nosql 数据库
【发布时间】:2013-10-31 20:31:51
【问题描述】:

目前我有一个包含大量记录的数据库(大约 3000 条)

我想导出整个数据库,以将其用作移动应用程序上的 nosql 数据库,使用 couchdb 或类似的 nosql 技术。

进行此类导出的最佳方法是什么?

我的方法是通过学说获取数据,然后进行一些 json 编码,但这会导致一个非常持久的请求,最终导致我的应用程序服务器 (apache) 崩溃

我的第二种方法是将整个数据库手动导出为 json 格式并在我的移动应用程序上解析它,但没有其他方法吗?

【问题讨论】:

  • 是否可以使用 PHPMyAdmin 导出数据并插入到 CouchDB 中?
  • 我没有尝试过,但不知何故这也是我的第二个意图......但理想情况下我想自己构建我的结构(有一些多对多连接,所以我想直接构建 json删除这些外键等)

标签: php json symfony doctrine-orm nosql


【解决方案1】:

你知道导致服务器崩溃的原因吗?你是用完了你的内存还是什么?我认为在您的情况下,您可能会尝试以块的形式获取信息,格式化数据,然后将其写入文件。可能需要一段时间,但不会占用太多系统资源。

【讨论】:

  • 崩溃的原因是导出到json(不写入文件,只是做类似于json_encode的事情)。下一步是写入文件,直到现在我还没有这样做,所以没有崩溃。
【解决方案2】:

也在当前服务器上使用 CouchDB。如果需要,CouchDB 可以复制到其他实例,据我所知,这是一个非常轻松的事务,所以如果您的数据已经在 Couch 中,那么您就赢了。

问题是:如何到达那里,这可能是您拥有哪种数据结构的问题,答案可能应该是“循环中的每个项目”,而不是“巨人中的所有东西” JSON”。

【讨论】:

  • 这有点傻,我不想将我的整个数据库移动到 nosql。我只想为我的移动客户端提供一个离线版本的数据库。这不是什么新鲜事。
  • 那你为什么要为你的移动客户端提供类似 NOSQL 的东西呢?还有 SQL 数据库,比如 SQLite。这些应该可用于移动平台。
  • 关键是:我想在我的移动应用程序上使用 nosql,但在我的服务器上使用普通的关系数据库。移动应用程序是只读的。而且由于我有一个 REST API 可以返回良好的 JSON,我想知道为什么不在我的移动应用程序中使用 nosql 之类的东西来进行简单的搜索。我从未要求从关系型迁移到 nosql
  • 你做到了。您只是没有指定要使用的 NOSQL 数据库。但实际上,您并不真的需要为 NOSQL 导出 JSON,您只需要对数据库进行只读转储以供离线浏览 - 以任何允许的格式。你为什么不要求那个呢?
  • 是的,我同意。但我从未要求从关系数据库转移到 nosql。所以现在告诉我,如果我有一个关系数据库(比如说 mysql)并且我想要一个可以轻松导入到我的移动应用程序的离线版本,它是如何工作的。去sqlite?我想要 NOSQL!这就是问题所在。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-24
  • 2014-07-22
  • 2018-12-24
  • 1970-01-01
  • 2018-07-05
相关资源
最近更新 更多