私はこのスクリプトを持っています
SELECT = """
select
coalesce (p.ID,'') as id,
coalesce (p.name,'') as name,
from TABLE as p
"""
self.cur.execute(SELECT)
for row in self.cur.itermap():
id = '%(id)s' % row
name = '%(name)s' % row
xml +=" <item>\n"
xml +=" <id>" + id + "</id>\n"
xml +=" <name>" + name + "</name>\n"
xml +=" </item>\n\n"
#save xml to file here
f = open...
巨大なデータベースからファイルにデータを保存する必要があります。データベースには 10,000 件 (最大 40000 件) のアイテムがあり、スクリプトを実行すると終了まで非常に長い時間がかかります (1 時間以上)。
データベースから必要なデータを取得し、「一度に」ファイルに保存するにはどうすればよいですか? (できるだけ早く?後でサーバー上の出力からデータを処理できるので、xml出力は必要ありません。できるだけ早く行う必要があるだけです。何か考えはありますか?)
どうもありがとう!
PS 私はこの興味深いことを発見しました:このコードを使用して2000レコードごとにxml変数を「消去」し、それを別の変数に保存すると、かなり高速に動作します! したがって、以前のコードによると、xml 変数の入力に「問題」があるに違いありません。
result = float(id)/2000
if result == int(result):
xml_whole += xml
xml = ""