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

Вниз

драйвера доступа к базе данных   Найти похожие ветки 

 
bpv   (2003-03-05 10:39) [0]

уважаемые господа мастера хотелось бы обсудить с вами вопрос доступа к БД

есть база sybase для доступа к ней по исторической традиции используется БДЕ, но со времени написания данной программы технологии шагнули вперед появились новые технологии и компоненты доступа:
- прямого для сайбейза,
- адо,
- dbExpress
- SQLDirect
- другие

так вот хотелось бы увеличить быстродействие системы поэтому АДО скорее всего отпадает а вот остальные технологии хотелось бы обсудить, кроме того что возможно нам предется перейти к MSSQL - 2000


 
stone   (2003-03-05 10:42) [1]


> нам предется перейти к MSSQL - 2000

В этом случае АДО как раз не отпадает


 
bpv   (2003-03-05 10:46) [2]

2 stone спорный вопрос, хотя возможно ты и прав


 
stone   (2003-03-05 11:12) [3]

2 bpv (05.03.03 10:46)

Из перечисленных технологий, АДО наиболее оптимально работает с MSSQL. Относительно других СУБД не знаю.


 
BlackTiger   (2003-03-05 14:20) [4]

АДО само по себе не с чем не работает, ему все равно, это интерфейс. Работают АДО-провайдеры. А провайдер - это и есть максимально прямой доступ к базе. Для MSSQL прямее только SQLDMO.

АДО, на текущий момент, самый быстрый и законченный вариант для доступа к данным, при этом с "унифицированным" интерфейсом.
ДотНетовские и dbExpress (между прочим - обсолютно одно и то же по механизмам работы) еще слишком сыры.

А конкретно для Sybase есть свой родной провайдер.


 
bpv   (2003-03-05 14:56) [5]

2 BlackTiger
насколько я знаю адо работает по технологии активх(покрайней мере где-то такая инфа была) и в большинстве случаев (возможно исключая MSSQL and Access) работает медленнее хотя я сам не проверял
что для Sybase есть набор компонентов прямого доступа это я знаю, но мне думалось использовать либо небор компонетнов SQLDirect говорят он использует улучшенное БДЕ или dbExpress
правдо в стандартной поставке нет драйверов для Sybase
а в принципе мне хотелось бы узнеть есть ли какие нибудь объективные тесты доступа к базам используя разные технологии
если кто слышал про такое и может дать ссылку откликнитесь



 
BlackTiger   (2003-03-05 15:10) [6]

и в большинстве случаев (возможно исключая MSSQL and Access) работает медленнее хотя я сам не проверял

Вот-вот, все так - "но я сам не проверял". Многое еще зависит от разработчиков, от самой базы данных, от способа доступа (физически) к базе (локальная база, локалка, интернет, ФайлСервер/КлиентСервер/Трехзвенка). Реальных тестов "быстроты" не существует, все зависит от конкретных реализации и подхода.

Опять же, медленнее, чем что? Чем ODBC16/32? Никто не спорит.
Медленне, чем SQLDMO (для SQL2000)? Вопрос очень спорный. Навесь все навороты АДО на эту бедную библиотеку - результат будет работать еще медленнее, чем что либо.

Я для MSAccess97 делал базы, которые летали на больших объемах данных. С другой стороны видел базы, который тормозили самым дичайшим образом уже на мизерных объемах.

При всем при этом, при использовании "Клиент-Сервер" тормозит, как правило железо (сервер, канал связи), а не клиент - клиент-то "тонкий".

Так что не надо "наезжать" на АДО! Если встретилось несколько "тормознутых" приложений, то скорее по голове постучать надо разработчикам, а не валить все камни на АДО.


 
BlackTiger   (2003-03-05 15:22) [7]

Хотя вот вспомнил!

Общался как-то с одними драйверами для не стандартной базы. Я бы оторвал руки им, этим разработчикам. Эти дурики пошли "в лоб". Данные просто быбирались ДВАЖДЫ! Один раз из базы во временную таблицу, потом уже из этой таблицы - в рекордсет. СИНХРОННО! С визуализацией процесса ! :))) ("Retreiving record 3 of 5896585 into temporary table").

В другом драйвере наблюдается просто странный косяк при выборке данных (хотя запись/удаление - на ура). При простом переборе Next-ом все отлично, но если в запросе пишешь "SELECT * FROM Table ORDER BY Field1 WHERE <что-то>" - всё, просто все встает колом. Методом проб вычислил, что эта зараза просто ждет последнюю запись ВСЕЙ таблицы, игнорируя WHERE.

Ну и при чем тут АДО?


 
Владислав   (2003-03-05 15:28) [8]

> BlackTiger (05.03.03 14:20)
> BlackTiger (05.03.03 15:10)

Что быстрее?
SQLDO -> ODBC -> MSSQL Server
или
ODBC -> MSSQL Server
Как думаешь?


 
bpv   (2003-03-05 15:30) [9]

2 BlackTiger мы сейчас не говорим о нестандартных и т.п. базах
я думаю как для сайбазе так и мсскуеля драйвера нормальные
а для доступа ты использовал дельфовые компоненнты или API?


 
sniknik   (2003-03-05 15:30) [10]

BlackTiger (05.03.03 15:10)
давай пожму твою мужественную руку. :-))) согласен на 100% (особенно с последней фразой)

