powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Локальная работа с большими объемами данных
17 сообщений из 17, страница 1 из 1
Локальная работа с большими объемами данных
    #32641933
Dremlin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
У меня следующий вопрос.
Клиент должен работать (только чтение данных) с наборами таблиц локально.
Таблицы будут выгружены с SQL Server'а или в виде Flat-файлов, или в виде файлов dbf, и отправлены клиентам.
Сложность заключается в том, что объемы данных могут быть большими (порядка 2-5 млн записей в таблице) и, как я думаю, работа настольной СУБД, например, как Paradox, будет очень медленнной.
При работе же с текстовыми файлами встает вопрос производительности и сложность обработки данных (т.е. в клиентском приложении будет множество DML операций, и как работать с простыми текстовыми файлами... отается проблемой). Что посоветуете? Заранее спасибо за ответ.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32641980
Фотография avlih
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
acsess. а можно узнать причину такой задачи подробнее?
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32641997
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
только не акс... если так уж нравятся текстовые файлы то csv... авторСложность заключается в том, что объемы данных могут быть большими (порядка 2-5 млн записей в таблице при таких обьемах все что угодно локально тормозить будет..
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642019
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. в клиентском приложении будет множество DML операций -- и это работа только на чтение?!

1 или 2 млн. не имеет значения для нормально написанного приложения.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642022
MaratIsk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PS
имел ввиду и 5 млн.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642032
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да?
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642253
karly™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DremlinЗдравствуйте..Здравствуйте

DremlinКлиент должен работать (только чтение данных) с наборами таблиц локально. Таблицы будут выгружены с SQL Server'а или в виде Flat-файлов, или в виде файлов dbf, и отправлены клиентам.DBF = > Visual FoxPro

DremlinСложность заключается в том, что объемы данных могут быть большими (порядка 2-5 млн записей в таблице) и, как я думаю, работа настольной СУБД, например, как Paradox, будет очень медленнной.Быстрее, чем Fox работает с локальными dbf-таблицами, ничего не найти. 5 млн. записей - не проблема. Единственное ограничение - размер одной таблицы не может превышать 2Gb. Это связано с применяемой технологией блокировок.

DremlinПри работе же с текстовыми файлами встает вопрос производительности и сложность обработки данных (т.е. в клиентском приложении будет множество DML операций, и как работать с простыми текстовыми файлами... отается проблемой).В твоем распоряжении будет богатый DML, так что здесь даже обсуждать нечего
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642274
Dremlin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем, задача такая. Есть программа билинговой системы для печати квитанций абонентам. Она клиент-серверная. До этого все квитанции формировались в центральном офисе, где и физически расположены все сервера. Проблема в том, что печать на месте есетественно будет произведена намного быстрее, чем у заказчика. Заказчик хочет печатать квитанции у себя в другом городе за тысячи километров от центрального офиса. Перед печатью квитанций формируются данные, которые как раз и отправляются заказчику в виде текстовых файлов, где на их основе будет производится локальная печать квитанций.
Наши специалисты говорят, что настольная СУБД не подойдет для больших объемов данных, а работать с текстовыми файлами как с таблицами геморно (скажим легко ли будет иммитировать SQL-запрос с множеством подзапросов работая только с текстовыми файлами).
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642281
Dremlin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем, задача такая. Есть программа билинговой системы для печати квитанций абонентам. Она клиент-серверная. До этого все квитанции формировались в центральном офисе, где и физически расположены все сервера. Проблема в том, что печать на месте есетественно будет произведена намного быстрее, чем у заказчика. Заказчик хочет печатать квитанции у себя в другом городе за тысячи километров от центрального офиса. Перед печатью квитанций формируются данные, которые как раз и отправляются заказчику в виде текстовых файлов, где на их основе будет производится локальная печать квитанций.
Наши специалисты говорят, что настольная СУБД не подойдет для больших объемов данных, а работать с текстовыми файлами как с таблицами геморно (скажим легко ли будет иммитировать SQL-запрос с множеством подзапросов работая только с текстовыми файлами).
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642441
karly™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DremlinНаши специалисты говорят, что настольная СУБД не подойдет для больших объемов данныхА чем ваши специалисты аргументируют? Этико-религиозными соображениями?

Клиент-сервер от настольной БД отличается
а) Б о льшими возможностями по контролю за доступом к данным
б) Б о льшими возможностями по восстановлению после сбоев
в) Б о льшим количеством одновременно работающих пользователей

Настольные БД
а) Требуют намного меньше ресурсов
б) Данные занимают меньше места (в разы)
б) Работают гораздо быстрее (локально - в десятки раз)

О разнице в поддерживаемых объемах имеет смысл говорить, если объемы измеряются гигабайтами.

