|
|
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Доброго дня всем! У меня иммется немного свободного времени которое я хочу потратить на написание клиент серверного приложения . Необходима помощь профессионалов советами. Знания языков у меня кое какое имеется . Есть желающие помочь ? с меня пивас :) 1) сделал сервер для тестирования который постоянно доступен (поставил fb2,5 и oracle11gr2 ) (fb и oracle порты по умолчанию) (при необходимости вышлю все пароли и т.д) 2) 1 - е что планирую сделать сравнить субд в плане производительности . Для фб написал клиента для тестирования , для оракла делаю в данный момент(точно такого же) как будет готого , выложу всё . Пока вопросы не возникают но дальше я уверен появятся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 10:18 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
выкладывай сюда, наставника не обещаю, а обоср..ать подход тут всегда рады делать "точно такого же" под оракл - плохая идея, каждая субд имеет свои особенности и навороты (особенности FB местами ни в какие ворота например не лезут). если код работает одинаково везде, значит он везде работает хренового. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 11:39 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
выкладываю клиента fb в архиве 2 файла http://files.mail.ru/US2QV8 (БОЛЬШАЯ ПРОСЬБА СУБД КОНЧ..ТЬ) 1- стартер 2- сам клиент размещение должно быть d:\ais\ в базу уже добавлено 1000 пользователей . пробовал запускать с 6 компов в офисе в общей сложности 250-300 клиентов одновременно . время инсерта не превышало 11 сек(это когда подвисало , так в среднем до 1 сек) . вот что делает клиент while ok=false do begin Form1.Update; t:=Now; Form1.Update; Application.ProcessMessages; dm.tr1.StartTransaction; Randomize; dm.qu1.SQL.Clear; dm.qu1.SQL.Add('insert into customer(firstname,lastname,address1,city,country,region,'); dm.qu1.SQL.Add('CREDITCARDTYPE,CREDITCARD,CREDITCARDEXPIRATION,username,passwd) values '); dm.qu1.SQL.Add('(''serg'',''ivanov'',''anywhere'',''ttau'',''kz'',2,2,''12'',''324'',:user,''SERG1'')'); dm.qu1.ParamByName('user').Value:=ParamStr(1)+'___'+ParamStr(2)+IntToStr(RandomRange(1000000,999999999)); dm.qu1.ExecQuery; dm.tr1.Commit; Memo1.Lines.Add('время выполнения инсерт='+TimeToStr(Now-t)); Form1.Update; Application.ProcessMessages; //-------------------------------------------- t:=Now; dm.tr2.StartTransaction; dm.qu2.SQL.Clear; dm.qu2.SQL.Add('select * from customer c where c.id=(select max(id) from customer)'); dm.qu2.ExecQuery; dm.tr2.Commit; Memo1.Lines.Add('время выполнения select='+TimeToStr(Now-t)); Form1.Update; Application.ProcessMessages; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:01 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
тестовый сервер подключен к сети туда\сюда ~ 800 кбит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:10 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey do Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 1) на каждой итерации цикла вы стартуете транзакцию, в которой делаете только лишь 1 инсерт, и тут же её фиксируете; 2) на каждой итерации цикла вы делаете селект за "последним добавленным" покупателем, причём по полю customer.id у вас *нет* убывающего индекса ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:29 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
все правильно , и так происходит на каждом клиенте . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:33 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
на данном этапе вопрос в том насколько быстрее будет оракл . либо будет достаточно фб. вопрос :запуская клиетов с 6 машин(пусть по 50) у меня по сути быстродействие проверяется 6-ю клиентами т.к процессор последовательно выполняет команды для разных приложений или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:38 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doвсе правильно , и так происходит на каждом клиенте . А опытный наставник, значит, тебе нужен чтобы вслух читать букварь. Ню-ню... Так как пишешь ты, писать нельзя. Ни для FB, ни для Oracle. Это код для настольного DBF-движка. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:39 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doна данном этапе вопрос в том насколько быстрее будет оракл Намного быстрее будет Оракул, так что про ФБ забудь. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:40 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, для того в каком напправлении и какой букварь читать , если бы все были такими умными ,вопросы бы никто тут не задавал. Я не навязываюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:43 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
вопрос :запуская клиетов с 6 машин(пусть по 50) у меня по сути быстродействие проверяется 6-ю клиентами т.к процессор последовательно выполняет команды для разных приложений или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:44 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doвсе правильно , и так происходит на каждом клиенте .Тогда этот тест мало связан с реальностью. Большинство транзакций (в OLTP-системах) модифицируют десятки или сотни строк, иногда - тысячи. Причём, не только добавляют, но и делают update / delete тоже. И не одной таблицы, а хотя бы трёх-четырёх. Я когда-то забавлялся этим. Пусть там и коряво всё, на таки посмотрите, пригодится м.б. Далее. Чтобы быстро получить в ФБ значение последней записи (при поиске в порядке возрастания некоторого ключа - id, даты и проч.), надо создать по этому же ключу УБЫВАЮЩИЙ (descend) индекс. Иначе сравнение с другими СУБД, где для поиска в любом направлении (asc / desc) используется один индекс, будет некорректным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:46 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Тест кривой. Нафига на каждом шаге цикла очищать текст запроса, а затем добавлять его заново? Тем более, что запрос параметризирован. Да и про тразакции Таблоид уже сказал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 13:55 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doдля того в каком напправлении и какой букварь читать Раз пишешь на дельфи, читай штатный Database Application Development Guide. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 14:02 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
ок тест усложню добавлю в теле одной транзакции инсерт апдей делит к разным таблицам. вопрос :запуская клиетов с 6 машин(пусть по 50) у меня по сути быстродействие проверяется 6-ю клиентами т.к процессор последовательно выполняет команды для разных приложений или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 14:35 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doвопрос :запуская клиетов с 6 машин(пусть по 50) у меня по сути быстродействие проверяется 6-ю клиентами т.к процессор последовательно выполняет команды для разных приложений или нет?Если на сервере несколько ядер, то ФБ в режиме Classic Server'a будет работать на каждом из них (там каждый коннект отображается в отдельный процесс с именем fb_inet_server; рассаживанием их по ядрам занимается операционка). В режиме SuperClassic'a коннекты ( работающие в данный момент) отображаются на потоки внутри одного процесса (его имя в линухе: fb_smp_server; в виндузе - такое же как для CS, т.е. fb_inet_server). Этот процесс будет вертеться только на одном ядре, к сож-ю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 14:53 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Таблоидsergey doвопрос :запуская клиетов с 6 машин(пусть по 50) у меня по сути быстродействие проверяется 6-ю клиентами т.к процессор последовательно выполняет команды для разных приложений или нет?Если на сервере несколько ядер, то ФБ в режиме Classic Server'a будет работать на каждом из них (там каждый коннект отображается в отдельный процесс с именем fb_inet_server; рассаживанием их по ядрам занимается операционка). В режиме SuperClassic'a коннекты ( работающие в данный момент) отображаются на потоки внутри одного процесса (его имя в линухе: fb_smp_server; в виндузе - такое же как для CS, т.е. fb_inet_server). Этот процесс будет вертеться только на одном ядре, к сож-ю. Таблойд , я не корректно задал вопрос , он немного проще. На стороне клиента я запускаю к примеру 50 экземпляров одного и того же приложения под разными для базы фб пользователями , приложения коннектится к базе и выполняют инсерт и селект.они будут выполняться паралельно или последовательно со стороны клиента (это тоже самое если бы я запустил по 1 экземпляру приложения на 50 разных машинах)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 16:05 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doони будут выполняться паралельно или последовательно со стороны клиента (это тоже самое если бы я запустил по 1 экземпляру приложения на 50 разных машинах)?Если окно_1 вызвало некий "тяжелый селект", то весьма вероятно, что до того как оно получит все строки выборки, виндуза переключит процессор на окно_2. Ибо работает вытесняющая многозадачность. И хотя процессор на вашей машине всего один, для сервера всё будет так, как будто его дёргают несколько разных коннектов. Пока он выполняет выборку для окна_1, придёт новый запрос от окна_2, затем от окна_3 и т.д. Но у вас вместо "тяжелых селектов" - какие-то микроскопические нагрузки в виде одиночных инсертов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 16:37 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
ТаблоидВ режиме SuperClassic'a .... Этот процесс будет вертеться только на одном ядре, к сож-ю.Уверен ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 18:24 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doНа стороне клиента я запускаю к примеру 50 экземпляров одного и того же приложения под разными для базы фб пользователями , приложения коннектится к базе и выполняют инсерт и селект.они будут выполняться паралельно или последовательно со стороны клиентаПараллельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 18:25 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
hvladТаблоидВ режиме SuperClassic'a .... Этот процесс будет вертеться только на одном ядре, к сож-ю.Уверен ?Пардон, соврамши я. Действительно по разным ядрам раскладывается... :-) Запустил известный тебе idx_test, 200 окон. Вижу в top'e вот это: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Ну, и разблюдовка по потокам и ядрам (см столб 'PSR' - это номер ядра, которое работает с соотв-щим LWP): Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 19:12 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Yo.!особенности FB местами ни в какие ворота например не лезут Кстати. Товарищ Yo,! Помнишь вот эту: 13297731 - дискуссию про перечитывания (рестарты) ораклом записей, которые поменялись с момента начала запроса, идущего с TIL= RC ? Вот твои слова оттуда:Yo.!firebird запись в конце проапдейтит, а ту что в начале нет, хотя такого состояния в БД ни в один момент времени не было. А чего тогда Оракл не реализовал такой же подход для случая: Код: sql 1. 2. 3. - причем pl/sql-функция some_function() возвращает некие значения, основываясь на данных huge_table. Я так понимаю, что если некий конкурирующий коннект_2 возьмёт да и затолкает в huge_table новые данные, закоммитит их, то когда первый запрос доберётся до них, то ПОКАЖЕТ их - правильно ? Дальше он будет молотить до упора, но тут еще один коннект_3 возьмёт да и грохнет вставленные коннектом_2 записи. И получится, что коннект_1 выдаст в итоге неконсистентные данные - так или нет ? ЗЫ. Сведения почерпнуты у дяди Тома : авторlet’s suppose you are executing a simple query such as select a, b, c, f(x) from t, where a, b, c, and x are columns of a table t and f is a PL/SQL function you’ve written that contains its own SQL statements. And you are seeing what appear to be inconsistent results—that is, the data returned for the first row is inconsistent with the data returned for the last row, something that sounds impossible in Oracle Database. Well, the rules of read consistency have not been violated here: every query executed in this case will be read-consistent. However, each query executed will be read-consistent with respect to itself by default. If you use SQL to execute a function that in turn runs its own SQL, each query executed is by default consistent with itself but not with the original driving SQL. Ну так вот, вопрос у меня: чего им помешало сделать read consistency в этом случае ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 21:55 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Таблоид, завтра попробую потестировать, до сего дня был уверен, что данные берутся на момент старта запроса, не важно есть там функции или нет. было бы странно если олракл сдвигал бы SCN для каждого вызова функции, на мой взгляд для этого нужно дополнительные старания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 00:04 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey do2) 1 - е что планирую сделать сравнить субд в плане производительности . Для фб написал клиента для тестирования , для оракла делаю в данный момент(точно такого же) как будет готого , выложу всё . Пока вопросы не возникают но дальше я уверен появятся. Как бы ничего не зная и не умея что-то пытаться тестировать -- это очень смелое желание. Ну, протестируешь, а дальше что ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 02:55 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
MasterZivsergey do2) 1 - е что планирую сделать сравнить субд в плане производительности . Для фб написал клиента для тестирования , для оракла делаю в данный момент(точно такого же) как будет готого , выложу всё . Пока вопросы не возникают но дальше я уверен появятся. Как бы ничего не зная и не умея что-то пытаться тестировать -- это очень смелое желание. Ну, протестируешь, а дальше что ? я же говорю , время немного имеется(играть на работе надоело!!) , читать умею , думаю во всем можно разобраться до требуемого уровня , следущий этап я думаю будет связан с безопасностью(обзор и выбор решения), а не знаю и не умею ничего потому что работаю не в айти сфере . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 21:08 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doчитать умею Докажи! Прочти от корки до корки http://ibase.ru/develop.htm и представь исправленный код вышеприведённого тобой "теста". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 21:20 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Дмитрий , доказывать никому ничего не собираюсь , а за помощь спс, как разберусь с odac выложу данные по тестам со сложными инсерт апдате дэлит c несколькими таблицами и строками в теле одной транзакции по fb и oracle. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 21:30 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doдоказывать никому ничего не собираюсь Значит и дальше будешь проходить по разряду "нечитатель". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 21:35 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsergey doдоказывать никому ничего не собираюсь Значит и дальше будешь проходить по разряду "нечитатель". хорошо буду :)) я не собираюсь ни у кого отнимать звание супер-мега-шар-oracle-ивсея-всея...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 21:52 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Таблоид, наткнулся в документации на цитату после которой тестировать смысла нет oracle docsIf a SELECT list contains a function, then the database applies statement-level read consistency at the statement level for SQL run within the PL/SQL function code, rather than at the parent SQL level. For example, a function could access a table whose data is changed and committed by another user. For each execution of the SELECT in the function, a new read consistent snapshot is established. http://docs.oracle.com/cd/B19306_01/server.102/b14220/consist.htm зачем так сделали идей нет, но как не крути оракловый RC все равно на голову выше, чем RC firebird и блокировочников. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 11:19 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Yo.!как не крути оракловый RC все равно на голову выше, чем RC firebird и блокировочников. Вот только таблицы почему-то мутируют. В отличии от. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 13:47 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovYo.!как не крути оракловый RC все равно на голову выше, чем RC firebird и блокировочников. Вот только таблицы почему-то мутируют. В отличии от. в отличии от писанины неконсистентного мусора в базах firebird ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 14:21 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Yo.!в отличии от писанины неконсистентного мусора в базах firebird И ведь не смущает тебя, что они мутируют на чтение, без всякой писанины... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 14:44 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovИ ведь не смущает тебя, что они мутируют на чтение, без всякой писанины... так и встает перед глазами эта ужасная картина - тригеры на чтение забил бы ты уже на мутацию, все равно это выше твоего понимания ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 15:34 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Yo.!забил бы ты уже на мутацию, все равно это выше твоего понимания ... Да, мне никогда не понять упорства, с которым этот баг считается фичей. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 15:41 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovYo.!забил бы ты уже на мутацию, все равно это выше твоего понимания ... Да, мне никогда не понять упорства, с которым этот баг считается фичей. я понимаю если бы в ФБ не происходило мутаций тригеров, этим можно было бы козырять. ладно, спорить с дурачком ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2013, 15:52 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Добрый день всем. Кто подскажет в чем загвоздка. CREATE ROLE SS1; GRANT SS1 TO USER1; GRANT SS1 TO USER2; commit; У роли ss1 есть все права на все таблицы. Однако под user1 или user2 не выполняет даже селект. Если задать user1 или user2 гранты напрямую то все ок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 08:23 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Все нашел , надо коннектится к базе с нужной ролью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 08:42 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
при запуске нескольких клиентов одновременно вылазит вот эта ошибка. почему? t:=Now; dm.tr1.StartTransaction; dm.sp1.ExecProcedure('UPDATE_SOME_ORDERS',[40]); dm.tr1.Commit; Memo1.Lines.Add('время update '+VarToStr(dm.sp1.ParamValue(0))+' строк='+TimeToStr(Now-t)); Form1.Update; Application.ProcessMessages; CREATE OR ALTER PROCEDURE UPDATE_SOME_ORDERS ( count_id integer not null) as begin UPDATE ORDERS o SET o.netamount = rand()*100+100,o.tax = rand()*20+20, o.totalamount = o.netamount+o.tax WHERE o.id between 574400 and (574400+:count_id); end ошибка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 09:37 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doпри запуске нескольких клиентов одновременно вылазит вот эта ошибка. почему?Основная причина:sergey doа не знаю и не умею ничего потому что работаю не в айти сфереНо вы уже делаете успехи! Продолжайте учиться. Разберитесь как работают транзакции, что такое update-конфликт. Эффект от мастерства владения одним из инструментов, может переплюнуть выявленную вами разницу в тестировании самих инструментов. Бросьте тестировать, осваивайте тот инструмент, который вам подходит по другим критериям. Я к примеру, знаю, что в определенных случаях Oracle намного производительнее FireBird. Но ощутить от этого дискомфорт (от долей секунд разницы) на моих объемах данных вряд ли удастся. Справедливости ради, Firebird намного быстрее в чем-то другом, например в инсталляции сервера ;) - дискомфорт уже довольно значительный :). Удобство набора инструментов, компонентов доступа, методов разработки, все это может доставлять значительно больше неудобств, чем пресловутая производительность DML. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 10:41 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Oliph, я представляю что такое апдейт конфликт , я не понимаю почему он происходит , по идее вторая транзакция должна дождаться окончания первой(при обращении к одним и тем же записям ) и конфликта возникать не должно. ДУмаю конфлик происходит из-за того что они выполняются частично в паралель , но почему ? И все таки хочу провести тест до конца , хотя понимаю что оракл должен быть круче , но насколько. Да и гемора с ораклом должно быть побольше. будет ли производительность ораскла на порядок выше или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 11:24 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doпо идее Эту странную идею ты подчерпнул явно не из чтения API Guide, раздел Working with Transactions... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 13:25 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, походу в битве экстрасенсов участвуют не те люди :). А вообще именно с этим и пытаюсь разобраться , как вы думаете режим WAIT и protected_write мне помогут избавиться от данной блокировки. P/s В голове каша охр.....еть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 13:41 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doмне помогут избавиться от данной блокировки. Нет, не помогут. Избавиться от update conflict невозможно, поскольку в Interbase/Firebird молча затирать чужие изменения считается неправильным. В отличие от Oracle, с его полностью противоположным мнением. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 14:06 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Избавиться от update conflict невозможно. что фб не может вэйтить транзакции и как они закончаться начинать их разбирать по старшенству , пусть при этом вейт будет очееень долгим , или это подъё.....ка ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 14:40 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doили это подъё.....ка ? Это концепция: молча затирать чужие изменения - суксь и мастдай. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 14:44 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, "суксь и мастдай" это к чему ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 15:53 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey do "суксь и мастдай" это к чему ? к тому, что ФБ один Дартаньян, а вокруг (оракл, мсскл, постгрес, mysql/myisam) пидо ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 16:05 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Yo.!sergey do "суксь и мастдай" это к чему ? к тому, что ФБ один Дартаньян, а вокруг (оракл, мсскл, постгрес, mysql/myisam) пидо ... а общедоступным языком? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 16:29 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doа общедоступным языком? Если Вася сказал update t set a=2, а Петя в параллельной транзакции сказал update t set a=3, то все молча присвоят а=3 и забьют на Васю. И только Firebird не считает, что Петя всегда прав. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 16:47 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doБлабла А что, результаты твоего супер-теста-то скоро мы увидем ? Главное -- кто же круче ? И на сколько градусов ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 20:12 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
MasterZiv, как сделаю так сразу , тут приходится всё сразу осваивать , мож кто то и за 5 мин может сделать , у меня пока не густо , обязательно все предоставлю , но думаю большинство местных результат уже знают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 20:35 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doдумаю большинство местных результат уже знают. Большинство местных знают результаты других тестов. Всем интересно на чём облажаешься именно ты. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 20:37 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, время покажет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 20:54 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
sergey doпланирую сделать сравнить субд в плане производительностиВаше сравнение будет верным только для вашего конкретного приложения, и не представлять больше никакого интереса ни для кого. Вы к этому морально готовы? Более того, вы не будете иметь права даже итоговые цифры опубликовать, т.к. оракловая лицензия явно запрещает вам делать это. Вместо "сравнения производительности" напишите лучше какую-нибудь программулинку, которая решила бы конкретную "бытовую" проблему. Толку будет больше. Потому что новую осмысленную бенчмарку для толстых СУБД могут написать 50, ну может 100 спецов на всём глобусе, и вы в их число пока не входите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 20:54 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
iv_an_ru, на все Ваши вопросы и утверждения есть ответы выше , кроме лицензии, но ведь пдд тоже нарушают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 21:15 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Ув. Господа , давайте перестанем флудить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 21:17 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
iv_an_ruновую осмысленную бенчмарку Да хрен с ними, осмысленными. Померяемся на бессмысленной: insert 10 миллионов записей, commit, update без where, commit, delete без where, commit. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2013, 21:28 |
|
||
|
Требуется опытный наставник
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakoviv_an_ruновую осмысленную бенчмарку Да хрен с ними, осмысленными. Померяемся на бессмысленной: insert 10 миллионов записей, commit, update без where, commit, delete без where, commit. Раз ни одного select не предусмотрено, то победителем выйдет /dev/null , как образцовая реализация write-only memory ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2013, 15:44 |
|
||
|
|

start [/forum/topic.php?all=1&fid=35&tid=1552487]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
80ms |
get tp. blocked users: |
1ms |
| others: | 10ms |
| total: | 170ms |

| 0 / 0 |