сколько раз сам встречался с подходом простой замены компонент TTable на TADOTable, не понимая принципов не деля базы на локальные и серверные, не понимая смысла SQL, просто заменят, и в итоге наивной удивленностью а чего оно тормозит?.

BlackTiger (05.03.03 15:22)
но если в запросе пишешь
SELECT * FROM Table ORDER BY Field1 WHERE <что-то>"
возможно это правильное поведение, если ты не ошибся в написании
сначала идет условие, после сортируются выбранные, у тебя наоборот
SELECT * FROM Table WHERE <что-то> ORDER BY Field1
получается логично


 
bpv   (2003-03-05 15:47) [11]

кроме того при обсуждении скорости технологии доступа к БД
следует считать что квалификация разработчика высокая :-)


 
bpv   (2003-03-06 10:20) [12]

что никто не интересовался скоростью работы
я понимаю что самую быструю технологию можно испортить кривыми ручками но всеже


 
Владислав   (2003-03-06 10:31) [13]

> bpv (06.03.03 10:20)
Про это ничего не могу сказать:
- dbExpress
- SQLDirect
Я ODBC использую.


 
Wellslava   (2003-03-06 10:34) [14]

из собственного опыта - через ODBC быстрее и лучше, а если надо использовать несколько баз, то BDE вообще не подходит...


 
bpv   (2003-03-06 11:38) [15]

to Wellslava
почему не подходит бде подднрживает все популярные субд


 
BlackTiger   (2003-03-06 12:33) [16]

>bpv
Вопросом на попрос (10 лет в еврейской фирме :) )
А почему Borland пытается от него избавиться?


 
BlackTiger   (2003-03-06 12:39) [17]

>sniknik

Я просто в порядке очепятался :).
Там была ерунда в том, что открыть ВСЮ таблицу, потом пройтись Next"ом по записям и обработать только нужные, получалось на порядок быстрее, чем сделать выборку по критерию и работать уже результатом запроса.


 
bpv   (2003-03-06 14:50) [18]

2 BlackTiger я бы тоже хотел избавиться только не решил на что затем и вопрос поднял


 
kkot   (2003-03-06 16:46) [19]

2 bpv

Касаемо прямого доступа. Есть несколько нормальных компонент для доступа к SYBASE. Лично я использую NativeDB. Единственно, что слегка портит жизнь - то, что они все платные. Но NativeDB проявляет свою "триальность" только тем, что перед созданием форм выводит свое окошко и просит нажать "ОК". Это можно задавить в WinIce но это не дело каждый свой проект ковырять, поэтому наша контора тяготеет к покупке легальным путем. Скачать их можно на www.nativedb.com Есть еще ASADAC, говорят, что тоже очень неплохие, но лично не пробовал, ничего сказать не могу.


 
kkot   (2003-03-06 16:49) [20]

P.S. Если у кого-то есть кряк к NativeDB, может поделитесь?


 
bpv   (2003-03-06 17:09) [21]

2 kkot
я посмотрел этот набор для Anywhere а у нас ентерпрайз


 
BlackTiger   (2003-03-06 20:00) [22]

bpv! Да не мучайся ты так, сколько людей - столько мнений.

Однозначного ответа тебе никто не даст.

Погоняй несколько вариантов и остановись на том, который тебе больше подходит/понравился. Мне лично нравится АДО, кому-то другому - что-то другое. АДО более стандартизован и надежен, чем различные сторонние разработки, но это не говорит о том, что сторонние разработки плохи.

Тут вопрос не в быстродействии. Все работает одинаково хорошо, если к нему приложить некоторые усилия. Передача данных между клиентом и сервером все равно не будет быстрее, чем канал связи между ними, а обработка данных сервером никак не зависит от клиента (чем и хороши клиент-серверные базы). Лучше в сервер напихать железо покруче - ему же обрабатывать запросы, а не клиенту, клиент только принимает ввод пользователя, отправляет запрос серверу и получает от него ответ (за редким исключением).

А про BDE лучше начать забывать уже сейчас. Просто потому, что бормановцы обещают его просто выкинуть из новых версий, оставив только ADO и dbExpress, для которого есть драйвер к Sybase. Но мне лично dbExpress не нравится (как и провайдеры .NET) из-за своей архитектуры. Но если не оставят выбора, буду работать и с dbExpress/.NET.


 
bpv   (2003-03-07 09:35) [23]

2 BlackTiger да я обобо не мучаюсь мне просто интересно


 
Alex Chu   (2003-03-07 09:51) [24]

ct-lib
www.geocities.com/ctlibcomps

бесплатность на уровне dcu, а исходники за 300

что ещё может быть нужно sybase?


 
bpv   (2003-03-07 13:46) [25]

ладно закрываем те



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

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

Наверх




Память: 0.51 MB
Время: 0.008 c
1-87905
Saracin
2003-03-17 04:35
2003.03.27
Как сделать главную форму невидимой при старте проги.


1-87892
Barlok
2003-03-16 15:10
2003.03.27
Подскажите как сделать чтобы символ подсвечивался в Edit.


3-87839
Nazer
2003-03-10 17:04
2003.03.27
Пароль и логин для базы данных IB


3-87807
brestmarket
2003-03-08 03:43
2003.03.27
С какими параметрами необходимо создать(осуществлять доступ) к


14-88159
Nick-from
2003-03-10 14:18
2003.03.27
Мать не видит винта





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский