sql-server – 批量加载CouchDB时遇到的问题
发布时间:2020-12-12 06:34:25 所属栏目:MsSql教程 来源:网络整理
导读:我在MSSQL 2005中有大约15k行,我想迁移到CouchDB,其中一行是一个文档.我有一个CLR-UDF,它将n行写入模式绑定的 XML文件.我有一个XSL转换,它将模式绑定的XML转换为 JSON. 使用这些现有工具,我认为我可以将MSSQL转换为XML到JSON.如果我为每个JSON文件批量n行,我
我在MSSQL 2005中有大约15k行,我想迁移到CouchDB,其中一行是一个文档.我有一个CLR-UDF,它将n行写入模式绑定的
XML文件.我有一个XSL转换,它将模式绑定的XML转换为
JSON.
使用这些现有工具,我认为我可以将MSSQL转换为XML到JSON.如果我为每个JSON文件批量n行,我可以编写脚本cURL来遍历文件并使用批量API _bulk_docs将它们发布到CouchDB. 这会有用吗?以前有人做过这样的迁移吗?你能推荐一个更好的方法吗? 解决方法到目前为止,我做了一些从遗留SQL数据库到CouchDB的转换.我总是有一个不同的方法.>我使用SQL-DB的主键作为Document-Id.这让我可以反复导入,而不用担心会出现重复文件. 我的导入代码通常如下所示: def main(): options = parse_commandline() server = couchdb.client.Server(options.couch) db = server[options.db] for kdnnr in get_kundennumemrs(): data = vars(get_kunde(kdnnr)) doc = {'name1': data.get('name1',''),'strasse': data.get('strasse','plz': data.get('plz','ort': data.get('ort','tel': data.get('tel','kundennr': data.get('kundennr','')} # update existing doc or insert a new one newdoc = db.get(kdnnr,{}) newdoc.update(doc) if newdoc != db.get(kdnnr,{}): db[kdnnr] = newdoc (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容