AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.03.2006, 12:56   #21  
lagr221374
Гость
 
n/a
Цитата:
Сообщение от Recoilme
Ваше подозрение оправдано. Например если через драйвер фокспро файл из 100 000 строк создается порядка 5-10 минут - то напрямик в файл - 1-2 секунды. Правда это напрямик, без длл- ек.
Вот-вот и я о том же
Старый 02.03.2006, 13:01   #22  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Цитата:
Сообщение от Recoilme
Ваше подозрение оправдано. Например если через драйвер фокспро файл из 100 000 строк создается порядка 5-10 минут - то напрямик в файл - 1-2 секунды. Правда это напрямик, без длл- ек.
У Фокспро всегда не как у людей.
По факту, если брать драйвер ДБФа, то разницы особой нет.
К тому же, если писать напрямую в текст, то возникает вопрос, как отслеживать ограничения...
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 13:06   #23  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Цитата:
Сообщение от KSS
У Фокспро всегда не как у людей.
По факту, если брать драйвер ДБФа, то разницы особой нет.
К тому же, если писать напрямую в текст, то возникает вопрос, как отслеживать ограничения...
Судя по "По факту" - пробовал что-ль? Брал драйвер ДБФа и писал в файл? Какой драйвер? За сколько записал n строк?
Если я "просто не умею их готовить" - верну репутацию взад
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 13:14   #24  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Да, было дело, когда приперло писать данные в ДБФ, а настраивать ДСНы казалось несистемным, просто почитал МСДН и сделал универсальные классы, которые конфигурируют драйверы ODBC.
Драйвер как раз "Microsoft dBase Driver (*.dbf)" четвертой версии (фокспро, если посмотришь, вообще дальше первой не пошел).
Стотыщ не писали, помницца, тысяч 20 с выборкой в и обработкой в Аксапте писалось несколько секунд. Не 1-2, но что-то около 7-10, точно не мерял - давно было.
Я далеко не программист, если чо - просто было интересно, да и нужно сильно, поэтому приходилось разбираться.
Так же ради интереса я нашел-таки способ перекрывать в "Программных" диалогах стандартные обработчики. Хотя решение не особо красивое.

А нафига репутация тут нужна, кстати? За нее денег платят по итогам года?
__________________
Жизнь такова, какова она есть и больше никакова.

Последний раз редактировалось KSS; 02.03.2006 в 13:17.
Старый 02.03.2006, 15:00   #25  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Цитата:
Сообщение от KSS
Да, было дело, когда приперло писать данные в ДБФ, а настраивать ДСНы казалось несистемным, просто почитал МСДН и сделал универсальные классы, которые конфигурируют драйверы ODBC.
Драйвер как раз "Microsoft dBase Driver (*.dbf)" четвертой версии (фокспро, если посмотришь, вообще дальше первой не пошел).
Стотыщ не писали, помницца, тысяч 20 с выборкой в и обработкой в Аксапте писалось несколько секунд. Не 1-2, но что-то около 7-10, точно не мерял - давно было.
Я далеко не программист, если чо - просто было интересно, да и нужно сильно, поэтому приходилось разбираться.
Так же ради интереса я нашел-таки способ перекрывать в "Программных" диалогах стандартные обработчики. Хотя решение не особо красивое.

