У меня есть таблица в БД MySql, которую я хочу загрузить в словарь в python.
столбцы таблицы выглядят следующим образом:
id,url,tag,tagCount
tagCount - это количество раз, которое тег был повторен для определенного URL. Так что в этом случае мне нужен вложенный словарь, другими словами словарь словаря, чтобы загрузить эту таблицу. Потому что у каждого URL есть несколько тегов, для которых есть разные теги Count. Я использовал следующий код :( вся таблица содержит около 22 000 записей)
cursor.execute( ''' SELECT url,tag,tagCount
FROM wtp ''')
urlTagCount = cursor.fetchall()
d = defaultdict(defaultdict)
for url,tag,tagCount in urlTagCount:
d[url][tag]=tagCount
print d
Прежде всего, я хочу знать, правильно ли это .. и если это так, то почему это занимает так много времени? Есть ли более быстрые решения? Я загружаю эту таблицу в память, чтобы иметь быстрый доступ, чтобы избавиться от хлопот медленных операций с базой данных, но с этой медленной скоростью она стала узким местом, она даже намного медленнее, чем доступ к БД. а кто-нибудь поможет? спасибо