Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Добрый день. Снова возникла проблема в выборе СУБД. Итак задача. В БД где-то 30-40 таблиц. Будет главная таблица с 30 млн записей. В 5 таблицах порядка 100-200 тысяч записей. Ну и в остлальных до 10 тыс. В основном пользоватлеи будут работать на чтение данных посредством запросов с 3-4 Join или вложенным запросами. Все изменения юудут происходить пакетно, т.е. (сразу по 1000-2000 изменений раз в 10 мин, 100-200 тыс изменений 2 раза в сутки). Ожидаемое кол-во пользователей 20-30 одновременных подключений. Работать с БД будут через ADO+Delphi. Железо при такой загрузке будет 2-ух процовый Xeon 3.6 Ghz 4 Gb ОЗУ 2-х 320Mb/s SCSI RAID 1+ 1 SCSI для логов и 1 SCSI для backup. + еще один такой же сервак, но вместо 2-ух процов будет 1. Его загрузка будет порядка 10-20 одновременных. Лицензирование будет производиться по кол-ву пользователей, так как это не web система. Среднее кол-во пользователей для лицензирования 40-50. Ест-но будет репликация, причем возможно в другной регион. Еще меня смущает то. что Oracle собирается брать деньги за кол-во ядер в процессоре, а DB2 нет. Кроме того Oracle версионник, а DB2 блокировочник. Могут ли из-за этого тоже возникнуть тарблы с чтением таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 10:28 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Версионник против блокировочника - это чисто российские заморочки. За 8 лет работы в Штатах в сфере БД я ни разу не слышал, чтобы хотя-бы обуждали преимущества одного перед другим (не говоря уже о принятии решения о покупке). Большинство специалистов считает все основные БД (Оракл, ДБ2, Sybase, Informix, MS SQL) примерно равными в плане функциональности, поэтому покупают либо то, что уже знают, либо то, за что меньше просят. Для вашей задачи однозначно годится любая СУБД из перечисленных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:09 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Если изменения у тебя идут пакетно какая разница блокировочник/версионник. Цена вопроса вместе с налогами примерно в случае DB2 примерно 4500$ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Для такой нагрузки - чего хотите, того и берите из списка в предыдущем посте -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Завтра постараюсь привести в пример несколько циферок.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 18:05 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Не знаю, как обстоят дела с DB2 сейчас, но когда я сталкивался с ним пару лет назад, то пакетные подгрузки/удаления работали ооооочень мендленно. Без прибивания индексов подгрузка пары сотен тысяч записей в таблицу может длится часами. А если прибить индексы, то это надо продумывать, как это сделать не сильно затронув работоспособность системы (недеюсь вы не планируете выводить базу оффлайн каждые 10 минут). Я, хоть и недолюбливаю Оракл, но склонялся бы к нему. Ещё раз повторюсь, мой опыт может быть немного устаревшим, но моё дело предупредить, а вам с такой несколько специфической постановкой задачи очень советую сделать эксперемент на обоих СУБД, потому как один из них может оказаться просто не пригоден. По поводу версионника против блокировочника... Так в Штатах половина DBA'ев не знают как поддерживаются транзакции на их серверах. А по поводу выбора - в случае частых пакетных подгрузок версионник может быть предпочтительнее, но это всецело зависит от того как эти подгрузки будут организованы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 23:13 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
FishingIsGoodНе знаю, как обстоят дела с DB2 сейчас, но когда я сталкивался с ним пару лет назад, то пакетные подгрузки/удаления работали ооооочень мендленно. Без прибивания индексов подгрузка пары сотен тысяч записей в таблицу может длится часами. А если прибить индексы, то это надо продумывать, как это сделать не сильно затронув работоспособность системы (недеюсь вы не планируете выводить базу оффлайн каждые 10 минут). Я, хоть и недолюбливаю Оракл, но склонялся бы к нему. Ещё раз повторюсь, мой опыт может быть немного устаревшим, но моё дело предупредить, а вам с такой несколько специфической постановкой задачи очень советую сделать эксперемент на обоих СУБД, потому как один из них может оказаться просто не пригоден. По поводу версионника против блокировочника... Так в Штатах половина DBA'ев не знают как поддерживаются транзакции на их серверах. А по поводу выбора - в случае частых пакетных подгрузок версионник может быть предпочтительнее, но это всецело зависит от того как эти подгрузки будут организованы. Американские DBA, конечно, попадаются разные. Но поскольку больших и сверхбольших баз здесь гораздо больше, равно как и систем, работающих в режиме 24х7, то квалификация дибиэев, думаю, будет повыше. Но я, собственно, не их имел в виду. За 5 лет в саппорте Информикса имел удовольствие поработать с зубрами, которые могли глянуть на дамп памяти и сказать "о ! эти три байта я уже где-то видел..." - и вспомнить баг, который они чинили пару лет назад. Трындели мы о конкурентах, естественно, немало, и официально на слетах, и неофициально без маркетингового BS в кулуарах - и ни разу никто не сказал, мол, надо бы нам версионник сделать, а то big "O" нас обходит :-) Так что такое у меня сложилось мнение, что споры версионников с бьлокировочниками - это типа споры остроконечников с тупоконечниками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 00:17 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Так и спорить не о чем. Вопрос не в том что что то лучше, а что то хуже а в том, что есть определённый круг задач, где верионная модель предпочтительнее, и наобород. Ну и личные предпочтения, конечно. То есть оба лучше. Для этой конкретной задачи, мне кажется версионник будет предпочтительнее при определённой организации пакетных изменений. А по поводу квалификации DBA'ев (хот и не в тему), то есть конечно зубры в америчке, но в основном на базах в организациях всё же сидят среднеарифметические китайцы/индусы... Я проводил много интервъю с кандидатами на DBA позиции - про транзакционные модели раза два-три мне только смогли ответить - не знают-с. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 01:06 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
nkulikovЕсли изменения у тебя идут пакетно какая разница блокировочник/версионник. Цена вопроса вместе с налогами примерно в случае DB2 примерно 4500$ Если говорить о DB2, то для начала я куплю недорогой DB2 Express (лицензия на кол-во пользователей ). Тот объем данных, который я привел появятся конечно не сразу. ПРосто я хоте сразу заложиться, чтобы потом ничего не переделывать. Мне проще при поялвении нового клиенат просто докупить лицензии на пользователей и все. Кстати еще вопрос. Еслми мы очень сильно разовьемся и решим перейти на UltraSPARC или IBM Power. В случае лицензирования по кол-ву процессоров учитывается кол-во ядер или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 09:47 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Блин теперь еще и Ingres стала open source. Я прочитал про нее вроде тоже все есть. Replication, table partitioning и.т.п. Народ кто-нибудь видел РЕАЛЬНУЮ большую базу под управлением Ingres ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 09:55 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Блин теперь еще и Ingres стала open source. Я прочитал про нее вроде тоже все есть. Replication, table partitioning и.т.п. Народ кто-нибудь видел РЕАЛЬНУЮ большую базу под управлением Ingres ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 09:57 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Простенький такой тест. У меня дома машинка слабенькая -Сeleron 1300,RAM 512, и IDE 60 GB (7200 об). Стоит XP,Oracle 10g, DB2 8.2 Попытался сделать на них одно и то же - чтоб максимум похожести было Oracle: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. DB2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. А после этого посмотреть статистику I/O Oracle: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. DB2 (специально написал для этого маленькую процедурку): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ну и собственно результаты: Oracle: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. DB2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 492+156=648 648/229=2,82 У кого-нить будут комментарии? Может я что-нить не так делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:07 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2gardenman все что вы натестировали - убогость IDE и виндовс на настроеном по дефолту оракле, в убогости вин+ide для оракла никто и не сумневается. у него стандартые ad-hoc запросы - т.е. смотрим tpc-h 2е60 дб2 на просторах россии не сильно популярен, советую еще сначала прикинуть сколько вам встанет спец+дба на дб2. и сторед процедуры вообще не планируется использовать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:34 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!2gardenman все что вы натестировали - убогость IDE и виндовс на настроеном по дефолту оракле, в убогости вин+ide для оракла никто и не сумневается. у него стандартые ad-hoc запросы - т.е. смотрим tpc-h 2е60 дб2 на просторах россии не сильно популярен, советую еще сначала прикинуть сколько вам встанет спец+дба на дб2. и сторед процедуры вообще не планируется использовать ? Уважаемый Yo! хочет сказать, что можно настроить Оракла так, чтобы I/O было меньше? Или чтобы он не писал в UNDO? Ну да... если сделать табличку NOTLOGGED, то конечно такого I/O не будет. Но в работающей системе это ведь недопустимо, или я не прав? В любом случае - какая разница какие диски? При одинаковой системе I/O DB2 потенциально может сделать почти в 3 раза больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:44 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Да, и что за наезд на хранимые процедуры?... непонятно.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:46 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!2gardenman все что вы натестировали - убогость IDE и виндовс на настроеном по дефолту оракле, в убогости вин+ide для оракла никто и не сумневается. у него стандартые ad-hoc запросы - т.е. смотрим tpc-h А вы простите спецификацию интерфейсов IDE и SCSI читали? Вообще-то SCSI интерфейс дествительно хорош только при mutlitthreading I/O, что могут только хорошие OS (AIX,SCO или Solaris). Linux и Windows, например, такого вообще не умеют. Поэтому разница в скорости доступа к данным при одинаковой сокрости вращения головки незначительна. Самый главный плюс SCSI - это на порядок более надежная механика, а по скорости SCSI у современных IDE не сильно выигрывает. Кроме того не забывайте, что IDE или SCSI - это всего лишь интерфейсы, а есть еще скорость вращения головки, размер буфера и скорость чтения/записи. Кроме того смотрите объективно. DB2 тоже не сильна на Windows+IDE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:52 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
e60 Кроме того смотрите объективно. DB2 тоже не сильна на Windows+IDE. ;) нашли кого к обьективности призывать. Yo! широко известен на этом сайте поливанием грязи на все, на чем не написано слово Oracle ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:04 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 gardenman Чтобы посмотреть статисику в Оракл нужно выполнить простой запрос, а на DB2 писать процедуру? Это вообще уже кое о чем говорит. Стаистика коммулятивна - нужно смотреть что было до и что после операции. Почему Вы эти показатели выбрали? Вы считаете это самое критическое в I/O? Ведь речь идет вообще о чтении. Нужны скорее показатели типа db file scattered read, db file sequential read. И на самом деле те или иные показатели нужно смотреть в зависимости от того, чего ждет Оракл во время критичных запросов. Что как я понял на Оракле легче. Там туча средств для прояснения статистики. В то числе и возможность отслеживать здоровье БД за определенные интервалы. Специальные сводные отчеты. 2 e60 Траблы с чтением таблиц из-за того, что Оракл версионнник могут возникнуть только если чтение будет в момент интенсивной записи. А блокировочник вообще может заблокировать. А Оракл все-таки будет читать версии до начала обновления данных. Однако, 1000-2000 изменеий, наверное, не очень интесивное. Ну есть всякие возможности по настройкам, если это критично. Возможно и 100-200 тыс не совсем еще интенсивное если тока 2 раза в сутки. Зато точно не возникнет траблов с блокировкой читающим пишущего и с грязным чтением. Ну у Оракла есть средства для повышения скорости чтения в виде фрагментирования. Т.е. если разбить эту таблу на секции по тому или иному признаку так, чтобы данные по запросу были в одной секции. Тада при запррсе будут пропущены ненужные секции. Т.е. он будет искать, например не в 30 млн, а 1 млн. Это зависит конечно от видов запросов. Я про Вашу главную таблицу в 30 млн записей. Есть всякие мат представления. Т.е. выполнять запросы раньше, чем пользователь их захочет смотреть. Это тоже конечно, зависит от требований пользователей. Конечно, я не знаю что есть в DB2. Нужна статистика именно на чтение по тем запросам, которые будут критичными. Смотреть чего ждет система и как с этим бороться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:21 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
vadiminfo Что как я понял на Оракле легче ... Конечно, я не знаю что есть в DB2. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:30 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
>Чтобы посмотреть статисику в Оракл нужно выполнить простой запрос, а на DB2 писать процедуру? >Это вообще уже кое о чем говорит. Это ни о чем не говорит.. абсолютно... Я даже соглашусь что в Oracle это сделано удобнее, и средства для анализа статистики богаче. но ХП писать абсолютно не обязательно.. Просто статистика в DB2 по сессии представлена горизотнально - набор полей из табличной функции, а в Оракле -вертикально - в виде записей представления. Процедурку я писал чисто для своего личного удобства. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:36 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Значит выод можно сделать один. И Oracle и DB2 примерно одинаковы по функциональности. А поскольку я ни с тем ни с другим не работал остается только выбрать предложение по цене. Насколько я смог подсчитать DB2 подешевле будет, да и политика лицензирования процов тоже нормальная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:44 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
e60Значит выод можно сделать один. И Oracle и DB2 примерно одинаковы по функциональности. А поскольку я ни с тем ни с другим не работал остается только выбрать предложение по цене. Насколько я смог подсчитать DB2 подешевле будет, да и политика лицензирования процов тоже нормальная. Лично я предлагаю бросить монетку: Орел - Оракл, Орешка - ДБ2, встанет на ребро - Ingres, зависнет в воздухе ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:56 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext mutlitthreading I/O такое где возникает ? может Asynchronous I/O ? http://lse.sourceforge.net/io/aio.html Код: plaintext то-то и оно, у него дешевый иде без кеша за $50, шина + апаратный кеш сказийника и на одной задаче дадут результат. оракул не расчитан что на каждый его чих иде будет елозить головками. у него фрагментированый файл данных, винда в свопе, кривой db_block_size и касперский в бэкграунде в результате еще однин тест для детей. вот тут почти без соплей уже сравнивали: /topic/94928&pg=1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:22 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
есть тесты tpc/sap, там люди - сертифицированые дба, они имеют представление о субд которую настраивают. там все видно - на олпт дб2 делает оракл на 10-20%, на ad-hoc оракл также бьет дб2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:29 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
TPC: Db2 - 3,210,540 Oracle RAC - 1,184,893 3,210,540 / 1,184,893 = 2,709... что-то уж цифра больно похода на 2,8 которую получаю я Может все-же Оракл упирается в пропускную способность каналов I/O? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:34 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2gardenman мда :) а я то думаю откуда такие тесты берутся. вы случайно не заметили там небольшое различия в железе между 64 itanium RAC и 128 ядер power5 ;) а давайте глянем на идентичные конфигурации ? IBM eServer pSeries 690 Turbo 7040-681 оракл - 768,839 дб2 - 763,898 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:46 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Давайте заглянем чуть глубже в эти конфигурации: DB2 Disk Controllers: 1 (Integrated) 2 Disk 2 Ultra3 SCSI-2 26 Fibre Channel Adapters Oracle Disk Controllers: 1 SCSI-2 (Integrated) 6 SSA Adapters 66 Fibre Channel Adapters ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:05 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2gardenman о :) вы начинаете следить за мыслью. т.е. когда ораклу дают нормальное i/o у него и результат соответствующий. на самом деле есть еще результат на IBM eServer p5 570 8P 371044.22 ora vs 429899.7 db2 но в конфигурацию еще не смотрел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
ну да так и есть i/o ораклу урезали (в сравнении с дб2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:17 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Так значит вы всетаки вы признаете, что конфигурации - разные? В сущности действительно есть две системы - процессоры+память и система I/O. И в определенных обстоятельствах одна может тормозить другую. А так как система I/O потенциально медленнее, то значит она и тормозит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:34 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo! Код: plaintext 1. http://lse.sourceforge.net/io/aio.html mutlitthreading I/O - это способность SCSI контроллера читать/писать данные несколькими потоками. Аналог многозадачности на 1 процессоре. Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. Ее используют только хорошие серверные ОС, именно поэтому скажем у того же Solaris такой маленький список поддерживаемого оборудования. А контроллеры, котоые она держит стоят очень дорого. http://hepd.pnpi.spb.ru/~shevel/atascsi.pdf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:38 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
gardenman e60Значит выод можно сделать один. И Oracle и DB2 примерно одинаковы по функциональности. А поскольку я ни с тем ни с другим не работал остается только выбрать предложение по цене. Насколько я смог подсчитать DB2 подешевле будет, да и политика лицензирования процов тоже нормальная. Лично я предлагаю бросить монетку: Орел - Оракл, Орешка - ДБ2, встанет на ребро - Ingres, зависнет в воздухе ... Если зависнет - то Postgres, а если у нее вырастут крулья и она улетит, тогда MySQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:42 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2e60 в доке ничего по threading нет, есть другой линк ? я никак не могу себе представить зависимость контролера от оси ... драйвер, да - но для сказий драйвера дают в сырцах, например SUN для линух точно, для солярки нада посмотореть. 2gardenman у вас перед глазами отчеты, там же все видно - если i/o больше результ выше, i/o меньше - результ хуже. разброс отсилы в 20%. то что за multiversion надо в OLPT платить никто не спорит, спорят о том что этот i/o окупается в разы. особенно для смешаных (olpt+ad-hoc) систем задач. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 13:56 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
gardenman что-то уж цифра больно похода на 2,8 которую получаю я Но ведь Вы непонятно что получили. Во-первых не показали что было до операции. Там может статистика показывает все записи за несколько дней и то что Вы наработали пока тесатировали. Во-вторых может там есть кое-что помедленнее того, что Вы показали. Тогда надо было показывать чего ждал сервер. Мож не этого. И уж точно эта стаистика мало что даст при чтении 30 млн. Там скорее всего другая статистика. Кроме того, блокировочник может простол заблокировать его чтение. Тогда то, что Вы получили вообще покажется, тем чем следует пренебречь раз и на всегда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:01 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60mutlitthreading I/O - это способность SCSI контроллера читать/писать данные несколькими потоками. Аналог многозадачности на 1 процессоре. Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. Тебе кто-то сказал, или сам так решил? -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:07 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
1) база была абсолютно пустая 2) таблицу и процедуру я создавал в одной сессии, а запускал - в другой в которую только -только зашел. 3) никаких конкурирующих задач - не было 4) полагаю что тут даже дело не в том, что медленно. А в том, что I/O у Оракла на ту же задачу в 2,8 раза больше. И, как следствие канал который для DB2 оказался приемлемым, для Оракла оказался узким. Полагаю тут проблема кроется в отложенной очистке блоков которая фактически увеличивает I/O в 2 раза (не сейчас, так потом). А в дополнение ко всему UNDO - реализация версионности. Вообще можно было бы (с натяжкой, но все же можно) сказать - скорость работы любой бд - это прежде всего скорость работы с логом. (всякие другие пишущие процессы, DBWR в Oracle и Asynchronous I/O cleaners в Db2 - тоже конечно влияют, но это уже дело второго плана) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:14 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2gardenman еще раз - тщательно изучив ваш отчет о тесте я пришел к выводу что у вас в бэкграунде шел касперский/scan disk/бурнился цд что повлияло на ход тестирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:32 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 Yo! А вот и не угадал! Когда шел тест Оракла я винт пальцем тормозил, чтоб он медленней вращался! (каким пальцем - умолчу....) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:34 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60mutlitthreading I/O - это способность SCSI контроллера читать/писать данные несколькими потоками. Аналог многозадачности на 1 процессоре. Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. Тебе кто-то сказал, или сам так решил? Ну покажите мне хоть один Linux, который это могет :) Кроме того если бы они ее оспользовали, тогда тоже были бы ограничены в списке поддерживаекмого оборудования. И существовали бы версии с такой поддержкой, потому что общение с контроллером выполняется на уровне ядра ОС. Следовательно для поддержки этой функции ядро надо пересобрать. Здесь я может быть немного неверно выразился. В случае Linux и Windows контроллер сам решает задачу сколькими потоками и в каком порядке писать/читать данные в SCO, AIX или Solaris эту задачу решает ОС. Именно поэтому список поддерживаемого оборудования (в частности SCSI контроллеров) очень ограничен. Так как разработчикам этих ОС приходится под каждый контроллер писать алгоритм обращения к системе I/O. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:35 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2e60 какое ядро ? дайте линк на толковый документ а то вы явно что-то не то вычитали. в линуксе со скази работает драйвер, например в sun предлагает свой lsi, а у редхата свой по дефолту, а ядру по барабану который из них общается с контролером. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:41 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60 e60Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. МимопроходящийТебе кто-то сказал, или сам так решил? Ну покажите мне хоть один Linux, который это могет :) Кроме того если бы они ее оспользовали, тогда тоже были бы ограничены в списке поддерживаекмого оборудования. И существовали бы версии с такой поддержкой, потому что общение с контроллером выполняется на уровне ядра ОС. Следовательно для поддержки этой функции ядро надо пересобрать. Фантазёр, блин. Учитывая твоё заявление... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:43 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!2e60 в доке ничего по threading нет, есть другой линк ? я никак не могу себе представить зависимость контролера от оси ... драйвер, да - но для сказий драйвера дают в сырцах, например SUN для линух точно, для солярки нада посмотореть. 2gardenman у вас перед глазами отчеты, там же все видно - если i/o больше результ выше, i/o меньше - результ хуже. разброс отсилы в 20%. то что за multiversion надо в OLPT платить никто не спорит, спорят о том что этот i/o окупается в разы. особенно для смешаных (olpt+ad-hoc) систем задач. Сорри линки попутал Вот http://www.rekvizit.ru/data/lab/srv/131003/131003.shtml Там все расписано. Возможно немного устарелая инфа, но все же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:55 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
да линк толковый, очередные шпециалисты с сайта народ.ру :) 2e60: не читайте советских газет до обеда ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:01 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60 e60Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. МимопроходящийТебе кто-то сказал, или сам так решил? Ну покажите мне хоть один Linux, который это могет :) Кроме того если бы они ее оспользовали, тогда тоже были бы ограничены в списке поддерживаекмого оборудования. И существовали бы версии с такой поддержкой, потому что общение с контроллером выполняется на уровне ядра ОС. Следовательно для поддержки этой функции ядро надо пересобрать. Фантазёр, блин. Учитывая твоё заявление... -- With best regards, Мимопроходящий. Я согласен что в Linux я не очень (в смысле команд и работы с приложениями), но в отличие от Вас я немного разбираюсь в архитектуре ОСей, поэтому привожу доводы в пользу своей точки зрения, а от Вы кроме перехода на личности и просто пустых заявлений пока доводов не привели. А подкалывать мы все умеем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:02 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!да линк толковый, очередные шпециалисты с сайта народ.ру :) 2e60: не читайте советских газет до обеда ;) Хорошо тогда докажите мне что Linux держит multithreading и приведите хотя бы такой линк. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
gardenman что I/O у Оракла на ту же задачу в 2,8 раза больше. Почему Вы думаете, что те показатели, что Вы взяли не составляют 10% от всех I/O? Например, от записей собственно данных. А там еще зависит как настроены блоки на заполнение. Тогда эти 2,8 при сравнении всех I/O могут уйти в 0. Почему думаете, что настроили достаточно хорошо память, чтобы он не сбрасывал лишний раз блоки данных отката? Т.е. я все еще скепотически отношусь к цифре 2.8. Нужно чтобы в эксперименте участвовали заинтересованные спецы в обоих системах. Сам эксперимент не ясен (таких тестов стандартных, по моему, нет). Ведь Вы меряли запись. А критичным как правило является чтение. Т.е. SELECT из 30 млн. Может там удастся добиться меньших чтений. У Оракла кое-что есть для этого. Проблема разве у него в том, что записывать будет ощутимо медленно? Или все-таки читать. Почему думаете, что там при чтении во время записи не будет блокировок. Т.е. других событий, которые все затормозят. Если при чтении милионнов записей нужно прочитать 10 Гб, то что там несколько сотен МБ при записи редологов или UNDO? В общем Ваш вывод нуждается еще в проверках. Может найтись парень, который так настроит возьмет два Оракла и придет к выводу, что один в 10 раз медленней другого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:29 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60e> Я согласен что в Linux я не очень (в смысле команд и работы с приложениями), e> но в отличие от Вас я немного разбираюсь в архитектуре ОСей Прослушал соответствующий курс лекций? Аргументация в стиле "я так считаю, бо меня так учили!" не принимается. Нет такого термина - multithreading i/o[/red] . Тебе уже сказали об этом. Какие сцылки тебе нужны, на то, чего нет?! Опровергай, если можешь. -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:32 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 e60 А Вы уверены, что Вы легко найдете тех спецов что по максимому на Вашу задачу настроят и DB2 и Оракл? Ведь у Вас есть признаки критичности. Или Вы имеет в виду кто из них быстрей при настройках по умолчанию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:38 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
да есть http://www.caeneng.com/scsi_info.htm просто это фича интерфейса scsi и делается на уровне железа контролера и драйверу по барабану как это делает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:41 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
vadiminfo2 e60 А Вы уверены, что Вы легко найдете тех спецов что по максимому на Вашу задачу настроят и DB2 и Оракл? Ведь у Вас есть признаки критичности. Или Вы имеет в виду кто из них быстрей при настройках по умолчанию? Канешна же вы в некоторых аспектах правы. Поэтому подходы к проектированию на Оракле и ДБ2 должны быть разными. Но спорить кажется уже не о чем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:46 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!2e60 какое ядро ? дайте линк на толковый документ а то вы явно что-то не то вычитали. в линуксе со скази работает драйвер, например в sun предлагает свой lsi, а у редхата свой по дефолту, а ядру по барабану который из них общается с контролером. А команды драйверу кто дает? Может в linux и по барабану какой драйвер. Давайте возьмем пример из программирования. Вот есть 2 программы, которые считают скажем среднее арифметическое в массиве. ТОлько одна из них будет написана на ассемблере, а другая на C++ В итоге та которая написана на ассебмлере будет намного быстрее, хотя ее написание будет намного сложенее, потому что когда вы пишете на ассемблере вы сами говорите взять вот из этой области памяти положить в такой-то регистр, потом сравнить 2 регистра процессора и.т.д. А при написании на C++ за Вас это решит компилятор что в какой регистр пихать. Коненчо на массиве в 1 млн чисел то разнице в выполнении этих программ вы не почувствуете, а если этих триллион? Аналогично и в ОС. ТО ядро говорит что надо откуда взять и куда положить, а то ядро говорит контроллеру положи ка вот это, а куда и как решай сам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:50 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Я попытался найти внятную информацию по поводу Multithreading и SCSI. Но увы - пока не нашел. Действительно сам интерфейс SCSI допускает параллельное исполнение нескольких потоков команд. Для меня очевидно, что такая возможность будет использована только в следующем случае: 1. множество параллельных потоков поддерживает драйвер SCSI-контроллера 2. ОС поддерживает мультизадачность (мультипотоковые приложения) 3. Часть ядра ОС, отвечающая за обслуживание в/в поддерживает параллельную обработку запросов на в/в от нескольких потоков/приложений. И вот по п.3. четкой ясности то и нет. И кстати интересно еще вот что. Ведь мультипотоковое обращение к SCSI-устройствам может быть интересно и в случае однопотокового приложения. Т.е. само решение о мультипотоковом обращении к устройствам в таком случае должна принимать ОС (возможно драйвер обслуживания файловой системы). Учитывая сказанное, я, скажем так, подозреваю, что доля истины в имевших место высказываниях e60 есть. Но вот в какой мере все это реализуется в Windows, Linux, Unix ? Где бы все-таки почитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:52 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60e> Я согласен что в Linux я не очень (в смысле команд и работы с приложениями), e> но в отличие от Вас я немного разбираюсь в архитектуре ОСей Прослушал соответствующий курс лекций? Аргументация в стиле "я так считаю, бо меня так учили!" не принимается. Нет такого термина - multithreading i/o[/red] . Тебе уже сказали об этом. Какие сцылки тебе нужны, на то, чего нет?! Опровергай, если можешь. Ах извините Вы у нас полиглот. Хорошо Multithreaded I/O вот как это правильно звучит. Вот здесь почитайте http://www.hc.kz/pdf/aha_2940u.pdf (описание контроллера) специально для Вас там есть раздел Time-saving multitaskin Вот дословно multithreaded I/O, that allow the system CPU to access data on multiple peripheral devices simultaneously. Ну еще переведу для окончательной ясности: многопоточный ввод/вывод, который позволяет системноу процессору получать доступ к нескольким переферийным устройствам ОДНОВРЕМЕННО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:03 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
на иде у тебя если читаешь сидик к диску уже не достучатся, тут threading просто скази- котролер умеет на 2 устройства посылать команды и все, еще раз контролер. дальше это дело навернули что команды на одно у стройство можно в очередь ставить. как это связано с драйвером надо смотреть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60e> Ах извините Вы у нас полиглот. Хорошо Multithreaded I/O вот как это правильно звучит. e> Вот здесь почитайте e> http://www.hc.kz/pdf/aha_2940u.pdf (описание контроллера) e> специально для Вас там есть раздел Time-saving multitaskin multithreaded I/O, that allow the system CPU to access data on multiple peripheral devices simultaneously. Ааааааа... В Казахстане, в славном городе Ала-Аты, расположена столица SCSI-строения... Будем знать. Так расскажи нам, убогим, пожалуйста, чем этот пассаж ограничивает ОСи в плане использования оной фичи? -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:16 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 e60 Я бы то же с удовольствием взглянул на "multithreading i/o". Хоть в "архитектуре ОСей" я не силён, так, почитываю всякого Таннебаума и LKML на досуге :) AIO в Linux не было долго это факт, но и появилось оно там не вчера - http://archive.linuxsymposium.org/ols2003/Proceedings/All-Reprints/Reprint-Pulavarty-OLS2003.pdf В AIX и SCO то же ничего не встречал про "multithreading i/o", а енто самые наикоммерческие UNIX-ы. Есть всякие извраты типа Vector AIO и чисто железячные извраты с "SCSI multithreading" которые позволяют железяке исполнить одновременно несколько команд из очереди (очередь как раз и формирует операционка) ещё есть разное кол-во каналов у разных SCSI. Всё это Linux поддерживает, вообще говоря это свойство железяки, как пример - http://infiniband.sourceforge.net/archive/SRP-Arch.pdf Хоть это и не совсем SCSI - контроллер :) Правда AIX и прочие поддерживают такие фичи ещё дольше :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:18 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Alexey Rovdo 3. Часть ядра ОС, отвечающая за обслуживание в/в поддерживает параллельную обработку запросов на в/в от нескольких потоков/приложений. Соггласен нигде в документации нет четкого указания по-поводу Windows и Linux. Что в принципе ест-но, кто же будет говорить, что его продукт хуже другого. Здесь можно чисто интуитивно провести параллель, которая на это указывает. Как Вы и указали в п.3. для реализации multithreading необходима поддержка части ядра, которая отвечает за в/в, следовательно для реализации этой возможности нужно специально это ядро собрать (ну согласитесь не резооно писать в ядре if контроллер поддерживает multithreaded i/o выполнить тото, а если нет, то тото). Следовательно для Windows должна быть версия ОС специально для контроллеров SCSI с поддержкой multithreaded I/O. Я пока такой не видел. То же самое по Linux нигде в установках ядра нет строчки типа включить multithreaded I/O (это я спросил у спецов по Линуху). Ее тоже там нет. Еще тот факт, что SCO и Solaris официально поддерживают только SCSI контроллеры с Multithreaded I/O косвенно говорит и том, что эта технология у них реализована. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:23 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60Здесь можно чисто интуитивно провести параллель... [Sorry, skipped] косвенно говорит o том, что эта технология у них реализована. Эх, гвозди бы делать из этих людей.... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:27 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Интуитивно понятно! Косвенно говорит! Вы знаете, я ведь хочу разобраться. Мне совершенно непонятна позиция тех, кто ждет каких-то неопровержимых доказательств. Никто ведь даже и не пытается приводить какие-то доказательства обратного. Но если ядро Linux поддерживает Multithreading I/O - покажите, где это написано. Во всяком случае пока рассуждения e60 выглядят вполне разумными. Единственное, в чем я с ним не согласен, это в том, что конструкции типа "if есть I/O Multithreading у железа" в ядре любой ОС вполне могут и быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:35 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, Alexey! Ты пишешь: AlexeyВы знаете, я ведь хочу разобраться. Мне совершенно непонятна позиция тех, кто ждет каких-то неопровержимых доказательств. Никто ведь даже и не пытается приводить какие-то доказательства обратного. Но если ядро Linux поддерживает Multithreading I/O - покажите, где это написано. А может имеет смысл вам друг с дружкой обсудить эту животрепещещую "проблему". Один изрекает бред, а другой требует его опровергнуть... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:40 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60e> Ах извините Вы у нас полиглот. Хорошо Multithreaded I/O вот как это правильно звучит. e> Вот здесь почитайте e> http://www.hc.kz/pdf/aha_2940u.pdf (описание контроллера) e> специально для Вас там есть раздел Time-saving multitaskin multithreaded I/O, that allow the system CPU to access data on multiple peripheral devices simultaneously. Ааааааа... В Казахстане, в славном городе Ала-Аты, расположена столица SCSI-строения... Будем знать. Так расскажи нам, убогим, пожалуйста, чем этот пассаж ограничивает ОСи в плане использования оной фичи? -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 Это описание продукта (а именно контроллера) компании Adaptec. По твоей логике Linux тоже в России изобрели или DB2 тоже из России, только потому что есть www.linuxorg.ru и www.db2.ru, а уж IBM точно Российская компания, ведь есть же сайт www.ibm.ru А на счет ОСИ тут был очень хороший ответ Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 16:59 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60А на счет ОСИ тут был очень хороший ответ RovdoЧасть ядра ОС, отвечающая за обслуживание в/в поддерживает параллельную обработку запросов на в/в от нескольких потоков/приложений Я ж и говорю, вам с Ровдо нужно уединиться и поговорить. И не пудрить людям мозги. Встретились два фантазёра и по-нес-ла-сь.... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:05 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Andreww2 e60 Я бы то же с удовольствием взглянул на "multithreading i/o". Хоть в "архитектуре ОСей" я не силён, так, почитываю всякого Таннебаума и LKML на досуге :) AIO в Linux не было долго это факт, но и появилось оно там не вчера - http://archive.linuxsymposium.org/ols2003/Proceedings/All-Reprints/Reprint-Pulavarty-OLS2003.pdf В AIX и SCO то же ничего не встречал про "multithreading i/o", а енто самые наикоммерческие UNIX-ы. Есть всякие извраты типа Vector AIO и чисто железячные извраты с "SCSI multithreading" которые позволяют железяке исполнить одновременно несколько команд из очереди (очередь как раз и формирует операционка) ещё есть разное кол-во каналов у разных SCSI. Всё это Linux поддерживает, вообще говоря это свойство железяки, как пример - http://infiniband.sourceforge.net/archive/SRP-Arch.pdf Хоть это и не совсем SCSI - контроллер :) Правда AIX и прочие поддерживают такие фичи ещё дольше :) Multithreaded I/O - это возможность SCSI контроллера, которую ОС может использовать, и может нет. Кроме того объясните тот факт, что все SCSI официально поддерживают коммерческие ОСи имеют Multithreaded I/O. Или эти фирмы просто не могут дойти до "крутизны" Linux и написать драйверы для всех контроллеров. Суть использования этой технологии ОС состоит в том, что вместо 1 команды на в/в (например на блока 8Кбайт) ядро формирует, например 4 (на чтение 2Кбайт каждая). Соответсвенно, как Вы и говорили, "железяка" может выполнить несколько команд одновремннно она берет и выполняет 4 команды по 2 Кбайта, вместо одной на 8Кбайт. Ест-но это получается (хотя и не в 4 раза), но в 2 точно быстрее. Теперь понятно что такое multithreaded на уровне ОС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:10 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60А на счет ОСИ тут был очень хороший ответ RovdoЧасть ядра ОС, отвечающая за обслуживание в/в поддерживает параллельную обработку запросов на в/в от нескольких потоков/приложений Я ж и говорю, вам с Ровдо нужно уединиться и поговорить. И не пудрить людям мозги. Встретились два фантазёра и по-нес-ла-сь.... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 А Вам необходимо научиться читать и аргументировать свои ответы, а пороть чушь просто так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:13 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Alexey RovdoИнтуитивно понятно! Косвенно говорит! Вы знаете, я ведь хочу разобраться. Мне совершенно непонятна позиция тех, кто ждет каких-то неопровержимых доказательств. Никто ведь даже и не пытается приводить какие-то доказательства обратного. Но если ядро Linux поддерживает Multithreading I/O - покажите, где это написано. Во всяком случае пока рассуждения e60 выглядят вполне разумными. Единственное, в чем я с ним не согласен, это в том, что конструкции типа "if есть I/O Multithreading у железа" в ядре любой ОС вполне могут и быть. Извиняюсь перегнул немного. Просто надоело приводить аргументы, а в ответ получать только подколки. Я конечно понимаю. что в некоторых вещах я и не прав. И вообще предлагаю закончить этот спор и выкурить трубку мира. А еще лучше вернуться в вопросу топика форума. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:18 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Alexey RovdoИнтуитивно понятно! Косвенно говорит! Вы знаете, я ведь хочу разобраться. Мне совершенно непонятна позиция тех, кто ждет каких-то неопровержимых доказательств. Никто ведь даже и не пытается приводить какие-то доказательства обратного. Но если ядро Linux поддерживает Multithreading I/O - покажите, где это написано. Во всяком случае пока рассуждения e60 выглядят вполне разумными. Единственное, в чем я с ним не согласен, это в том, что конструкции типа "if есть I/O Multithreading у железа" в ядре любой ОС вполне могут и быть. Кстати спасибо за посты. Я несколько новых вещей узнал из Ваших высказываний. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:21 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
я подозреваю что те кесы (за кем e60 повторяет) услышали новое слово и смешали все что можно. они услышали про AIO кернела а выдали multi-threading scsi :) http://www.ixora.com.au/notes/raw_asynchronous_io.htm P.S. aio кажется уже пару лет как перенесли в linux 2.4.x ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:23 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60Здесь можно чисто интуитивно провести параллель... [Sorry, skipped] косвенно говорит o том, что эта технология у них реализована. Эх, гвозди бы делать из этих людей.... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 Жаль Вас жертва рекламы. Я уверен, что если бы в каком нибудь "авторитетном" сайте Вам написали, что MySQL лучшая в мире СУБД, а Oracle и прочим до нее как до Африки пешком, то Вы бы мне сейчас именно ее и предложили:) Я Вам все же советую поизучать теорию технологий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:25 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60Извиняюсь перегнул немного. Просто надоело приводить аргументы, а в ответ получать только подколки.Какие аргументы?! Одни домыслы. Тебе говорят, что нету у ОСей Multithreading I/O , есть Asynchronous I/O , и оный режим есть почти во всех современных ОСях. Ты же заладил Multithreading I/O, Multithreading... И пытаешься всех убедить, что у Пингвина его нет, а у Солярки есть. e60Я конечно понимаю. что в некоторых вещах я и не прав. И вообще предлагаю закончить этот спор и выкурить трубку мира. А еще лучше вернуться в вопросу топика форума. Ладно, мне дальше с вами воевать лень. Разговор слепого с глухим. -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:27 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60> Я Вам все же советую поизучать теорию технологий. Ах как интересно!... Это про вообще? Общая теория всего? Ну надо же... А мужики-то и не знают... -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:29 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
[quot Yo!]я подозреваю что те кесы (за кем e60 повторяет) услышали новое слово и смешали все что можно. они услышали про AIO кернела а выдали multi-threading scsi :) http://www.ixora.com.au/notes/raw_asynchronous_io.htm По Aio я вообще ничего не говрил. Оно и отношения к multithreaded не имеет :) Кроме того ничего не мешалось. Вот простой пример 4 SCSI диска в зеркале. Если ОС поддерживает multithreaded, то для считывания файла скажем 1Mb. Она сформирует 4 команды для контроллера: 256Kb считать c 1 диска, 256 со второго 256 с 3 и 256 с 4-го, так вот эти команды выполняться сразу. (Контроллер просто возьмет все 4 и параллельно выполнит их). А если ОС этого не могет, то она просто скажет контроллеру, что мне нужен вот этот кусочек в 1Mb, а уж контроллер сам будет смотреть с какого диска сколько взять. Вот в это м и суть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:32 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60 Yo! http://www.ixora.com.au/notes/raw_asynchronous_io.htm По Aio я вообще ничего не говрил. Оно и отношения к multithreaded не имеет :) Это кажущееся отражение кажущейся луны... (С) Ты хоть ссылочку-то открой, почитай. Правда, Yo! дал ссылку на raw-дивайсы, но это не столь суть важно. Вот ссылка на поддержку "Threaded Asynchronous I/O" http://www.ixora.com.au/notes/fs_asynchronous_io.htm Прочти. -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:38 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, e60! Ты пишешь: e60Извиняюсь перегнул немного. Просто надоело приводить аргументы, а в ответ получать только подколки.Какие аргументы?! Одни домыслы. Тебе говорят, что нету у ОСей Multithreading I/O , есть Asynchronous I/O , и оный режим есть почти во всех современных ОСях. Ты же заладил Multithreading I/O, Multithreading... И пытаешься всех убедить, что у Пингвина его нет, а у Солярки есть. e60Я конечно понимаю. что в некоторых вещах я и не прав. И вообще предлагаю закончить этот спор и выкурить трубку мира. А еще лучше вернуться в вопросу топика форума. Ладно, мне дальше с вами воевать лень. Разговор слепого с глухим. -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 О как никогда не думал, что асинхронность и многозадачность одно и то же :) Может проясните как это связано? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:39 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
e60[quot Yo!]я подозреваю что те кесы (за кем e60 повторяет) услышали новое слово и смешали все что можно. они услышали про AIO кернела а выдали multi-threading scsi :) http://www.ixora.com.au/notes/raw_asynchronous_io.htm По Aio я вообще ничего не говрил. Оно и отношения к multithreaded не имеет :) Кроме того ничего не мешалось. Вот простой пример 4 SCSI диска в зеркале. Если ОС поддерживает multithreaded, то для считывания файла скажем 1Mb. Она сформирует 4 команды для контроллера: 256Kb считать c 1 диска, 256 со второго 256 с 3 и 256 с 4-го, так вот эти команды выполняться сразу. (Контроллер просто возьмет все 4 и параллельно выполнит их). А если ОС этого не могет, то она просто скажет контроллеру, что мне нужен вот этот кусочек в 1Mb, а уж контроллер сам будет смотреть с какого диска сколько взять. Вот в это м и суть. Бред ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:41 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Alexey Sh e60[quot Yo!]я подозреваю что те кесы (за кем e60 повторяет) услышали новое слово и смешали все что можно. они услышали про AIO кернела а выдали multi-threading scsi :) http://www.ixora.com.au/notes/raw_asynchronous_io.htm По Aio я вообще ничего не говрил. Оно и отношения к multithreaded не имеет :) Кроме того ничего не мешалось. Вот простой пример 4 SCSI диска в зеркале. Если ОС поддерживает multithreaded, то для считывания файла скажем 1Mb. Она сформирует 4 команды для контроллера: 256Kb считать c 1 диска, 256 со второго 256 с 3 и 256 с 4-го, так вот эти команды выполняться сразу. (Контроллер просто возьмет все 4 и параллельно выполнит их). А если ОС этого не могет, то она просто скажет контроллеру, что мне нужен вот этот кусочек в 1Mb, а уж контроллер сам будет смотреть с какого диска сколько взять. Вот в это м и суть. Бред Сам Дурак ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:43 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2e60 так, я начинаю подозревать что вы не в курсе что умеет RAID5. ось даже не в курсах на которых дисках размазан ее файлик, не то что пытатся этим как-то управлять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:43 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, e60! Ты пишешь: e60 Alexey ShБредСам ДуракБРАВОООО!!!! -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:45 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Alexey Sh e60[quot Yo!]я подозреваю что те кесы (за кем e60 повторяет) услышали новое слово и смешали все что можно. они услышали про AIO кернела а выдали multi-threading scsi :) http://www.ixora.com.au/notes/raw_asynchronous_io.htm По Aio я вообще ничего не говрил. Оно и отношения к multithreaded не имеет :) Кроме того ничего не мешалось. Вот простой пример 4 SCSI диска в зеркале. Если ОС поддерживает multithreaded, то для считывания файла скажем 1Mb. Она сформирует 4 команды для контроллера: 256Kb считать c 1 диска, 256 со второго 256 с 3 и 256 с 4-го, так вот эти команды выполняться сразу. (Контроллер просто возьмет все 4 и параллельно выполнит их). А если ОС этого не могет, то она просто скажет контроллеру, что мне нужен вот этот кусочек в 1Mb, а уж контроллер сам будет смотреть с какого диска сколько взять. Вот в это м и суть. Бред Ищу поклонников Miscrosoft.... Найду - убью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:46 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Трудно что-то доказать тем, кто давая ссылку сам не удосужился ее прочитать. Ну чтобы не обижались - может и читали, но не подумали. Ведь действительно, если не понимаете разницы между "асинхронностью" и "мультипотоковостью", то может хотя бы в энциклопедии залезли. А то так уверенно заявляют, что "это он лох попутал, а имел ввиду именно AIO". Я на досуге обязательно пороюсь в инете. Может что и найду по обсуждаемому вопросу. А пока по существу мне добавить нечего, а ожидать этого от лезущих во все дыры недоучек - увы не приходится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:47 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
еще раз, для того чтоб послать на _разные_ устройства в SCSI ось ничем сверхестественным обладать не должна, с этим даже NT справится. а вот что за наворот с очередями в scsi надо смотреть, может там и нужно некий шедулер в оси, но это совсем из другой оперы. IDE AND NT: OIL AND WATER As was mentioned earlier, NT’s asynchronous I/O model works most efficiently with a SCSI subsystem, due to SCSI’s capability of handling multiple I/O requests simultaneously. Because all ATA/IDE systems are capable of handling only one I/O operation at a time, their performance is severely limited under Windows NT and other multitasking operating systems. Because the drive controller can only talk to one drive on a channel at a time, any other drive requiring I/O servicing at the same time must wait its turn in line until the first drive has finished. This aspect of IDE/ATA drives is also the reason you should never consider using them on NT systems acting as servers. Although even NT workstation computers will benefit from the use of SCSI over IDE (because the system itself is capable of multitasking file I/O requests), the situation becomes exponentially worse on machines with heavy file I/O demands. http://www.windowsitlibrary.com/Content/435/02/12.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 17:50 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
авторЯ на досуге обязательно пороюсь в инете. Может что и найду по обсуждаемому вопросу. А пока по существу мне добавить нечего, а ожидать этого от лезущих во все дыры недоучек - увы не приходится. - видишь суслика ? - нет ... - и я не вижу ... но он там есть :) 2e60 давайте вы нам покажите ту самую фишку в AIX которой нет в линухе и тогда мы может все таки догадаемся о чем идет речь. только умоляю не с домена народ.ру :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:03 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Привет, Alexey! Ты пишешь: AlexeyВедь действительно, если не понимаете разницы между "асинхронностью" и "мультипотоковостью", то может хотя бы в энциклопедии залезли. А то так уверенно заявляют, что "это он лох попутал, а имел ввиду именно AIO". Алексей, ты не рыжий часом? Повторяю для тебя лично: нет такого понятия как "Multithreading I/O". Этот термин безграмотен! Есть Asynchronous I/O , который позволяет многопоточным приложениям не выстраиваться в очередь к бутылочному горлышку, дожидаясь завершения I/O-операций конкурирующих потоков. Надеюсь, IBM для вас достаточный авторитет? http://publib.boulder.ibm.com/infocenter/pseries/index.jsp?topic=/com.ibm.aix.doc/aixprggd/genprogc/io_handling.htm -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:10 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 e60 Я вас очень хорошо понимаю, на самом деле в IBM, MS, SCO конечно не дурачки сидят. (хотя тут встречаются разные персонажи, но это скорее клинические случаи). Так вот, что бы нам с вами продолжать предметный разговор, вам надо уяснить для себя что такое ШИНА, АРБИТРАЖ и какие бывают СОСТОЯНИЯ у шины. http://www.scsimechanic.com/scsi/SCSI2-contents.html Прочитав (а спецификации на SCSI есть в интернете), что такое Message System какие бывают очереди в SCSI вы сможете понять, почему выражение "А если ОС этого не могет, то она просто скажет контроллеру, что мне нужен вот этот кусочек в 1Mb, а уж контроллер сам будет смотреть с какого диска сколько взять. Вот в это м и суть." Называют бредом. Забегая вперёд, могу сказать что,ОС общается с контроллером посредством очереди SCSI и ВСЕГДА говорит только запросами (SCSI message), например, мне нужен вот такой кусок с вот такого устройства SCSI и ещё можно говорить много о чём (например записать такой кусок, найти блок по эталону и прочее). Эти запросы асинхронно (очередью) уходят на контроллер. Непродвинутый контроллер исполняет запросы один за другим. Продвинутый контроллер исполняет запросы для разных устройств одновременно, некоторые производители называют эту особенность своих железок - "multithreaded BLAH BLAH BLAH" Вот в этом и суть. И ОС даже не знает, есть multithreaded на контроллере или нет. А при чём тут AIO попробуйте додуматься сами. 2 Alexey Rovdo "... а ожидать этого от лезущих во все дыры недоучек - увы не приходится ..." Кстати вы много читали исходных текстов Linux, AIX ? Что-то у меня какие-то нехорошие сомнения возникают. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Нет, я читал мало исходных текстов Linux. И "читать" исходные тексты, прямо скажем не лучший способ, для получения информации. Но вот продуктивно рассказать что же в этих исходных текстах содержится относительно обсуждаемого вопроса я бы точно смог, если бы их читал. Ведь если захотеть, можно и ваши комментарии объявить "пустозвонством". Я достаточно хорошо разбираюсь в железе, чтобы понять - вопрос возник не на пустом месте. Но я не выступаю ни за ни против высказываний e60 - я просто хочу разобраться. И высказывания типа "сам дурак" уж точно никак разобраться не помогают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:27 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
AndrewwИ ОС даже не знает, есть multithreaded на контроллере или нет. Но ведь эту мысль можно и продолжить. А если ОС знает о наличии multithreaded на контроллере, то может ли она это как-то использовать для ускорения работы приложений ? И используют ли такую возможность (если она есть) некоторые конкретные ОС ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:30 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2Alexey Rovdo знание о наличии multithreaded оси ничего не даст, просто если его нет задачи выстроятся в очередь если есть пойдут поралельно и тут от оси ничего не зависит. но есть aio, тогда ось дав команду контролеру может не ждать ее исполнения, а занятся своим делом. когда контролер закончит он об этом известит прерыванием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:44 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Одно мне не понятно. Если AIO решает все проблемы многозадачного ввода/вывода, то зачем тогда люди разрабатывают системы подобные этой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 18:56 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
для того чтоб размазывать файловую систему на несколько компьютеров при этом делая балансировку ... к aio это имеет ну очень косвеное отношение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 19:12 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 Yo! >> ось дав команду контролеру может не ждать ее исполнения Наверное, в случае доступности AIO ПОЛЬЗОВАТЕЛЬСКИЙ ПРОЦЕСС может дать команду на ввод\вывод ядру и не дожидаясь её исполнения продолжить работу или отдать квант другому процессу. 2Alexey Rovdo Знание о наличии\отсутствии пресловутого multithreaded ничего не даст, т.к. драйвер SCSI либо выстраивает сообщения в очередь либо от даёт их контроллеру по одному эмулируя эту самую очередь. Контроллер её может выполнить либо параллельно для разных устройств, либо последовательно - убыстрить драйвер ничего не сможет. В исходниках кстати это просматиривается :) >> то зачем тогда люди разрабатывают системы подобные The Vesta Parallel File System Там же вроде английским языком написано : "Users are able to create distributed files without full control over the mapping of data ^^^^^^^^^^^^^ to disks" Речь идёт о ФС, и SCSI, IDE и прочие подсистемы тут НИКАКИМ БОКОМ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 19:19 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
>Наверное, в случае доступности AIO ПОЛЬЗОВАТЕЛЬСКИЙ ПРОЦЕСС может дать команду на ввод\вывод ядру и не дожидаясь её исполнения продолжить работу или отдать квант другому процессу. ну они это зовут kernel aio, прерывания же от цпу ловит он. The device driver then queues the physical I/O operation and returns control to calling process. When the physical I/O operation has completed, the hardware generates an interrupt to a CPU. The CPU switches into interrupt service context and calls the device driver's interrupt service routine to update the asynchronous I/O request data structure and possibly to signal the calling process with SIGIO. http://www.ixora.com.au/notes/raw_asynchronous_io.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 20:09 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 Yo ! Ну да, я вроде об этом и говорю. >>queues the physical I/O operation and returns control to calling process ...выстроить запрос на физ. ввод-вывод в очередь и вернуть управление вызывающему процессу. >>and possibly to signal the calling process with SIGIO. ...и возможно(станет возможным) сигнализировать об этом вызывающему процессу (с помощью сигнала) SIGIO В случае же обычного IO вызывающий процесс управления не получит пока не придёт возврат от драйвера. Есть конечно всякие ухищрения, но AIO в ядре - самое быстрое решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 20:27 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий Привет, Alexey! Ты пишешь: AlexeyВедь действительно, если не понимаете разницы между "асинхронностью" и "мультипотоковостью", то может хотя бы в энциклопедии залезли. А то так уверенно заявляют, что "это он лох попутал, а имел ввиду именно AIO". Алексей, ты не рыжий часом? Повторяю для тебя лично: нет такого понятия как "Multithreading I/O". Этот термин безграмотен! Есть Asynchronous I/O , который позволяет многопоточным приложениям не выстраиваться в очередь к бутылочному горлышку, дожидаясь завершения I/O-операций конкурирующих потоков. Надеюсь, IBM для вас достаточный авторитет? http://publib.boulder.ibm.com/infocenter/pseries/index.jsp?topic=/com.ibm.aix.doc/aixprggd/genprogc/io_handling.htm -- With best regards, Мимопроходящий. Posted via ActualForum NNTP Server 1.1 А возможность SCSI интерфейса посылать команды SCSI устройствам параллельно ну никак не Multithreaded I/O. Ведь одновременное выполнение команд на разных устройствах - это есть АСИНХРОННОСТЬ :) Вот в чем фишка, а мы то и не знаем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 10:25 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Я чувствую скоро народ просто офигевать начнет. Тема топика "что выбрать Oracle или DB2" заходим, а тут такое :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 10:34 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 е60 Попросите модератора прикрыть это грязное дело... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 10:38 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
авторЯ чувствую скоро народ просто офигевать начнет. Тема топика "что выбрать Oracle или DB2" заходим, а тут такое :) Да народ как бы так и делает, вам три страницы объясняют сылки дают а вы похоже так и не вьехали ... прочтите пожалуйста определение multithreading в 5-й раз и расскажите нам все таки что вам еще не ясно ? http://www.adaptec.com/worldwide/support/supporteditorial.jsp?sess=no&language=English+US&prodkey=SCSI_glossary#13 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 11:20 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Ну что же, вынужден признать, что мое исследование вопроса взаимосвязи многопотоковости и SCSI ни к чему не привело. По всей видимости некоторую путаницу в этот вопрос внесли производители SCSI-контроллеров, которые необдуманно включают в описание своих продуктов "поддержку multi-threading I/O" и никак не раскрывают этот термин, кроме: SCSI is multi-threaded -- meaning that it can issue multiple commands to multiple devices simultaneously, can begin another transaction (or command) while waiting for return data -- and it doesn't care what order the commands complete. It is set up to efficiently handle multiple incoming replies using "scatter-gather" tables. IDE technology, in contrast, is single threaded -- meaning that it can only issue one command at a time, and must wait for a reply before issuing the next command. This makes IDE technology very inefficient when dealing with more than a single device at a time. Т.е. под multi-threading I/O понимается даже не какая-то конкретная фича железяки, а просто общая приспособленность интерфейса SCSI для обслуживания многопотоковых приложений. Честно говоря, вступая в разговор я предполагал иное. Мне казалось, что некоторые контроллеры на аппаратном уровне поддерживают несколько очередей SCSI-команд. Но ни о чем таком я на сайтах производителей не прочитал. Есть оптимизация, есть буферизация команд, есть изменение порядка обработки команд в очереди, есть параллельное исполнение этих команд, но сама очередь команд всегда одна. Я, кстати, не считаю, что введение нескольких очередей в данном случае способствовало бы увеличению производительности как таковой. Оно могло бы только облегчить балансировку нагрузки на ввод/вывод со стороны различных приложений (потоков) в мультипроцессорных системах. Что же касается размышлений e60 об одновременном считывании файла с нескольких устройств, то для этого не нужно реализовывать несколько очередей команд. SCSI-устройства сами осуществляют такое чтение при правильном назначении размеров блоков для файловой системы. С уважением, Алексей Ровдо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 12:16 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 e60 Давайте коротенько пробежим по истории. Сначала было так : >>А вы простите спецификацию интерфейсов IDE и SCSI читали? Вообще-то SCSI интерфейс дествительно хорош только при mutlitthreading I/O, что могут только хорошие OS (AIX,SCO или Solaris). Linux и Windows, например, такого вообще не умеют. Поэтому разница в скорости доступа к данным при одинаковой сокрости вращения головки незначительна. Вас попросили объяснить : Yo!>mutlitthreading I/O такое где возникает ? может Asynchronous I/O ? http://lse.sourceforge.net/io/aio.html Вы полезли в бутылку : >>mutlitthreading I/O - это способность SCSI контроллера читать/писать данные несколькими потоками. Аналог многозадачности на 1 процессоре. >>Так вот эту возможность Linux и Windows НЕ ИПСОЛЬЗУЮТ. Ее используют только хорошие серверные ОС, именно поэтому скажем у того же Solaris такой маленький список поддерживаемого оборудования. А контроллеры, котоые она держит стоят очень дорого. Сначала всё было спокойно : Yo!> я никак не могу себе представить зависимость контролера от оси ... драйвер, да - но для сказий драйвера дают в сырцах, например SUN для линух точно, для солярки нада посмотореть. Мимопроходящий> Тебе кто-то сказал, или сам так решил? Вы продолжали упорствовать : >> Ну покажите мне хоть один Linux, который это могет :) >>Кроме того если бы они ее оспользовали, тогда тоже были бы ограничены в списке поддерживаекмого оборудования. И существовали бы версии с такой поддержкой, потому что общение с контроллером выполняется на уровне ядра ОС. Следовательно для поддержки этой функции ядро надо пересобрать. >>Здесь я может быть немного неверно выразился. В случае Linux и Windows контроллер сам решает задачу сколькими потоками и в каком порядке писать/читать данные в SCO, AIX или Solaris эту задачу решает ОС. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Тут уже пошло грубее, но пока всё в рамках приличия : Yo!> какое ядро ? дайте линк на толковый документ а то вы явно что-то не то вычитали. в линуксе со скази работает драйвер, например в sun предлагает свой lsi, а у редхата свой по дефолту, а ядру по барабану который из них общается с контролером. Мимопроходящий> Фантазёр, блин. Вы продолжале наседать : >>Я согласен что в Linux я не очень (в смысле команд и работы с приложениями), но в отличие от Вас я немного разбираюсь в архитектуре ОСей, поэтому привожу доводы в пользу своей точки зрения, а от Вы кроме перехода на личности и просто пустых заявлений пока доводов не привели. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >> Хорошо тогда докажите мне что Linux держит multithreading и приведите хотя бы такой линк. Но несмотря на это, с вами продолжают разговаривать вежливо : Yo!>http://www.caeneng.com/scsi_info.htm просто это фича интерфейса scsi и делается на уровне железа контролера и драйверу по барабану как это делает. Теперь начался прогон, капитальный такой прогон : >> А команды драйверу кто дает? Может в linux и по барабану какой драйвер. Давайте возьмем пример из программирования. Вот есть 2 программы, которые считают скажем среднее арифметическое в массиве. ТОлько одна из них будет написана на ассемблере, а другая на C++ И всё равно вам продолжают растолковывать : Yo!> на иде у тебя если читаешь сидик к диску уже не достучатся, тут threading просто скази- котролер умеет на 2 устройства посылать команды и все, еще раз контролер. дальше это дело навернули что команды на одно у стройство можно в очередь ставить. как это связано с драйвером надо смотреть. Мимопроходящий> Так расскажи нам, убогим, пожалуйста, чем этот пассаж ограничивает ОСи в плане использования оной фичи? Andreww>Всё это Linux поддерживает, вообще говоря это свойство железяки, как пример - http://infiniband.sourceforge.net/archive/SRP-Arch.pdf Хоть это и не совсем SCSI - контроллер :) Прогон не останавливается : >>Здесь можно чисто интуитивно провести параллель... [cut] косвенно говорит o том, что эта технология у них реализована. >>Это описание продукта (а именно контроллера) компании Adaptec. >>Суть использования этой технологии ОС состоит в том, что вместо 1 команды на в/в (например на блока 8Кбайт) ядро формирует, например 4 (на чтение 2Кбайт каждая). Соответсвенно, как Вы и говорили, "железяка" может выполнить несколько команд одновремннно она берет и выполняет 4 команды по 2 Кбайта, вместо одной на 8Кбайт. Ест-но это получается (хотя и не в 4 раза), но в 2 точно быстрее. Теперь понятно что такое multithreaded на уровне ОС. ^^^^^^^^^^^^^^^^^^^^^^^^^^ Тут уже стало понятно, что не то что в архитектуре ОС, но и в элементарной архитектуре ВМ ваши познания весма расплывачаты. Но вы продолжаете упорствовать в своей безграмотности и хамить : >>Вот простой пример 4 SCSI диска в зеркале. Если ОС поддерживает multithreaded, то для считывания файла скажем 1Mb. Она сформирует 4 команды для контроллера: >>256Kb считать c 1 диска, 256 со второго 256 с 3 и 256 с 4-го, так вот эти команды выполняться сразу. (Контроллер просто возьмет все 4 и параллельно выполнит их). >>Сам Дурак Становиться ясно что ваши познания в ОС весьма и весьма поверхностны и по большей части это ваши собственные домыслы. И ваши могучие консультанты по "ЛИНУХУ" похоже не очень понимают устройство ОС Linux. Я трачу своё время и обясняю вам основные принципы не вдаваясь в детали, со ссылками и прочим - Пост 1357636 Проходит некоторое время и как ни в чём ни бывало : >>А возможность SCSI интерфейса посылать команды SCSI устройствам параллельно ну никак не Multithreaded I/O. Ведь одновременное выполнение команд на разных устройствах - это есть АСИНХРОННОСТЬ :) Вот в чем фишка, а мы то и не знаем Уже интерфейс посылает команды устройствам, уже ОС тут как бы и ни при чём. И опять грубый ляп - "Ведь одновременное выполнение команд на разных устройствах - это есть АСИНХРОННОСТЬ" Для справки : Асинхронность это просто характеристка процессов, котороые не совпадают по времени, асинхронный обмен не имеет ничего общего с "... одновременным выполнением команд ...". И при этом делаете замечания в стиле : >>Я чувствую скоро народ просто офигевать начнет. Тема топика "что выбрать Oracle или DB2" заходим, а тут такое :) Народ и офигевает. Догадайтесь сами кого должен забанить модератор ? :) А топик получился интересным :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 12:40 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 Alexey Rovdo >>Т.е. под multi-threading I/O понимается даже не какая-то конкретная фича железяки Именно конкретная и именно железяки. Многие дешевые SCSI контроллеры этого не умеют. >>а просто общая приспособленность интерфейса SCSI для обслуживания многопотоковых приложений. SCSI всегда работает с одним приложением - конкретно с ядром ОС (в случае Linux и Windows).А многопотоковые приложения они уже с ядром. >>Честно говоря, вступая в разговор я предполагал иное. Мне казалось, Зато мы в процессе разговора всё выяснили. Правда зачем было заявлять что вы "... достаточно хорошо разбираетесь в железе " (1357685) , когда на самом деле вам всё больше кажется и вы всё больше полагаете. >>что некоторые контроллеры на аппаратном уровне поддерживают несколько очередей SCSI-команд. Но ни о чем таком я на сайтах производителей не прочитал. Есть оптимизация, есть буферизация команд, есть изменение порядка обработки команд в очереди, есть параллельное исполнение этих команд, но сама очередь команд всегда одна. Именно !!! И всё это потому, что есть спецификация шины SCSI, достаточно было почитать её один раз и все вопросы бы отпали. Лазить по сайтам не пришлось бы. >>Я, кстати, не считаю, что введение нескольких очередей в данном случае способствовало бы увеличению производительности как таковой. И это верно, несколько очередей или одна, скорости это не добавит. >>Оно могло бы только облегчить балансировку нагрузки на ввод/вывод со стороны различных приложений (потоков) в мультипроцессорных системах. Т.е. предлагаете каждому приложению (процессу, потоку) раздавать ещё и IO приоритет ? Хммм. Возможно это разумно. Тут есть над чем подумать. >>Что же касается размышлений e60 об одновременном считывании файла с нескольких устройств, то для этого не нужно реализовывать несколько очередей команд. Конечно не нужно. >>SCSI-устройства сами осуществляют такое чтение при правильном назначении размеров блоков для файловой системы. Именно. И ОС даже не знает есть у устройства поддержка такой ФИЧИ или нет, есть - данные будут прочитаны быстрее, нет - будут прочитаны медленне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 13:01 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
>> Именно конкретная и именно железяки. Многие дешевые SCSI контроллеры этого не умеют. Если так, то дайте хоть какую-нибудь ссылку, где об этой фиче можно поподробнее почитать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 13:14 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
2 Alexey Rovdo >>Если так, то дайте хоть какую-нибудь ссылку, где об этой фиче можно поподробнее почитать. Вы думаете просто найти сайт какого-нибудь китайского производителя, где будет написано - вот, наши адаптеры не поддерживают выполнения нескольких команд из очереди ? Adaptec-и эту возможность поддерживают, а если такой возможности в какой модели нет, то ес-но об этом не пишут в Features железяки,спецификация SCSI как шины ничего не говорит о возможности паралелльного исполнения команд для разных устройств. Я думаю такую железяку(без паралелизма) можно, но очччень долго и геморно. Может вас убедит в наличии таких адаптеров, наличие адаптеров вообще без поддержки очередей ? Подробно можно почитать тут - http://www.unet.univie.ac.at/aix/aixbman/prftungd/scsiqueue.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 13:46 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Andreww Может вас убедит в наличии таких адаптеров, наличие адаптеров вообще без поддержки очередей ? Неа - не убеждает. Мне кажется, что даже такие адаптеры без аппаратной поддержки очередей все равно поддерживают возможность параллельного исполнения команд различными устройствами, подключенными к шине. И это так просто в силу самой спецификации интерфейса SCSI, а не какой-то фичи, реализуемой именно контроллером. Т.е. в данном случае не имеет никакого значения то, как поток команд поступает на контроллер - непосредственно из программы или из аппаратно реализуемой очереди - возможность послать следующую команду другому устройству, не дожидаясь ответа на предыдущую команду, заложена на уровне интерфейса SCSI. Так что я все-таки подрозреваю, что multithreading I/O - не что иное, как рекламная уловка производителей контроллеров, за которой не стоит вообще ничего конкретного (если только речь не идет о том, что сами драйвера этих контроллеров раньше были однопоточными, а теперь вот стали использовать стандартные возможности SCSI). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 15:54 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
как я понял некоторые контролеры умеют не просто принимать несколько команд и выстраивать их в очередь, но и этой очередью управлять/оптимизировать. но это их ноухау и делается на железном уровне (естественно), узнать умеет ли он выстраивать хотя бы в очередь выясняет драйвер командой can_queue. вот тут об этом вскользь. http://www.helloworld.ru/texts/comp/os/linux/l15/index.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 16:03 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
>возможность послать следующую команду другому устройству, не дожидаясь ответа на предыдущую команду, заложена на уровне интерфейса SCSI. послать другому устройству может любой SCSI, какой бы дешевый бы он нибыл,это не обсуждается и называется multithreading. Но, некоторые умеют создавать очереди к одному устройству, вот это как я понял называется multitaking (из определений adapec). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 16:09 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Yo!>возможность послать следующую команду другому устройству, не дожидаясь ответа на предыдущую команду, заложена на уровне интерфейса SCSI. послать другому устройству может любой SCSI, какой бы дешевый бы он нибыл,это не обсуждается и называется multithreading. Но, некоторые умеют создавать очереди к одному устройству, вот это как я понял называется multitaking (из определений adapec). Ну что-то вы совсем запутали (сь) в определениях. Очереди к одному устройству-это TCQ :) Теперь и в SerialATA. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 16:40 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
Посмотрим, например, сюда . Так вот "Tagged Queuing" - это как раз к вопросу об оптимизации очереди и непоследовательном ее исполнении. Но "Multi-threaded I/O" на сайте Adaptec нигде не расшифровывается. Вот еще ссылочка - "Multithreaded I/O (up to 255 tasks simultaneously)". И в таком же духе для целой кучи продуктов. И везде без пояснений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 16:42 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
все у них есть http://www.adaptec.com/worldwide/support/supporteditorial.jsp?sess=no&language=English+US&prodkey=SCSI_glossary#13 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 16:44 |
|
||
|
Что выбрать Oracle или DB2?
|
|||
|---|---|---|---|
|
#18+
MULTITHREADING A situation in which a host adapter has more than one outstanding command to two or more SCSI devices Ситуация, в которой хост-адаптер контролирует выполнение более чем одной команды двумя или большим количеством SCSI-устройств. Ну так я и говорю, что принципиальную возможность, заложенную в саму спецификацию SCSI изначально, пытаются выдавать за свое достижение. Впрочем, я начинаю верить и в то, что "на заре" существовали контроллеры, которые обрабатывали команды последовательно и просто не посылали следующую команду до тех пор, пока не закончилась обработка предыдущей команды. Впрочем, к ОСям это действительно не имеет никакого отношения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2005, 17:01 |
|
||
|
|

start [/forum/topic.php?all=1&fid=35&tid=1553926]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
99ms |
get tp. blocked users: |
1ms |
| others: | 258ms |
| total: | 428ms |

| 0 / 0 |
