在 XML 或 MongoDB 中存储数据

发布于 2024-12-15 16:38:24 字数 509 浏览 0 评论 0原文

这是我的用例。

  1. 我有一些数据,现在将其存储在 xml 文件中。我存储的数据不是持久性的,即一旦用户注销,我将删除用户数据。
  2. 我的服务器使用 XML 请求和响应与客户端进行通信。因此,最初我们决定,由于我们将 XML 作为响应发送,因此将其存储在 XML 中,以便节省从数据库到 XML 格式的转换时间。
  3. 客户端将根据一些过滤条件请求 XML。所以我必须使用 XQUERY。
  4. 至少到目前为止,XML 中最多可包含 100 个条目。

现在我想听听一些关于我应该使用 XML 还是 MongoDB 的建议。 我的担忧:

  1. 在 MongoDB 中存储临时数据并在会话完成后删除/进行备份有多好?
  2. 从 MongoDB json 格式转换为 XML。
  3. 处理架构设计中的更改。

除了 MongoDB 之外,我无法使用任何其他数据库,因为一些持久性操作仍然在 MongoDB 上完成。

提前致谢。

Here is my use-case.

  1. I have some data, which I am storing now in the xml files. The data that I am storing is not persistent i.e I would be deleting the user data once the user logs out.
  2. My server communicates with the client using the XML requests and responses. So initially we decided, since we are sending the XML as response, lets store it in XML so that conversion from database to XML format time is saved.
  3. The client will request for XML based on some filter conditions. So I will have to use XQUERY.
  4. A maximum of 100 entries will be there in an XML, atleast as of now.

Now I would like to hear some advice on whether I should use XML or MongoDB.
My Concerns :

  1. How good is it to store temporary data in MongoDB and delete/take backup once done with session?
  2. Conversion from MongoDB json format to XML.
  3. Handling the changes in the schema design.

I can't use any other DB than MongoDB, as some persistent operations are still done on MongoDB.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

前事休说 2024-12-22 16:38:24

使用 MongoDB 来处理会话数据很可能会更好。基于会话开始或会话结束创建和删除对象应该没有问题。您将利用高性能 MongoDB,这将为您提供随着时间的推移而增长的可扩展性。

根据您选择的语言(我使用 C#),您可能能够将 Json 序列化为对象,而不会造成任何性能损失。例如,C# 驱动程序会为您处理序列化,因此您从 Mongo 检索的每个对象都将自动表示为 C# 对象。您可以使用相同的方式填充 C# 对象并将其存储在数据库中,所有这些都由驱动程序处理。

如果您通过对象来管理数据以在 mongodb 之间进行序列化/反序列化,那么您实际上也可以将数据序列化/反序列化为 XML。因此,您在 Mongo 中使用的相同对象也可以用于管理您的 xml。

因此,回答您的问题:

  1. 在 MongoDB 中存储临时数据并在会话完成后删除/进行备份有多好? 应该与任何其他数据库一样合适。绝对比在服务器上将数据存储在 XML 文件中要好。

  2. 从 MongoDB json 格式转换为 XML。 根据您的 mongodb 驱动程序,您可以同时使用对象并序列化/反序列化为 mongodb 和 xml,从而实现从 xml 到 mongodb 的转换非常简单。

  3. 处理架构设计中的更改。 Mongo 是无架构的,因为它使用文档而不是表。文档结构中的任何更改都将由 mongoDB 处理,因为没有像关系数据库那样的模式。

我希望这有一定道理。

You are most likely better off using MongoDB to handle your session data. There should be no problem in creating and removing objects based on session starting or session ending. You will be taking advantage of the high performance MongoDB which will give you scalability to grow over time.

Depending on your language of choice, (I use C#) you might get the ability to serialize Json into an object without any performance penalty. The C# driver for example, handles the serialization for you, so every object you retrieve from Mongo will be automatically represented as a C# object. The same way you can populate your C# object and store it in the database, all handled by the driver.

If you manage your data through objects to serialize/deserialize to and from mongodb, you can actually serialize/deserialize to XML as well. So the same objects you use for Mongo can be used to manage your xml.

So to answer your questions:

  1. How good is it to store temporary data in MongoDB and delete/take backup once done with session? Should be as suitable as any other database. Definitely better than storing data in XML files on the server.

  2. Conversion from MongoDB json format to XML. Depending on your mongodb driver, you can use objects and serialize/deserialize to mongodb and xml at the same time, making your conversion from xml to mongodb back and forth very easy.

  3. Handling the changes in the schema design. Mongo is schema-less because it uses documents instead of tables. Any change in the document structure will be handled by mongoDB since there is no schema like in a relational database.

I hope this makes some sense.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文