В вашем случае:
а) Шифровать данные и разделять права доступа не требуется
б) Данные не редактируются, поэтому сбои исключены
в) Одновременная работа десятков пользователей в одной базе не нужна

И в чем преимущество "не настольных" СУБД? Наживать себе гемморой только потому, что вера не позволяет использовать что-то кроме Oracle?

Я вам советую провести пару простых тестов. Установите Фокс. Создайте пустую таблицу, и добавьте в нее свои 5млн. записей из текстового файла. Выполните несколько запросов. Потом проиндексируйте ключевые поля и снова выполните те же запросы. Сравните время выполнения этих операций с аналогичными действиями на SQL Sever. Думаю, надобность писать в этот форум отпадет.

Да, еще. Если речь идет о печати квитанций - в Фоксе есть встроенный генератор отчетов. Он достаточно прост, зато быстр. Для печати квитанций - то, что надо. Говорю это, исходя из собственного опыта - приходилось распечатывать отчеты по 6тыс. страниц.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32642725
karly™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Конкретные данные:

Таблица dbf - (F1 c(100), F2 N(10.0), F3 D, F4 L) 5млн.записей занимает 572Mb. Экспорт этого объема в текстовый файл - 37 сек, добавление из текстового файла - 42 сек. Поиск случайного значения по полю F2 (N10.0) - не более 2 сек без использования индексов.

Комп - PIV 2Ггц, 256Mb
Операционка - Win2000, NTFS, антивирус отключен.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32643446
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
karly™ Поиск случайного значения по полю F2 (N10.0) - не более 2 сек без использования индексов.
С одного диска? В dbf'е то данные построчно лежат, в кэш явно не помещаются. Без индекса - не верю.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32643538
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Dremlin. Что-то я не въехал. То, что Вы называете клиент-сервером реализовано на DBF? На кой фиг посылать филиалам какие-то таблы? Что, запросы уже отменили? Или, хотя я и не сторонник такого подхода - репликации тоже уже не работают?
Для печати квитанций для нормального клиент-сервера тысячи километров не помеха. тут не в километрах дело. Вы про сети слышали?
====================
Извините, что может быть слишком резко. Но это мне напомнило случай, когда в головной фирме отсылали в филиалы инфу по факсу, там ее сканирили, распознавали и специальной прогой подгружали в базу.
======
Я-то первоначально думал, что речь идет о каком-то справочнике на CD.

+++++
Те, кто думают, что я питаюсь исключительно кровью новорожденных младенцев, ошибаются. Я их еще и жарю!
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32644322
karly™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Локшин Марк
Вместо "не верю" лучше проделать то же самое и сказать "А у меня получилось в 10 раз больше/меньше".

Данные лежат построчно, но для поиска по одному полю считывается не вся таблица, а только это поле. Вот если делать поиск по подстроке текстового поля (оно занимает больше всего места в таблице указанной структуры), результаты были бы другие.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32644483
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
karly™Данные лежат построчно, но для поиска по одному полю считывается не вся таблица, а только это поле. Вот если делать поиск по подстроке текстового поля (оно занимает больше всего места в таблице указанной структуры), результаты были бы другие.
Гы гы. Т.е. вы утверждаете, что если читать данные с диска по схеме прочитал 4 байта - 110 пропустил, и т.д. то получится быстрее? Ну-ну.
Если находится за две секунды, то скорее всего эти записи находятся в начале таблицы. Ну нет сейчас дисков которые по 290 МБ в секунду считывают. И при построчном хранении невозможно считывать только один столбец. По крайней мере с таким размером строки, как у вас.
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32644713
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2karly™

Ну, положим, без индекса поиск за 2 сек возможен, но не любого значения (тут все будет зависеть от того, насколько близко к началу таблицы находится искомая запись). Но, в целом, поддерживаю: FoxPro - лучший выбор. А предусмотреть индексирование можно при первом открытии таблицы. Вот уж с индексами поиск занимает много меньше 0.01 секунды ;-)
...
Рейтинг: 0 / 0
Локальная работа с большими объемами данных
    #32647533
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПроблема в том, что печать на месте есетественно будет произведена намного быстрее, чем у заказчика. Заказчик хочет печатать квитанции у себя в другом городе за тысячи километров от центрального офиса. Перед печатью квитанций формируются данные, которые как раз и отправляются заказчику в виде текстовых файлов, где на их основе будет производится локальная печать квитанций. Если инфа будет только печататься, то мне кажется, со скоростью проблем быть не должно- все равно самая медленная часть будет именно печать.

Хотя... там будет печатаься все за раз, или отпечатываться по одному, для подошедшего клиента?
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Локальная работа с большими объемами данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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