解析/シュレッダーで裁断巨大で複雑なXMLをSQL Server2008のデータベース(30+テーブル)
-
18-09-2019 - |
質問
読んだこて: 最レスXMLデータをSQL Serverデータベースカラム や を探して大量挿入XML破砕例SQL2005年.
の違いさんの投稿は私が使っている増幅し、補足2009年SQL2008年.
いを受ける巨大なXML構造からのベンダーを増幅し、補足.クライアントを正常化のXML構造に約30のテーブル、MS/SQL Server2008のデータベースです。
あまり他の魔法の液ですか。
ったこれらのオプション:
1)増幅し、補足SQLアダプタ用だけでなく単純平のデータベースは多くの参加および一対多の関係).
2)書きは、WCFプログラム a)使用LINQさLINQオブジェクト b)伝統的なXML DOMまたはSAX構文解析および構築ADO.NET 保存データベース
3)書が複雑に格納され,を使用するオープン/形式をサポートしています。
4)のデータベースを一時的にSQL/XMLカラムを使用し、他のツール"破砕の正常化"のデータです。なSSISいるのか?
5)のデータをXMLではなく、全体的な質は高く、使用XMLの指標とな正規化します。組み込みにくいXQuery/Xpath諸表しています。さらにい応答時間またはクエリが十分です。がどのxqueriesしていると思うん、その他されます。
私は推測する#2#3でも、一つや二つ時間は、このようにした場合については、30のテーブルは、少なくとも30の場合は60時間)で様々な面倒なんでエラーが発生しやすいです。
おかげさ
ウウォルターズ
更新12/23:サンプルデータ
<ns0:ValAgg xmlns:va="http://msbinfo.com/expresslync/rct/valuation" xmlns:ns0="http://TFBIC.RCT.BizTalk.Orchestrations.ValAgg">
- <MainStreetValuation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://msbinfo.com/expresslync/rct/valuation">
<ValuationIdentifier>
<RecordId>1928876</RecordId>
<PolicyNumber>ESTIMATE-1928876</PolicyNumber>
<VersionId>6773220</VersionId>
</ValuationIdentifier>
<RecordType>EST</RecordType>
<PolicyStatus>Complete</PolicyStatus>
<DataSource>WEB</DataSource>
<bunch more here/>
<valuationAggregateFlat xmlns="http://tempuri.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<policyNumber>ESTIMATE-1928876</policyNumber>
<recordId>1928876</recordId>
<versionId>6773220</versionId>
<updateTimeStamp>2009-12-14T14:50:30.743</updateTimeStamp>
<replacementCost>166129</replacementCost>
<yearBuilt>1999</yearBuilt>
<totalLivingAreaSqFt>2000</totalLivingAreaSqFt>
<primaryRCTRoofTypeCode>15012</primaryRCTRoofTypeCode>
<TOPSRoofType>COPR</TOPSRoofType>
<StdFireRoofType>COPR</StdFireRoofType>
<primaryRTCConstructionTypeCode>10016</primaryRTCConstructionTypeCode>
<constructionType>BV</constructionType>
<hailProofIndicator>false</hailProofIndicator>
<anyWoodRoofIndicator>false</anyWoodRoofIndicator>
<allMetalRoofIndicator>true</allMetalRoofIndicator>
</valuationAggregateFlat>
</ns0:ValAgg>
ご覧いただく場所"MainStreetValuationにもカップルのその他の複雑種などの"HighValueValuation"が全体の構造が異なる家が派手なんですよ。
解決
注:こだけを増幅し、補足2009ているわけではありませんよりも防止できますからもうSSISのための破砕などの処理形式をサポートしています。
以下にはあまりにも長い間、コメント:
ある問題意識は、XMLソースです。ついて検討するXML構造になっています:
<root>
<parent attr1="value1" attr2="value2">
<child attrc1="valuec1" attrc2="valuec2"/>
<child attrc1="valuec1" attrc2="valuec2"/>
</parent>
<parent> ... </parent>
...
</root>
結果の処理を通じて、XMLソースすることのできる出力:一attr1とattr2、他のattrc1とattrc2.の出力はすべての処理を非同期に関す。する必要がありまcorollateの親と子の列による人工列をSSISをご紹介します。各親としてidカラムは、子どもが同じidの値として"外部キー".きを行う必要があるとどうなるんでしょうかデータベースに合わせます。