つを使用しての大規模なXMLファイルを照会の詳細ジャンゴっぽい方法は次のコードを持っていますが速く/いくつかの本当に遅いのXPathジャンゴの私のviews.pyファイル内の関数の
from lxml import etree
f = etree.parse("path/to/file/k2.xml")
for item in charList:
first += f.xpath(u"//character[item='"+item+"']/path/to/entry[@type='on']/text()")
second += f.xpath(u"//character[item='"+item+"']/path/to/entry[@type='off']/text()")
これは、14メガバイトのXMLをロードしますXPathを使用して2つの変数に2つの値を追加します。
これは本当に遅いです - 5〜6秒、高トラフィックサイトの容認できないとします。
Djangoはクエリごとにデータベース呼び出しを持たず、代わりにsettings.pyファイルに永続的な接続を持っていることを教えていますが、XMLではなくSQLを使用している場合はそうです。
は、おそらく常にメモリ内のxmlファイルを持っていることによって、これを高速化するいくつかの方法はありますか? 14メガバイトのXMLファイル全体でXPathを行う
XMLファイルをより高速なMySQLデータベースに移行しました。しかし、この質問はまだ立っている:/ – LittleBobbyTables