Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.04.03;
Скачать: [xml.tar.bz2];

Вниз

Кто на чем стал бы писать?   Найти похожие ветки 

 
Денис   (2003-03-12 22:29) [0]

Приветствую. Ситуация такова: нужно написать небольшое однопользовательское приложение для работы с локальной БД. Будет 5-8 таблиц, самая большая из них - порядка 30 тыс. записей, в ней неплохо было бы сделать 2-3 индекса, скорость критична. Периодически около 5-10 тыс. записей в ней будут обновляться, добавляться несколько десятков новых, при обновлении скорость тоже критична. С использованием какой технологии Вы бы стали это делать - Paradox, MS Access; через BDE, ADO и т.д.? Если есть веские аргументы за/против того или иного подхода, буду рад узнать. Спасибо.


 
just_1869   (2003-03-12 23:29) [1]

30к записей - фигня, можно писать на чём хочешь, хоть свой формат заводи =)
писал бы используя BDE, потому что ADO не использовал ни разу и, наверное, не использую =)


 
Pat   (2003-03-12 23:48) [2]

В зависимости от ограничения на размер дистрибутива..
Paradox+BDE - довольно быстро к проге добавится около 3,5 метра BDE
Access+ADO - Если сделать дополнительным условием то, что для Win9x обязательно наличие офиса, а для остального и так пойдет, то ничего дополнительного ставить не надо (ограничение на размер). Иначе 6 метров mdac_typ.exe


 
wara   (2003-03-13 11:07) [3]

Лучше писать в расчете на многоползовательский вариант в дальнейшем. Также надо предусмотреть возможность перегона данных в другую СУБД. Плюс интерфейс сделать так, чтобы можно было легко подключить его к старым данным в новой БД.


 
Anatoly Podgoretsky   (2003-03-13 11:13) [4]

Э, ADO/BDE + Paradox/Access как то препятстуют многопользовательскому режиму?


 
Sergey13   (2003-03-13 11:17) [5]

Я бы сначала на бумажке стал писать."небольшое однопользовательское приложение для работы с локальной БД" ни о чем не говорит. Тут вон один ядерную безопасность пишет - так у него то же самое - "небольшое однопользовательское приложение для работы с локальной БД"


 
Денис   (2003-03-13 23:08) [6]

Спасибо всем за ответы. В последние два дня выхожу в интернет только по ночам, поэтому приходится "поднимать" тему со дна форума.

Сейчас программа существует в варианте BDE - Paradox 7.

just_1869. Фигня, не фигня, а 2-3 секунды на элементарную выборку раздражают. Кстати, столкнулся с непоняткой - при массовом добавлении записей индексы не перестраиваются, BDE (или чья это особенность такая нехорошая?) про них вообще забывает как бы. Заходим в Database Desktop, удаляем и заново создаем индексы - тогда все ок, вижу, что файлы с индексами увеличились до ожидаемого размера. Почему сами не перестраиваются-то? :(

Pat. Ограничений на размер нет, тут главное скорострельность программы. По разным оценкам BDE и ADO отличаются по скорости в разы как в одну, так и в другую сторону. Понимаю, что это все частные случаи, но должно же быть какое-то общее мнение большинства относительно этих технологий... Кроме того, я хотел узнать, кто на чем пишет, если бы было много ответов, уже можно было бы оценить.

wara. Прога точно однопользовательская, это для домашних пользователей будет как связующее звено с довольно большой системой, т.е. вопрос количества одновременных пользователей именно этой программы не стоит.

Sergey13. Не совсем понял, о чем речь. Опыт работы с СУБД есть, а локальными последний раз занимался, когда ADO еще не было. Поэтому по старой памяти написал на BDE-Paradox. Но пытаюсь выяснить, что же все-таки лучше...

Всем. Вот вы бы на чем стали писать? :)


 
Jeer   (2003-03-14 00:48) [7]

DBISAM возьми.
www.elevatesoftware.com


 
Anatoly Podgoretsky   (2003-03-14 09:38) [8]

Денис (13.03.03 23:08)
Ссылку на тему размести на рабочем столе, поднимать будешь простым щелчком.

Тебе надо определиться с форматом БД, какой хочешь использовать, отсюда будет зависить метод доступа, если Парадокс только БДЕ, но со всеми проблемами Парадокса, в первую очередб индексы и потеря щаписей.

Можно также порекомендовать MSDE - это десктопный MS SQL сервер, входит в состав офиса, начиная с 2000, для него АДО
Тоже для Акцесс, но микрософт, также и борланд сворачивают десктоп базы в пользу десктопных SQL серверов. Борланд продал все свои десктоп базы другим фирмам, оставил только Интербейс.
Микрософт также кое что продал, но оставил ФоксПро и Акцесс.
Но если судить по дистрибутиву АДО, то они прекратили включать в него JET движок.

В итоге я особо рассмотрел бы возможность использования MSDE или IB, но в любом случае не стал бы применять Парадокс.

Кроме этого есть еще и альтернативные движки, в основном для dBase или свои форматы.


 
Sergey13   (2003-03-14 09:59) [9]

