2

私はネットを精査しましたが、適切な例を見つけることができないようです.

問題: 公開された引用データの bio/python ネストされた辞書 (または xml) をフラットな (正規化された) 構造 (sqlite など) に変換しようとしています。引用データは、biopython を使用して pubmed から取得され、辞書に解析されましたが、必要に応じて xml として取得することもできます。

すべての引用にすべてのフィールド/キーがあるわけではなく、すべてのフィールド/キーに同じ数のアイテム (著者、メッシュ用語、参考文献など) があるわけではありません。これは正規化プロセスの一部であることを理解してください。

これは、私の実際の理解がどこで終わるかについてです。

とは言っても、プロセスは次のようにする必要があると思います。最初にすべての一意のフィールドを削除/正規化します(タイトル、要約、日付、引用など、論文ごとに1つあるフィールドなど)。ただし、所属は言わないでください。最初の著者にリンクされています)。アブストラクトのない論文はヌルとして記入できますか?

次に、たとえば著者に移動し、PMID を fk として使用して別のテーブルを再度作成し、別のテーブルの他のさまざまなフィールド/キー/アイテム (メッシュ見出し、EC 番号、ref など) に対して同じことを行います。

マスター辞書からキー/アイテムを削除(ポップ?)して、何が行われたか/行う必要があるかを視覚的に確認できるようにする方法はありますか(明らかにPMIDを残します)?

繰り返しになりますが、私が初心者に盲目的に明白な質問をしている場合は、事前にお詫び申し上げます-そして、ネストされた構造を平らなスペースに収めることができないことは理解しています-これについて最も骨の折れる方法を探しているだけで、うまくいけば1つこれにより、すべてが適切にキャプチャされたことを確認できます。

どうもありがとう、クリス

4

1 に答える 1

0

簡単な質問です。既に XML 形式のデータがある場合、なぜそれを SQL 形式に正規化するのですか? そのままの XML を使用しないのはなぜですか? Berkeley DB XMLは、アプリケーションにリンクするライブラリ (SQLite など) です。インストールまたは保守する別のサーバーはありません。このライブラリを使用すると、XPath または XQueryを使用して XML データを格納およびクエリできます。非常に高速で、フットプリントが小さいです。トランザクション対応で、回復可能で、信頼性が高いです。必要に応じて、HA 機能も備えています。

データを XML に保持すると、データ インポート プロセス全体が簡素化され、半構造化データのクエリが可能になります。

于 2011-03-01T05:56:39.647 に答える