这是我的用例。
现在我想听听一些关于我是否应该使用XML或MongoDB的建议。 我的担忧:
我不能使用任何其他数据库而不是MongoDB,因为一些持久性操作仍然在MongoDB上完成。
提前致谢。
答案 0 :(得分:1)
最好使用MongoDB来处理会话数据。根据会话开始或会话结束创建和删除对象应该没有问题。您将充分利用高性能的MongoDB,它将为您提供随时间增长的可扩展性。
根据您选择的语言(我使用C#),您可以将Json序列化为对象而不会降低性能。例如,C#驱动程序为您处理序列化,因此从Mongo检索的每个对象都将自动表示为C#对象。与填充C#对象并将其存储在数据库中的方式相同,所有这些都由驱动程序处理。
如果您通过对象管理数据以与mongodb进行序列化/反序列化,您实际上也可以序列化/反序列化为XML。因此,您用于Mongo的相同对象可用于管理您的xml。
所以回答你的问题:
在MongoDB中存储临时数据并在完成会话后删除/进行备份有多好?应该与其他任何数据库一样合适。绝对比在服务器上的XML文件中存储数据更好。
从MongoDB json格式转换为XML。根据您的mongodb驱动程序,您可以同时使用对象并序列化/反序列化为mongodb和xml,从xml转换为mongodb来回很容易。
处理架构设计中的更改。 Mongo是无架构的,因为它使用文档而不是表。文档结构的任何更改都将由mongoDB处理,因为关系数据库中没有类似的模式。
我希望这是有道理的。