2Денис (13.03.03 23:08)
>Sergey13. Не совсем понял, о чем речь
Речь о том, что недостаточно инфы для советов. Что это будет за приложение, характер работы (частое добавление/обновление/удаление или в основном чтение, чтение полное или маленькие выборки), требования к скорости, безопасности, сохранности....
В принципе, я полностью согласен с Anatoly Podgoretsky © (14.03.03 09:38), и мой выбор был бы ИБ, за исключением ну очень простых случаев типа телефонного справочника или печати платежек(в этом случае dBase с прямым доступом).


 
Денис   (2003-03-14 10:21) [10]

Anatoly Podgoretsky. Про "поднимать со дна" - я имел ввиду то, что когда тема долго не обсуждается, она уходит с первой страницы и ее приходится иногда долго искать. Спасибо за MSDE, посмотрю.

Sergey13. Я в самом начале описал задачу. "Периодически около 5-10 тыс. записей в ней будут обновляться, добавляться несколько десятков новых...". С остальными таблицами интенсивной работы почти не будет, изредка добавление нескольких записей, редактирование существующих. Основной упор на одну эту большую таблицу (ок. 30 тыс. записей), на скорость обновления в ней нескольких тысяч записей, причем, к сожалению, не одним update сразу, а чуть ли не по одному update на каждую запись... Ну и разумеется важна скорость select, обычно это 0.1 - 0.5 % от общего объема таблицы...


 
Sergey13   (2003-03-14 10:40) [11]

2Денис (14.03.03 10:21)
Так периодичность то какая? Раз в квартал, в месяц, в день, в час, в минуту?


 
Barman   (2003-03-14 10:53) [12]

Access+ADO


 
MsGuns   (2003-03-14 10:54) [13]

Денис, я полгода назад был в твоей ситуации. Т.е. есть опыт (и весьма немалый) построения БД, но на локалках, в основном парадокс И ДОС. Первые 2 проги писал так же - Paradox7+BDE. Одна сетевая, вторая на одном компе. Работают, но там нагрузка небольшая. Но я сделал уже окончательный выбор - в пользу КССУБД, в частности IB/Firebird. При установке почти такой же, как и БДЕ, но ставится только на сервер, по скорости чуть медленнее (по сравнению с TTable), но надежность на 2 порядка выше. Никаких проблем с нарушением чего-либо пока не наблюдал (в отличие от БДЕ, где после каждого слета надо или lck-шки высекать или индексы поднимать).
А, главное, начинаю мыслить по-другому - и это, ИМХО, самое главное.

Так что мой совет - см.Anatoly Podgoretsky © (14.03.03 09:38)


 
Денис   (2003-03-14 11:01) [14]

Sergey13. Раз в сутки, но что это меняет? :)


 
Anatoly Podgoretsky   (2003-03-14 11:07) [15]

Денис (14.03.03 10:21)
Именно это я и имел ввиду, что бы не искать совсем, а сразу в тему попадать.

А с выбором, подумай еще, но чем раньше перейдешь на клиент серверные технологии, тем лучше. Десктопные то же можно использовать, зависит от условий, но при равенстве выбора КС.
Размер таблицы свяше 100 записей уже достаточное основание.


 
Sergey13   (2003-03-14 11:14) [16]

2Денис (14.03.03 11:01)
>Sergey13. Раз в сутки, но что это меняет? :)
Тогда ничего. Все потянет, без разницы. Но я бы рекоменловал прислушаться к Anatoly Podgoretsky © (14.03.03 11:07)


 
y-soft   (2003-03-14 11:20) [17]

А я бы использовал Yaffil Embedded + IBX (или FIBPLUS)
И объем дистрибутива маленький, и скорость работы впечатляет, и установка простая, и полная поддержка всех вкусностей SQL, и лицензия на Yaffil Embedded недорогая, так что даже купить можно:)


 
Anatoly Podgoretsky   (2003-03-14 11:26) [18]

А вот Yaffil я бы отговорил, лицензия достаточно дорогая, да и зачем когда есть индентичные бесплатные продукты - Interbase/Firebird.
Кроме того у меня он составляет впечатление сырого продукта.


 
Денис   (2003-03-14 11:36) [19]

Я все же сторонник чего-то либо от Microsoft, либо от Borland. Анатолий, а где можно почитать про использование MSDE, который якобы входит в состав Офиса? Еще не начинал искать, спрашиваю, вдруг ссылки хорошие есть на примете :)


 
y-soft   (2003-03-14 11:37) [20]

>Anatoly Podgoretsky © (14.03.03 11:26)
На Embedded лицензия дешевая (1 установка - 220 руб!), пробный срок 90 дней. Лично тестировал в довольно серьезных приложениях - работает очень неплохо. К тому же в IB/Firebird вообще нет вариантов Embedded. Вся установка сводится к копированию в рабочий каталог GDS32.dll из дистрибутива. По тестам обгоняет Firebird по скорости в разы, IB - еще больше. Плюс расширенные возможности SQL. В случае необходимости переход на многопользовательский вариант вообще тривиален.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.04.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.009 c
14-6751
Anatoly Podgoretsky
2003-03-16 07:57
2003.04.03
Именинники 16 марта


14-6719
blAckweber
2003-03-15 15:45
2003.04.03
Фигня творится с клавиатурой


3-6377
Shurko
2003-03-13 16:09
2003.04.03
Генерация уникального значения в Oracle


4-6864
Zelius
2003-02-05 22:07
2003.04.03
Как комбобоксу установить размер выпадающего списка?


14-6771
RelakS
2003-03-16 19:33
2003.04.03
Как уменьшить размер ехе-файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский