Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Очень медленно выполняются запросы, Delphi+Interbase 
V
    Опции темы
Fedia
Дата 6.8.2006, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



jack128,  т.е. теоретически утверждение:
Цитата(SergeBS @  4.8.2006,  17:19 Найти цитируемый пост)
Поскольку СО ВСЕМИ СЕРВЕРАМИ РАБОТАЮТ ЧЕРЕЗ ТРАНЗАКЦИИ и никак иначе.

для СУБД MySql например не верно ? Там ведь при запросах в БД никакие транзакции не стартуют ?


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
jack128
Дата 7.8.2006, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 18.5.2005

Репутация: нет
Всего: 4



Цитата(Fedia @  6.8.2006,  23:42 Найти цитируемый пост)
Там ведь при запросах в БД никакие транзакции не стартуют ? 

ну если в MySQL они не стартуют, то какие могут быть сомнения? 
ЗЫ а что, в мускуле вообще нету транзакций или они не обязательны к использованию?
PM MAIL   Вверх
Fedia
Дата 7.8.2006, 00:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 3
Всего: 13



Цитата

ЗЫ а что, в мускуле вообще нету транзакций или они не обязательны к использованию?

Они вроде поддерживаются в дополнении к MySql Inno DB, а в самой СУБД их нет. Хотя возможно в 5-й версии уже появились.


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
superVad
Дата 8.8.2006, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 735
Регистрация: 6.4.2006
Где: Черкассы, Украина

Репутация: 3
Всего: 15



Цитата(samurai @ 3.8.2006,  07:15)
to jack128
ну не совсем, происходит ряд проверок
здесь же выполнение StoredProc (хранимые процедуры)

мне кажеться проблема гдето здесь
PM MAIL   Вверх
SergeBS
Дата 8.8.2006, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

Репутация: 11
Всего: 22



2ALL
Спокойнее, спокойнее, горячие финские парни...
А теперь я по вредности своей начну свое задвигать, благо чуток времени выпал smile

Fedia
Цитата

Они вроде поддерживаются в дополнении к MySql Inno DB, а в самой СУБД их нет. Хотя возможно в 5-й версии уже появились. 

Воообще-то MySQL тем и уникален в своем роде, что поддерживает несколько разных способов хранения данных. Из док:
Цитата

7. Типы таблиц MySQL
...
Обратите внимание на то, что MySQL поддерживает два различных типа таблиц: транзакционные (InnoDB и BDB) и без поддержки транзакций (HEAP, ISAM, MERGE и MyISAM).

Это для версий новее 3.23.6. 
Без транзакций обойтись практически невозможно. Более просто можно сформулировать так: если не нужны транзакции, то и сервер не нужен.

Насчет блокировочников и версионников - из распространенных:
Версионники: InterBase (IB), FireBird(FB), Oracle
Блокировочники: MS SQL, MySQL, Informix, MS Jet(Access)
Ну кого забыл - извиняйте, я не со всеми дела имел, а лазить по описаниям - лениво.
В двух словах разница.
Версионники хранят несколько версий записи, и при чтении по хитромудрым правилам подсовывают версии записи, так что одна запись может иметь кучу версий и блокировок при попытке чтения записи, которую другая транзакция изменяет, но еще не откоммитила, так сказать, не происходит. Но потом зато происходит т.н. "кооперативная сборка мусора" - уборка "лишних" версий. И она может изрядно  сожрать, если не думать. Подробнее - в доках. Есть еще на эту тему на ibase.ru статья Кузьменко, признанного "гуру" по IB/FB. Полезно, по делу, кратко. РУЛЕЗЗ!
У блокировочников - по-другому. Транзакция блокирует запись, которую изменяет, от чтения/редактирования другими транзакциями. Отсюда и название. Можно управлять мощностью блокировки.
Естественно есть способы в обоих случаях (версионность/блокировочность) поведением рулить.

DimW
Цитата

в этом все и дело что это классики, они описывают правельные БД - нормалезованные, и учат контролировать данные при помощи всевозможных констрейтов, тригеров и чем больше их тем лучше! Вот такие любители классической литературы напроектируют баз данных, а потом расхлебывай заними!  


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

Цитата

ну так вот те БД которые используются для получения информации называются аналитическими(предпологается что данные накапливались в БД ранее, или транзакций на порядок меньше чем возврата данных).

Рекомендую ознакомиться:
1. С принципом ("бритвой") Оккама.
2. С книжкой любого классика по СУБД (раз уж лекции просачковал). Хотя бы классификацию и решаемую задачу. Дабы не изобретать велосипеда с квадратными колесами и не морочить им всем горовы. Свои доморощенные термины и теории оставьте при себе. 
Здесь в основном практики общаются.

Цитата

SergeBS, вдогонку:  читайте дальше Дейта, Бойса, Кодда, Ульмана и будет вам счастье, во могу даже дать телефон моего бывшего лектора, вы с ним поладите!!!    

Уже читал. И поэтому я могу ОБОСНОВАТЬ заказчику, почему у меня в базе 62 таблицы, например, а не 50 и т.п. Вам такое не грозит. 
Заодно с отказом от нормальных форм можете отказаться от таблицы умножения (от грамматики уже отказались).  smile 

PM MAIL   Вверх
Alex
Дата 8.8.2006, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 17
Всего: 162



Более корректно:
Цитата

Версионники: InterBase (IB), FireBird(FB), Oracle, MS SQL 2005 (опционально)
Блокировочники: MS SQL, MySQL, Informix, MS Jet(Access)



--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
samurai
Дата 12.9.2006, 07:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 26.1.2006
Где: РФ, Омск

Репутация: нет
Всего: нет



В общем почти разобрался:

1. с моими объёмами 100Мб таблиц даже с плохими индексами можно работать быстро
2. моя проблема была в том что клиентские приложения не все обновлялись вовремя и в некоторых
    оставались транзакции с параметрами по умолчанию, в то время как в основных транзакциях параметры такие
    
Код

    read_committed
    rec_version
    nowait
    

    умолчательные транзакции конфликтуют с моими, после прогона IBAnalyst, выяснилось что
    некоторые транзакции живут уже 80 дней, тормоза были страшенные.
    Когда все транзакции привёл к одному виду всё заработало более или менее прилично
3. В данный момент потеря скорости обусловленна ещё тем, что чистка мусора имеет тот же приоритет что и основная транзакция,
    я это сделал только для стабильности, чтобы в исключительных ситуациях мусор не накапливался в прогрессии,
    т.к. я начинающий и не уверен в правильности своих действий  smile  

    Всем спасибо smile
PM MAIL ICQ   Вверх
AKN
Дата 18.9.2006, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 97
Регистрация: 11.11.2005

Репутация: нет
Всего: нет



Как увидел проблему, хотел сказать за уровни изолированности транзакций. Была у меня такая проблема. Еще советую использовать 2 сессии - одну для чтения, вторую для модификации данных. Гораздо жизнь упрощается
PM MAIL   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0758 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.