powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обновление файла
11 сообщений из 11, страница 1 из 1
Обновление файла
    #35537557
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Вопрос такой.
На сервере есть большой файл А (порядка 300 мб). Часть информации из него по определенному признаку каждое утро при переиндексации копируется в другой файл Б (около 270 мб). Этот файл Б на весь день фиксируется и копируется на лок. комп в файл С. Потом требуется несколько раз в день к файлу С на лок.компе приписывать инфу из А, которой нет в С, индексировать его (С) и работать с ним.

Вопрос такой. Как это сделать с минимальной нагрузкой на сеть? Cамый простой вариант - сразу качать файл А в С и работать с ним, но 300 мб! Для этого я и выделяю файл Б. Но как дальше оптимальней? Может, вообще эффективней без файла Б?
...
Рейтинг: 0 / 0
Обновление файла
    #35537558
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, забыл еще - инфа в А, которая ушла в Б не меняется.
...
Рейтинг: 0 / 0
Обновление файла
    #35537650
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странный вы человек...

То бишь у вас файл-сервер. Есть сетевая таблица (А) и локальная копия (С).
И нужно в (С) дописывать из (А), то, чего не хватает.

Вопросы:
- (А) каждый день - полностью новый файл? Или просто таблица со всеми текущими данными?
- (С) зачем нужна в локальном варианте?
...
Рейтинг: 0 / 0
Обновление файла
    #35537777
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
****- (А) каждый день - полностью новый файл? Или просто таблица со всеми текущими данными?

Нет, я же писал, каждый день часть инфы в А фиксируется окончательно. Скажем, из 40000 записей могут меняться только последние 2-3 тыс. И каждый день этот "балласт" выгружается в параллельную таблицу.На следующий день фиксируется еще несколько записей и т.д. Поэтому и вопрос как бы их не гонять лишний раз посети.



****- (С) зачем нужна в локальном варианте?

Ну, в общем, нужна...
...
Рейтинг: 0 / 0
Обновление файла
    #35537873
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то, разница в объемах файлов чисто символическая. Ну, если очень хочется...

1. В таблице A нужен timestamp. Метка времени. Дата и время последней модификации. Ее можно вести как поле в той же таблице, но, эффективнее, использовать другую таблицу.

Другими словами, при ЛЮБОЙ модификации таблицы A через триггер, в таблицу-лог будут сбрасываться, как минимум, идентификатор измененной записи и вид изменения (INSERT, UPDATE, DELETE). А также дату и время изменения.

В случае необходимости, можно детализировать информацию об изменениях. Например, так прямо и записывать команду INSERT-SQL, хотя это сложнее. Придется последовательно "накатывать" все модификации сделанные для этой записи.

2. Далее, по мере необходимости, просматриваешь лог изменений и переносишь изменения в таблицу на локале. Просто уникальный список ID измененных записей, с учетом типа модификации.

3. При этом, нужна еще третья таблица. Дата и время последнего переноса. Чтобы ограничить информацию из лога изменений. Также эта третья таблица понадобиться, если перенос выполняется на несколько локальных копий.

При такой технологии, вообще отпадает необходимость полного копирования. Кроме случая краха локальной копии. Ну, и время от времени, стоит чистить лог, если он слишком уж сильно распухнет.
...
Рейтинг: 0 / 0
Обновление файла
    #35537959
Ю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ю
Гость
Как это сделать с минимальной нагрузкой на сеть?

Перенести на флэшке.
...
Рейтинг: 0 / 0
Обновление файла
    #35537974
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы пытаетесь написать фокпро на фоспро.
На локале каждый пусть откроет файл А или Б с сервера (не принципиально) и перепишет все что ни хочет.
...
Рейтинг: 0 / 0
Обновление файла
    #35538159
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ю Как это сделать с минимальной нагрузкой на сеть?

Перенести на флэшке.

У меня флешка всего 128 Мб :-))))))
...
Рейтинг: 0 / 0
Обновление файла
    #35538164
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за ответы. Наверно, не очень четко объяснил ситуацию.

Итак. Есть большой файл А, в котором часть информации с каждым днем окончательно фиксируется. Файл большой, растет дальше. Информация, которая может меняться - 15%. На лок. компах нужна относительно свежая информация из основного файла А (ну, раз в час обновляясь) в монопольном режиме (ну нужно так) - файл С.
Качать каждый час на 30-40 компов по полгига по сетке считаю неразумным. Поэтому утром при переиндексации фикисирую неизменную часть файла А в файле Б на сервере. Этот файл один раз (утром) перекидывается на лок. комп. под именем С.
Все, 85% инфы на лок.компе. Вопрос - как с минимальной нагрузкой на сеть дописывать С из А.
Признак "фиксации" информации - поле DATE. Т.е., при dat<=date()-30 - записи утром переходят в Б.
Я вижу два варианта. 1 - раз в час из А в Б1 для dat>date()-30 и из Б1 дополнять С на лок.компах.
Второй вариант - раз в час сразу из А в С по этому признаку.Может, есть другие варианты.
Вот, собственно, все.
...
Рейтинг: 0 / 0
Обновление файла
    #35538169
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StindСпасибо всем за ответы....
Еще раз внимательно и вдумчиво прочитайте ответ Владимира. Он подробно описал как это обычно делается... Я многократно делал подобную "репликацию" данных даже через Интернет, где трафик еще более дорогой...

Чисто технически на каждом компьюере клиента надо запускать каждый час маленькое приложение по обновлению данных. Для VFP 9.0 это будет всего лишь одна строка значимого кода - INSERT FROM с логикой, описанной Владимиром...

Good luck!
...
Рейтинг: 0 / 0
Обновление файла
    #35538188
Stind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, каюсь. Всем спасибо, буду разбираться!
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обновление файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]