Один из наших сайтов имеет около 10000 узлов. В каждом узле есть простое текстовое / целочисленное поле cck. Это целое число меняется ежедневно, поэтому их нужно обновлять каждый день. Целое число варьируется от 1 до 20000000. Поле cck для всех типов контента, поэтому оно имеет свою собственную таблицу в базе данных. Мы не используем ревизии. Я выбрал чтение файла CSV, потому что эта таблица очень проста с 3 полями. Все целые числа. Мне не нужна была вся гибкость при импорте типа массива php.
Я создал задачу cron для ежедневного выполнения php-скрипта, который содержит нечто похожее на:
<code>
LOAD DATA LOCAL INFILE 'file.csv'
REPLACE INTO TABLE content_field_mycckfield
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(vid, nid, field_mycckfield_value);
В конце скрипта он подсчитывает, сколько записей импортировано, сообщает об успехах и ошибках.
Файл ниже общедоступный, и весь джаз.
Есть ли какие-то другие шаги, которые я пропускаю? Что-нибудь, о чем я должен знать или быть осторожным?
Нужно ли мне оптимизировать или дефрагментировать эту таблицу после каждого запуска? Или каждый (х) пробегов?
Должен ли я сначала импортировать его в таблицу temp_ для нормализации данных, а затем скопировать / переместить в TABLE content_field_mycckfield?