1
1
您可以在自己的事业中使用XML。只是为了理解你的例子。 你的公司可能有1000名员工。 每个员工都可以有零个或多个联系人(如初级、次级等)。 因此每个雇员都可以有contacts.xml(根据exist、marklogic、berkely等XML数据库进行标识)。 例如)-contacts.xml 一旦数据在XML数据库中。然后数据库可以根据您想要的任何方面获取所有排序细节。 比如通过邮政编码、城市、名字等获取联系人。 您只需要编写特定的XQuery来为您的请求挖掘数据。(对于MarkLogic XML数据库服务器)。这个世界上使用的术语是分面浏览。 XML数据库设计用于处理此类信息。将联系人视为批量数据,而不是行/列。 |
2
3
如果将数据放在数据库中,那么很容易将其输出为XML。不要仅仅因为你需要在XML中结束而从XML开始。如果您需要对数据进行查询,那么数据库几乎肯定是最佳选择。 |
3
1
以下是不使用XML的两个原因…
这就是我使用XML的原因。 如果数据集很小,则自然是分层的,并且需要在文本编辑器中查看/编辑。 如果需要输出为XML,则从数据库输出XML不是问题。 |
4
1
这里有很多评论,没有人对MarkLogic Server XML数据库有太多的了解,当应用多种类型的索引(元素、值、属性、XML结构、XML节点顺序、字、短语索引)时,XML作为存储格式的功能有多强大。 MarkLogic可以存储/索引数十亿个XML文档,并允许在所有文档中进行次秒搜索、复杂的和数最小值最大值操作等。 我使用了带有c.NET Linq to XML的关系XML文件来实现原始海报想要实现的目标。(此时没有marklogic,只是简单的XML文件和C LINQ代码将它们连接在一起以实现我要查找的任何类型的搜索),您可能有一个用于联系人的XML文件:
您还可能希望将其加入到公司的另一个XML文件中:
下面是一些C.NET LINQ to XML语法示例,用于实现这两个文件之间的左外部联接:
我将它与90MB的XML文件结合使用,并将其与4-5MB的较小XML文件结合使用,可以在2-3秒范围内执行多个where条件的复杂搜索。 |
5
0
听起来数据库肯定是正确的解决方案。我在这里看到的两个需求是,您将需要对数据集运行某些类型的查询,并且您需要它在某一点上是XML格式的。SQL数据库将能够比XML文件更好地处理复杂的查询,同时,在需要时,您可以随时将数据转换为XML。 |
6
0
根据我的经验,使用XML作为主数据源不是一个好主意,在某种程度上这将是一个痛苦。尝试使用sqlite,它是一个功能强大且可移植的关系数据库。 |
Leo · c#查找具有特定子元素的元素 6 年前 |
jamlot · c#基于数组或列表搜索XML元素值 6 年前 |
Don_B · 如何将具有相同名称和相同属性名称的节点获取到集合? 6 年前 |
Tom · XDocument分析错误 6 年前 |
Michael T · 用VB从网站上抓取XML。NET和LINQ 6 年前 |
Cybercop · LINQ:在元素内添加子元素 7 年前 |
Don_B · 保存后保持xml文件的十六进制字符不变? 7 年前 |