У меня есть несколько сотен тысяч текстовых файлов, которые имеют довольно стандартную форму (все они имеют общие элементы - ID, Дата, Кому, От, Тема, Тело.
Они не в структурированном формате, напримерсоставное электронное сообщение.
Я хочу разделить их на составные части и передать всю партию в БД. Их много, поэтому я хотел убедиться, что подход будет работать.
Есть ряд ключевых вопросов, над которыми я размышляю (и я не программист - это хобби / обучение).
1) есть тип данных структуры, который я могу привести, чтобы сохранить биты вместеразумным способом.Я подумал, что было бы логично иметь сделку с триплетами file.ID, file.Date и т. Д., Которая хранит весь файл в структурированном виде, чтобы впоследствии его можно было вставить в базу данных.Это питония?или похмелье от моей работы с Matlab?
2) раздел тела может быть размером в несколько килобайт или одним датчиком.(1) это лучше как блоб - я бы потерял поиск - вроде бы смысл этого делать ... (2) Как убедиться, что я могу создать достаточно большое поле в моей базе данных MYSQL, когда пришло время?Я не буду знать, какой самый длинный размер каждого элемента, если я не запустил какой-либо счетчик в разделителе сообщений, который обрабатывает максимальное значение, видимое для сообщения
3) Я полагаю, что я бы начал сходить, получить список файлов с прогулки, затем потяните каждый файл, строка за строкой.Я буду использовать положение линии, чтобы вывести некоторые известные местоположения (ID, Дата), а затем некоторые RegEx или шаблоны, основанные на функциях, чтобы разделить остальные.Как только я разделю файлы, я планирую их проглотить.Тем не менее, мне интересно, было бы логичнее подключаться к БД в конце каждого сообщения и записывать части в отдельную запись по одной.
Время - не драма, оно может длиться целую неделю, несмотря ни на что.У меня на i7 около 8 Гб оперативной памяти, поэтому я опять не особо нуждаюсь в ресурсах, и с удовольствием позволю себе это сделать.
Звучит логично?Я пропустил основной шаг?
Спасибо.