Я пытаюсь импортировать реляционную базу данных EPF. Реляционная база данных Itunes epf состоит из деталей всей базы данных (приложения, музыка, телевизионные шоу, игры и т. Д.). Здесь вы можете найти больше здесь Itunes EPF Relation Database Я могу импортировать всю базу данных, кроме одной базы данных, которая не обрабатывается. Этот файл составляет около 6 гб.Импорт большой базы данных itunes epf не работает
$field_separator = chr(1);
$record_separator = chr(2)."\n";
$data_appdt=explode($record_separator,file_get_contents('file_path',true));
foreach ($data_appdt as $key => $value)
{
if (substr($value, 0, 1) != '#')
{
if (!empty($value))
{
{
$data_itu_app_dt=explode($field_separator, $value);
$result=$this->admin_model->itunes_app_dt($data_itu_app_dt);
}
}
}
}
Приведенный выше код выполняется в CodeIgniter, который является контроллером для кода импорта process.This работает около ДО 2gb файла. Но размер больше, чем тот, что он не работает. Возможно, его чтение всего файла и памяти не позволяет это сделать. Поэтому я использовал приведенный ниже код для обработки более высоких файлов.
$handle = fopen('file_path', "r") or die("Couldn't get handle");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
$data_appp=explode($record_separator,$buffer);
foreach ($data_appp as $key => $value)
{
if (substr($value, 0, 1) != '#')
{
if (!empty($value))
{
$data_itu_appp=explode($field_separator, $value);
//print_r($data_itu_appp);
$result=$this->admin_model->itunes_appp($data_itu_appp);
}
}
}
}
fclose($handle);
}
Он работает даже для файлов размером 8 ГБ, и импорт выполнен и успешно завершен. Но тогда для файла с 6 гб импорт не происходит. Это выборочные данные для таблицы
1426669253786 | 329704232 | EN | iParrot Разговорник Вьетнамский-итальянский | Перевести вьетнамский разговорник на итальянский с захватом-переводчик для IPad/iPhone/IPod Touch |
iParrot Phrase устанавливает новый стандарт для мгновенного многоязычного программного обеспечения для перевода . Разработанный специально для iPad/iPhone/iPod Touch, он снабжен более чем 20 видами прекрасно выраженного устного языков для мгновенного использования. Фраза iParrot организована в категории , такие как: Приветствия, Транспортировка, Покупки и Просьба помочь и т. д. Таким образом, вам достаточно найти предложения, которые вам нужны мгновенно. Организован для мгновенного доступа и удобства, особенно полезно, когда выезжает за границу. Виртуальная беглость доступна на китайском, английском, Японский, русский, французский, немецкий, испанский, итальянский, корейский, Португальский, арабский, тайский и вьетнамский.
- НЕТ НЕТ ДОСТУПА В ИНТЕРНЕТ!
- Универсальное приложение для iPad/iPhone/iPod Touch;
- Изучайте иностранный язык, где бы вы ни находились;
- Слушайте и применяйте фразы на экране;
- Романизированное руководство по произношению (Romanization/PinYin) для арабского, китайского, японского, корейского, русского и тайского языков;
- 400 практических дорожных фраз на кончиках ваших пальцев;
- Идеально подходит для студентов и деловых путешественников. Поддержка iOS 5; Улучшение пользовательского интерфейса; Коррекция содержимого; Ошибка исправление. | http://www.iparrot.info|http://www.iparrot.info|http://a3.mzstatic.com/us/r30/Purple/v4/59/4c/3c/594c3c1d-8081-583a-0a02-3d07edb41f85/screen320x480.jpeg|http://a5.mzstatic.com/us/r30/Purple/v4/ba/36/43/ba3643ff-1316-a689-a422-c67eff2e1639/screen320x480.jpeg|http://a2.mzstatic.com/us/r30/Purple/v4/5a/17/43/5a174333-d3c7-6ae5-5e25-6539e3d9e62c/screen320x480.jpeg|320x480|320x480|320x480|http://a2.mzstatic.com/us/r30/Purple/v4/2e/87/2d/2e872d35-d55b-8910-0f2b-bb9042f57537/screen480x480.jpeg|360x480|
Это выборочные данные из этой базы данных, которая подробно применение (в выше образца данных, я заменил ASCII символы (SOH) для новой области с |). Фактически, когда импорт находится в процессе, используя второй код, когда появляется новая строка, он принимает его как/n, а импорт прерывается. Итак, есть ли способы обойти этот или любой другой способ обработки такого большого файла (6 ГБ) для импорта базы данных? Возможно, вышеупомянутые вещи немного запутывают. Есть ли какие-либо разъяснения, необходимые, я сделаю все более ясным. Ищете хорошее решение .. Спасибо всем.
fgets работать для больших файлов, так он читает содержимое по строкам. Но если в содержании, если есть/n или аналогичные теги, то удаление заражения становится сложным и его неправильный вывод. – vantony