Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Обработка больших объемов информации

Ответить
Настройки темы
Обработка больших объемов информации

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте...
Возникла такая проблема....
Как обрабатывать большие(по-миоим меркам объемы информации)...
Условия работы:
- поток информации в день ~(30-60)гигов....;кол-во файлов ~(700.000-1.000.000)
- оч. сильно дублирована
- рассредоточена в пределах локалки
- администраторчких прав нет, но хватает и пользовательских(экспериментальный проект)
- основные средства(инструментарий) обработки это (bat-скрипты, хотя можно использовать и решения на ,к примеру, C++)
- обработка происходит в фоновом режиме

Цели:
- Сортировка файлов по заданным критериям...
- Задача упрощается так как анализ фалов не контекстный, а лишь основанный на именах фалйов....
- ...

Уже имеющиеся решения:
- скрипт as.bat сортирует фалы по заранее заданым правилам которые находится в текстовом файле(ext.txt).
Проще говоря сортирует по расширениям, и шаблонам имен файлов...
Исходники ниже...
Проблема в том, что приходится делать для каждого правила новый проход по всем файлам(а их много....)...
Так что хотелось бы узнать как в один проход отсортировать файлы,как пропускать уже отсортированные файлы,как исключать повторяющиеся файлы..
Да и вообще хочется побольше опыта приобрести по данной проблеме.
Заранее спасибо...

========================= СКРИПТ as.bat =========================

rem НАЧАЛО СКРИПТА as.bat
@echo off
cls
echo Start
echo Inicialization of varibles
set fileExtension=ext.txt
set input_folder=autosort_folder
if exist %fileExtension% (
echo Current catalog: & cd
echo You are sure?(y/n)
set /p ask=
if "%ask%"=="y" (
for /F "eol=/ tokens=1,* delims==" %%i in (%fileExtension%) do (
set %%i=%%j
echo Sorting %%i
echo Create output folder...
md %input_folder%\%%i
echo Please waiting...
FOR /r %%f IN (%%j) DO (
move /y "%%f" %input_folder%\%%i
)
)
) else (
echo Operaciya sortirovki otmenena pol`zovatelem
)
) else (
echo Fajl so spiskom rasshirenij ne najden
)
rem КОНЕЦ СКРИПТА as.bat

========================= ФАЙЛ ext.txt =========================

// НАЧАЛО ФАЙЛА ext.txt
// Файл с расширениями для автоматической сортировки файлов
//Временные файлы
tmp_files=*.~*; ~*.*; *.??~; *.---; *.tmp; *._mp; *~tmp.*; *.??$; *.syd; *.shd; *.old; *.bak; *.bac; *.bup; *.chk; t3v?????.*; *.gid; mscreate.dir; chklist.*; 0???????.nch; *.dmp; _istmp*.*; *.obj; *.idb; *.ilk; *.tlb; *.tli; *.tlh; *.tmp; *.ncb; *.rsp; *.pdb; *.pgc; *.pgd; *.pch; BuildLog.htm; *.manifest; *.manifest.res; mt.dep;
//Audio
audio_files=*.aif; *.au; *.cda; *.med; *.mid; *.midi; *.mod; *.mpa; *.mp3; *.ogg; *.ra; *.rmi; *.rmx; *.rv; *.s3m; *.sfx; *.sid; *.snd; *.spc; *.voc; *.vvs; *.wav; *.wma; *.xm;
//Video
video_files=*.asf; *.avi; *.divx; *.mpe*; *.mpg; *.mpg4; *.mov; *.rm; *.vob; *.wmv; *.xvid;
// Mail message files
mail_files=*.eml; *.msg;
// PDF files
pdf_files=*.pdf;
// DJVU files
djvu_files=*.djvu; *.djv;
// URL files
url_files=*.url;
// КОНЕЦ ФАЙЛА ext.txt

Отправлено: 17:56, 10-06-2007

 

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


ProcInf
1) развертываем SQL сервер если нету такой возможности то используем SQLite
2) создаем паук который прозводит индексацию (заносить все имена файлов в базу)
3) создаем скрипт выборки из базы

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 12:31, 11-06-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


ProcInf
в продолжение CMD-варианта...
Цитата:
как в один проход отсортировать файлы
- отобрать список всех файлов (DIR /B *.*) во временный текстовый файл;
- на основе общего списка имен и списка шаблонов построить списки имен для каждого типа файлов (используя GREP или штатный FINDSTR);
- отработать в цикле все полученные списки отсортированных файлов.
Цитата:
как пропускать уже отсортированные файлы
отсортированные или скопированные?... если первое, то по наличию в списке, если второе, то по наличию файла в целевом каталоге (IF EXIST)
Цитата:
как исключать повторяющиеся файлы
аналогично предыдущему... если разные файлы могут иметь одинаковое имя, то придется по ходу копирования переименовывать.
Цитата:
и вообще хочется побольше опыта приобрести по данной проблеме.
сначала нужно иметь четкую постановку задачи

Отправлено: 13:10, 11-06-2007 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Обработка больших объемов информации

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Сбор информации с сайта и ее обработка. Medic84 AutoIt 16 18-08-2010 12:08
Получение и обработка информации из текстового файла ya158 AutoIt 3 11-09-2009 01:24
Стабильность работы so-dimm разных объемов и производителей Igor Urievich Материнские платы и память 2 23-07-2008 11:42
Разное - Копирование больших объемов в Vista Ult 32 Awes Microsoft Windows Vista 5 21-08-2007 19:02
Законы | Новая редакция ФЗ "Об информации, информатизации и защите информации" ArtemD Защита компьютерных систем 2 31-07-2006 11:58




 
Переход