我正忙着创建一个简单的 DBTester 程序,它带有一个可以测试和比较多个(某种)数据库的数据访问层。目前我已经为 SQL Server 和 MarkLogic NoSQL 实现了 Add(Insert)。
令我惊讶的是,使用 MarkLogic XCC/.Net XQuery 插入/添加 1 M 个人实体比使用 SQL Server 2008 R2 花费更多的时间。SQL Server 在数据访问层中需要几分钟,其中 11 秒在 11654 毫秒内。MarkLogic 8 在 15 分钟内仍然忙于 15621 个实体!
我是 NoSQL MarkLogic 和 XCC/XQuery 的新手,可能做错了什么。我的 MarkLogic 测试代码可以在 GitHub 上找到:https ://github.com/driekus77/DBTester/blob/master/DBTester/DataAccessLayer/Repository/MarkLogic/PersonRepository.cs#L48
对应的SQLServer添加代码可以在: https ://github.com/driekus77/DBTester/blob/master/DBTester/DataAccessLayer/Repository/SQLServer/PersonRepository.cs#L64
那么我做错了什么?我应该直接使用 MarkLogic RestAPI 吗?我应该使用 JSON 而不是 XML 吗?有没有办法加快我的 XQuery Add 调用?
谢谢你的帮助!