А нафига репутация тут нужна, кстати? За нее денег платят по итогам года?
Взял драйвер "Microsoft dBase Driver (*.dbf)", версия 4.0
Написал вот такой джоб:
PHP код:
static void ip_vkul_testMSDbase(Args _args)
{
    
COM                 cn = new COM('ADODB.Connection');
    
int                 i;
    
TimeOfDay           time2,time TimeNow();
    ;
    
cn.open("Data Source=dBASE Files");
    
time2 TimeNow();
    for (
i=0;i<20000;i++)
    {
        
cn.execute("INSERT INTO test (test) VALUES ('супер тест')");
    }

    
info("Время: "+time2str(TimeNow()-time,0,0)+ " Вставка: "+time2str(TimeNow()-time2,0,0));

Вроде никаких особых выборок и обработок...Время вставки,
3 минуты 38 секунд
Научите, меня, товарищ не-программист, что я не так делаю??? Ну пожалуйста...........

А репутация нужна , на мой взгляд, чтобы пустоболов от нормальных людей отделить
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 15:11   #26  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,701 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от KSS
Да, было дело, когда приперло писать данные в ДБФ, а настраивать ДСНы казалось несистемным, просто почитал МСДН и сделал универсальные классы, которые конфигурируют драйверы ODBC.
Драйвер как раз "Microsoft dBase Driver (*.dbf)" четвертой версии (фокспро, если посмотришь, вообще дальше первой не пошел).
Дальше "первой" чего? Версии ODBC?

FoxPro остановился на 6 версии ODBC. Дальше был выпуск только ADO под 9 версию. (Для справки, вышел Service Pack к 9 версии собственно Visual FoxPro)

Если речь о файлах DBF, то существует "вагон и мальнекая тележка" версий собственно файлов DBF.

FoxPro создал 5 или 6 собственных модификаций формата DBASE. Т.е. есть отличия в структуре данных фалов DBF.

Именно поэтому, когда говорят "сделал универсальные классы" - не верю . Скорее всего, речь идет о каком-то одном формате файлов DBF из всей возможной кучи.

Если говорить о скорости, то ODBC - это универсальное решение, рассчитанное на решение многих задач. Не только вставки записей. Разумеется, он будет несколько проигрывать процессу, "вылизанному" только под задачу вставки данных.

Но здесь каждый решает сам, что важнее. Скорость или универсализм.
Старый 02.03.2006, 15:35   #27  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Цитата:
Сообщение от KSS
У Фокспро всегда не как у людей.
P.S.
"Microsoft dBase Driver (*.dbf)", версия 4.0
Время вставки 100000 записей - 17:11

ФоксПро, Provider=VFPOLEDB.1
Время вставки 100000 записей - 2:50

Job тот же.

Время вставки напрямую в файл: 5 секунд
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 15:44   #28  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Цитата:
Сообщение от Владимир Максимов
Дальше "первой" чего? Версии ODBC?

FoxPro остановился на 6 версии ODBC. Дальше был выпуск только ADO под 9 версию. (Для справки, вышел Service Pack к 9 версии собственно Visual FoxPro)

Если речь о файлах DBF, то существует "вагон и мальнекая тележка" версий собственно файлов DBF.

FoxPro создал 5 или 6 собственных модификаций формата DBASE. Т.е. есть отличия в структуре данных фалов DBF.

Именно поэтому, когда говорят "сделал универсальные классы" - не верю . Скорее всего, речь идет о каком-то одном формате файлов DBF из всей возможной кучи.

Если говорить о скорости, то ODBC - это универсальное решение, рассчитанное на решение многих задач. Не только вставки записей. Разумеется, он будет несколько проигрывать процессу, "вылизанному" только под задачу вставки данных.

Но здесь каждый решает сам, что важнее. Скорость или универсализм.
Универсальность в части использования любого двайвера ODBC без настройки ДСН.
То. что файлов море и, опять же, море дополнительных драйверов - неоспоримо.
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 15:54   #29  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Thumbs down
Моя воля - расстреливал бы парочку консальтантов до начала проекта
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 15:56   #30  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Писят шесть секунд...
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 15:57   #31  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Job в студию
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 16:00   #32  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Твой джоб, я в ДСН поставил монопольный доступ.
Мож просто от компьютера зависит?
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 16:06   #33  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Но ради справедливости скажу, что вставка текстом БЕЗ всяких индексов и проверок будет быстрее.
Если все же, нормальную работу рассматривать, как работу с сохранением целостности, то, наверное, не стоит велосипед изобретать...

А стрелять не нужно не разобравшись. Радикализм - не признак зрелости личности
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 16:14   #34  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Цитата:
Сообщение от KSS
Твой джоб, я в ДСН поставил монопольный доступ.
Мож просто от компьютера зависит?
Не верю (с)
3:33 в эксклюзив моде.

Вставь 100000 и доложи о результатах. Приврать не забудь:
Цитата:
Сообщение от KSS
Стотыщ не писали, помницца, тысяч 20 с выборкой в и обработкой в Аксапте писалось несколько секунд. Не 1-2, но что-то около 7-10, точно не мерял - давно было.
Наверно выборки и обработки были проще чем в этом джобе
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 02.03.2006, 16:19   #35  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Угу, была вставка слова из трех букв
Окей, запиши погрешность в шесть раз - наврал - не десять секунд, а минута.
Можешь вычесть еще одно очко

Если не веришь - запусти на терминальном сервере у себя и посмотри, чо будет.
Приврать тоже не забудь, а то чистота эксперимента теряеццо.
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 16:31   #36  
garu is offline
garu
Участник
 
33 / 21 (1) +++
Регистрация: 03.07.2003
О чем речь господа?
Вы это, определитесь кто что тестирует. Импорт или Экспорт
ИМХО - ODBC аццтой!!!
За это сообщение автора поблагодарили: KSS (1).
Старый 02.03.2006, 16:41   #37  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Цитата:
Сообщение от garu
Вы это, определитесь кто что тестирует. Импорт или Экспорт
ИМХО - ODBC аццтой!!!
Хаха...в точку, кстати...
Это надо обязательно отразить в репутации.
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 16:46   #38  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Цитата:
Phoenix (16:21:02 2/03/2006)
20 000 строк

Phoenix (16:21:16 2/03/2006)
старая выгрузка = 3 мин 49 секунд

Phoenix (16:21:27 2/03/2006)
новая выгрузка = 18 сек
старая выгрузка - это выгрузка реальной таблицы с кучей полей на "тормозном фокспрошном драйвере", который делает МС драйвер по быстродействию раза в 4 минимум.

новая выгрузка - напрямую в файл.
Обработка на сервере.

Погрешность у тебя не в 6 раз, а 3 мин 49 = 229сек * 4 раза медленней драйвер = 916 сек
И выборки-обработки -запись - у тебя были 7-10 секунд (точно ты не мерял ) => 916 / 10 = 91 раз

Вот за такую погрешность я бы и ставил к стенке

PS: всё. утомил ты меня. пошёл работать
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/

Последний раз редактировалось Recoilme; 02.03.2006 в 16:50.
Старый 02.03.2006, 16:54   #39  
KSS is offline
KSS
Коллективное бессознательn ое
 
116 / 10 (1) +
Регистрация: 09.12.2002
Адрес: Москва
Хорошо, Вадим, уел, в данном случае мне легче согласиться, я не обладаю столь значительной вычитслительной мощью и терпением

Посмотри на погрешность финансистов при распределении затрат и ты станешь добрее к людям.

Да, иди отбей хоть часть зарплаты.
__________________
Жизнь такова, какова она есть и больше никакова.
Старый 02.03.2006, 17:00   #40  
garu is offline
garu
Участник
 
33 / 21 (1) +++
Регистрация: 03.07.2003
Нет такого кода, который нельзя было бы соптимизировать !!!
Бессмысленный спор я думаю. Все зависит от постановки задачи. Кого то устроит и 1 час, а кого то и 5 секунд много. Работайте работайте господа
Теги
dbf, download, faq, законченный пример, запись данных, полезное, производительность, чтение данных, экспорт

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Выгрузка из ODBC naf DAX: Программирование 9 25.12.2008 19:07
почти DBF Gorlum DAX: Программирование 3 17.03.2006 12:52
ODBC/ADO Alexis DAX: Программирование 6 22.12.2005 18:50
Импорт из DBF : кириллица Mechanizm DAX: Программирование 8 29.09.2004 18:31
Достать данные из DBF в форму edd DAX: Программирование 29 06.02.2003 21:01

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:25.