我是Cassandra的初学者。我发现很难对附加的XML文件进行建模。
我的要求是:
注意:每个父节点(例如:客户/站点......)可能看起来更多。时间。即我可能有Customer2,Site2,另一个EquipmentDetails节点等。
我的XML:
<?xml version="1.0" standalone="yes"?>
<MyAnalystXMLReport>
<MC-DomainID ID="XYZ123">
<Customer Name="CUSTOMER1" ID="53043">
<Site Name="SITE1" ID="488688">
<EquipmentDetails>
<EquipmentDescription>Test Desc</EquipmentDescription>
<EquipmentRefId>T3567111</EquipmentRefId>
<ComponentDescription>COM Oil</ComponentDescription>
<ComponentRefId>
</ComponentRefId>
<AnanlystNo>1235LKJU</AnanlystNo>
<ComponentType>TestComp</ComponentType>
<Sample SampleNo="976023696">
<SampleCondition>USUAL</SampleCondition>
<AnalysisComments>Test Comments</AnalysisComments>
<DateRecieved>2015-12-10</DateRecieved>
<DateAnalysed>2015-12-18</DateAnalysed>
<EquipmentLife>
</EquipmentLife>
<LubricantLife>
</LubricantLife>
<TopUpVolume>0</TopUpVolume>
<FuelUsed>
</FuelUsed>
<Tests>
<TestGroup Name="Group NAME1" ID="667">
<Test Name="Test Name1" ID="1785">
<Result>171.3</Result>
</Test>
</TestGroup>
<TestGroup Name="Group NAME2" ID="617">
<Test Name="Test NAME2" ID="1763">
<Result>153.40</Result>
</Test>
</TestGroup>
</Tests>
</Sample>
</EquipmentDetails>
</Site>
</Customer>
</MC-DomainID>
</MyAnalystXMLReport>
我如何以有效的方式对此XML进行建模以实现此要求? 什么是存储此数据数据的最简单方法?使用C#在Cassandra中建模。任何一个例子将不胜感激。
感谢您的帮助。
答案 0 :(得分:1)
首先,在Cassandra中使用的建模数据与传统的RDBMS略有不同。我的第一个建议是看看这个链接:
http://www.datastax.com/dev/blog/basic-rules-of-cassandra-data-modeling
基本上Cassandra使用每个查询表的方法来确定数据模型。这意味着您需要知道应用程序将如何查询数据,然后在此之后对逻辑和物理持久性模型进行建模。 DataStax在Cassandra上有一些优秀的教程视频和专门的数据建模。见这里:
https://academy.datastax.com/courses/ds220-data-modeling
至于如何在C#中使用它,有一个关于如何开始使用c#的好视频:
https://academy.datastax.com/demos/getting-started-apache-cassandra-and-c-net