了解IBM Cloudant的数据可移植性
数据可移植性涉及一套工具和程序,使客户能够将IBM Cloudant中存储的数据导出到其他地方托管的不同数据存储。 它包括使用复制或备份导出数据的程序,这些数据导出包括用于生成索引的设计文档。
职责
IBM Cloud®服务提供界面和说明,指导客户在自己选定的位置复制和存储服务客户内容,包括相关配置。
然后,客户负责将导出的数据和配置用于其他基础设施的数据可移植性。
这可能包括
- 规划和执行在不同云提供商或内部软件上建立替代基础设施,提供与IBM Cloud®服务类似的功能。
- 在备用基础设施上移植所需应用程序代码的规划和执行,包括客户应用程序代码的调整、部署自动化等。
- 将导出的数据和配置转换为备用基础设施和经调整的应用程序所需的格式
有关使用IBM Cloudant 时您的责任的更多信息,请参阅 IBM Cloudant的共同 责任。
数据导出程序
IBM Cloudant提供了导出使用服务上传、存储和处理的数据的机制。
从IBM Cloudant 中导出数据有两个选项。
方案 1:复制
如果要迁移到与Apache CouchDB 兼容的数据存储,请使用 复制 功能迁移以IBM Cloudant 存储的所有数据。
复制可以是推式或拉式模式,有关配置复制的详细信息,请参阅、 IBM Cloudant复制 和 高级复制。
设置推送复制以导出数据:
-
Create the
_replicator
database if it does not already exist:curl -H "Authorization: Bearer $API_BEARER_TOKEN" -X PUT "$SERVICE_URL/_replicator
-
为要使用复制导出的每个数据库创建一个复制文档。 以下面的命令为例,将变量设置为适当的值。
curl -H "Authorization: Bearer $API_BEARER_TOKEN" -X PUT "$SERVICE_URL/_replicator/$SOURCE_DATABASE_export" -H "Content-Type: application/json" --data '{ "_id": "'"$SOURCE_DATABASE"'_export", "create_target": true, "source": { "url": "'"$SOURCE_SERVICE_URL/$SOURCE_DATABASE"'" "auth": { "iam": { "api_key": "'"$API_KEY"'" } } }, "target": { "auth": { "basic": { "username": "'"$TARGET_DATABASE_USERNAME"'", "password": "'"$TARGET_DATABASE_PASSWORD"'" } }, "url": "'"$TARGET_URL/$TARGET_DATABASE"'" } }'
选项 2:CouchBackup
If the target data store is not compatible with Apache CouchDB, {{site.data.keywaord.cloudant_short_notm}} provides a supported tool for backing up data called CouchBackup. 有关使用CouchBackup的信息,请参阅 {{site.data.keywaord.cloudant_short_notm}}备份和恢复,以及
GitHub README
文件。
导出数据格式
通过复制导出到与Apache CouchDB兼容的数据存储的数据会直接写入目标数据存储。 使用CouchBackup,导出时,预期的文件格式为
备份文件
CouchbBackup备份文件采用 JSON 行格式。 请参阅 GitHub * 文件中的 "备份文件有哪些? GitHub README
文件中查看备份文件的内容。
数据所有权
所有导出的数据都归类为客户内容,因此适用 IBM Cloud服务协议 中规定的全部客户所有权和许可权。