У меня проблема, и я надеюсь получить ответ от вас: -)
Итак, я взял geonames.org и импортировал все их данные Немецкие города со всеми районами.
Если я введу «Гамбург», появится «Центр Гамбурга, аэропорт Гамбурга» и т. Д. Приложение находится в закрытой сети без доступа к Интернету, поэтому я не могу получить доступ к geonames.org и импортировать данные. :( org и импортировал все свои данные о городах Германии со всеми районами.
Если я введу «Гамбург», появится «Центр Гамбурга, аэропорт Гамбурга» и так далее. Приложение находится в закрытой сети без доступа к Интернету, поэтому я не могу получить доступ к веб-службам geonames.org и мне приходится импортировать данные. :( org и импортировал все свои данные о городах Германии со всеми районами.
Если я введу «Гамбург», появится «Центр Гамбурга, аэропорт Гамбурга» и так далее. Приложение находится в закрытой сети без доступа к Интернету, поэтому я не могу получить доступ к веб-службам geonames.org и мне приходится импортировать данные. :( Город со всеми его районами работает как автокомплект. Таким образом, каждое нажатие клавиши приводит к запросу XHR и т. Д.
Теперь мой клиент спросил, можно ли хранить в нем все данные мира. Наконец, около 5 000 000 строк с 45 000 000 альтернативных имен и т. Д.
Postgres требуется около 3 секунд на запрос, что делает невозможным автоматическое завершение.
Теперь я подумал о CouchDb, уже работал с ним. Мой вопрос:
Я хотел бы опубликовать «Ham» и хочу, чтобы CouchDB получил все документы, начинающиеся с «Ham». Если я ввожу «Гамбург», я хочу, чтобы он вернул Гамбург и т. Д.
Подходит ли для него CouchDB? Какие еще БД вы можете порекомендовать с низкой задержкой (может быть в памяти) и миллионами наборов данных? Набор данных не меняется регулярно, он довольно статичен! Всегда ли Python file.open (f, 'w') касается файла, даже если не было внесено никаких изменений? Используя Python, я пытаюсь заменить ...
Что возвращает Python string.replace, если подстановки строк не было? Всегда ли Python file.open (f, 'w') касается файла, даже если не было внесено никаких изменений?
Используя Python, я пытаюсь заменить вхождения 'oldtext' на 'newtext' в наборе файлов. Если файл содержит «старый текст», я хочу произвести замену и сохранить файл. В противном случае ничего не делайте, чтобы файл сохранил свою старую метку времени.
Следующий код работает нормально, за исключением того, что все файлы записываются, даже если не была произведена подстановка строк, и все файлы имеют новую метку времени.
for match in all_files('*.html', '.'): # all_files returns all html files in current directory
thefile = open(match)
content = thefile.read() # read entire file into memory
thefile.close()
thefile = open(match, 'w')
thefile.write(content.replace(oldtext, newtext)) # write the file with the text substitution
thefile.close()
В этом коде Я пытаюсь выполнить file.write только в том случае, если произошла подстановка строки, но все же все файлы получают новую метку времени:
count = 0
for match in all_files('*.html', '.'): # all_files returns all html files in current directory
thefile = open(match)
content = thefile.read() # read entire file into memory
thefile.close()
thefile = open(match, 'w')
replacedText = content.replace(oldtext, newtext)
if replacedText != '':
count += 1
thefile.write(replacedText)
thefile.close()
print (count) # print the number of files that we modified
В конце счетчик - это общее количество файлов, а не количество измененных файлов. Какие-либо предложения? Спасибо.
Я использую Python 3.1.2 в Windows. ll
Но как мне получить соединение SQL через контекст?