Разбор dmoz rdf файлов с использованием php скрипта - PullRequest
0 голосов
/ 08 марта 2010

Я использовал скрипт php в

http://sourceforge.net/projects/dmoz2mysql/files/

для загрузки, извлечения, очистки, анализа и вставки данных dmoz в таблицу mysql. я не сталкиваюсь с проблемой при обработке struct.rdf. Но при синтаксическом анализе content.rdf после вставки 3200000 строк возникает резкая пауза ... и после этого ничего не происходит - мне пришлось принудительно завершать работу через примерно час ... php, и, следовательно, я не могу найти причину этой проблемы .. пожалуйста, помогите, так как мне очень нужны эти данные dmoz для моего проекта ..

1 Ответ

0 голосов
/ 09 марта 2010

Вот несколько советов по устранению неисправностей, которые могут вам пригодиться.

SHOW TABLE STATUS LIKE `table_name`;

Это сообщит вам информацию о таблице, которую вы заполняете. Важная часть будет Max_data_length. Проверьте, не нарушаете ли вы какие-либо ограничения на объем данных, которые вам разрешено хранить. Это распространено для таблиц MyISAM. Сравните это с Data_length. Если они совпадают, вы достигли предела. Это можно изменить с помощью MAX_ROWS. Общий предел для таблицы MyISAM составляет 4 ГБ данных. Если вы исчерпаны, вам нужно будет сделать одну из двух вещей. Либо используйте движок InnoDB для таблицы, либо измените таблицу:

ALTER TABLE `table_name` MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;

Обязательно используйте Avg_row_length (или выше), указанный в первом запросе STATUS, указанном в этом ответе. Это поможет вам оценить, где этот номер должен быть. Имейте в виду, что если у вас уже есть данные в БД, это может занять некоторое время. Надеюсь, это поможет.

Счастливого кодирования!

...