без комментариев

Источник: http://www.linkedin.com/company/oracle/statistics

"Similar companies are based on the same industry and similar size"




Читать дальше...

Itanium - FYI

Вчера Oracle решил остановить разработку следующих версий под Itanium. Наиболее взвешенное объяснение я нашел здесь - если коротко, то Microsoft и Red Hat прекратили поддержку Itanium еще раньше. Но HP тоже прав - так бросать заказчиков не следовало (см комментарий Романа).

Пока можете скачать себе в коллекцию последние версии базы под эту платформу -(
Update 1: Не знаю кому и верить: "We remain firmly committed to delivering a competitive, multi-generational roadmap for HP-UX and other operating system customers that run the Itanium architecture.", Paul Otellini, president and CEO of Intel Corporation.
Update 2: ААА, Ларри просто обиделся на вот это -)
Update 3: Парни держат слово, в MOS 742060.1 обещали выпустить версию для Itanium 15 марта 2011 года. Как в известном анекдоте "не получилось"...
“HP gets hit. Oracle’s database is a major workload on HP’s Itanium servers, with possibly up to 50% of HP’s flagship Superdome servers running Oracle. A public statement from Oracle that they will no longer develop their database software will be a major drag on sales for anyone considering a new Oracle project on HP-UX and will make customers and prospects nervous about other key ISV packages as well.”
“HP believes in fair and honest competition. Competition is good for customers, innovation and the marketplace. We are shocked that Oracle would put enterprises and governments at risk while costing them hundreds of millions of dollars in lost productivity in a shameless gambit to limit fair competition.”


Читать дальше...

про золушку

Предположим у нас есть 3 дисковые стойки по 12 дисков. Стойки "тупые", а потому мы ставим  ASM и создаем группу с Normal Redundancy. Думаю, пока возражений нет ? Затем у нас ..неожиданно выключается диск. Это полная ерунда, поскольку у нас ASM и данные обязательно зазеркалированы..ну, так  скажем на каких-то еще дисках. Внимание опрос - какова вероятность потери данных при выходе из строя следующего диска ?


Читать дальше...

читая TPC-C


Многие спрашивают, что же за  волшебный SuperCluster. Чтобы понять о чем дальше пойдет речь вам нужно прочитать пост "изучаем aнглийский вместе с Ларри". 
Итак, новый рекорд в TPC-C с весьма впечатляющими цифрами. Одновременно нам рассказывают про новый процессор T3, который в 2 раза производительнее старого,  Infiniband, новый Solaris 11 и Flash Array. 

Конечно, очень бы хотелось понять, а что именно изменилось со времени предыдущего теста, что так здорово увеличило производительность.

Для этого рассмотрим два теста,
 старый: 7,646,486 tpmC, 384 ядра, UltraSPARC T2 Plus 1.6GH, Flash Array, 12 узлов RAC
  новый:  30,249,688 tpmC, 1728 ядер, SPARC T3 1.65GHz, Flash Array, 27 узлов RAC


Тот же Flash Array, тот же Solaris 10 (да-да, а вовсе не Solaris 11), версия RAC изменилась с 11gR1 до 11gR2 но документированных  улучшений в производительности я не видел. Что странно, на диаграммах в обоих случаях в качестве RAC Network стоит 10GbE switch (?). Я думал, что в качестве интерконнекта использовался Infiniband ..(поправьте меня если я что-то пропустил)

По человечески вроде бы результаты понятно - 30/7 ~ 4 , т.е. мы взяли в 2 раза больше узлов (27/12)  и в два раза более мощный процессор.

Теперь о странном: Если поделить число транзакций на ядро, то окажется, что новый T3 дает нам 17,505, старый T2  дает 19,912. Что совсем выглядит пугающее, в соседней строчке в том же TPC-C  Power 7 дает 53,990 (хоть и на другом приложении, но транзакции то одни и те же ).

Не внушает оптимизма и тот факт, что из $47 млн $22 млн стоит Flash Array (суммы до скидок, просто для того для того показать соотношение).

Flash Array (или SSD диски), Infiniband, 10Gg Ethernet - все это на данный момент практически стандартные компоненты, предлагаются многими вендорами.

Я остался в полном непонимании от применимости результатов теста supercluster  в реальной жизни. Т.е. решив увеличить результат, просто увеличили объем железа, удвоив стоимость. Мне кажется что supercluster это все таки победа больше маркетинга, играющего коэффициентами в processor core table.   Что, конечно же, не умаляет заслуг инженеров, все это собравших  -)


 Пока я вижу только одну хорошую новость - большее число узлов RAC смогло дать прирост производительности, а значит RAC все таки работает -)






Читать дальше...

Fish and chips

Несколько мелких улучшений в работе администратора СУБД: установка клиента, GUI, настройка ssh  и т.п.  Буду благодарен если в комментариях сообщите о своих улучшениях для каждодневной работы



Читать дальше...

listeners in 11gR2 RAC

Посмотрев   в listener.ora в на узле 11gR2 я сильно удивился.

Теперь там дословно написано вот это:

LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent
LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))))                # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON                # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent

и появился файл endpoints_listener.ora

в котором написано вот это:

LISTENER_PROD01=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=prod01-vip)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.25)(PORT=1521)(IP=FIRST))))          # line added by Agent



Мне не удалось найти в документации что такое endpoints_listener, что значит  ENABLE_GLOBAL**.   Если кто-нибудь меня ткнет в документацию - будет замечательно. Понятно, что теперь пользователи подсоединяются на scan и потом уже на listener  конкретной ноды, понятно что теперь нужно ставить local_listener на LISTENER (теперь имена листенеров одинаковы на всех узлах) а remote_listener на listener-scan, т.е. мне кажется я понимаю как это работает - но я не понимаю что значат слова в конфигурационых файлах и зачем их два.

Появилось несколько новых параметров команды srvctl

prod01-> srvctl status scan
SCAN VIP scan1 is enabled
SCAN VIP scan1 is running on node prod01
prod01-> srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): prod02,prod01
prod01-> srvctl status scan_listener
SCAN Listener LISTENER_SCAN1 is enabled
SCAN listener LISTENER_SCAN1 is running on node prod01


И наконец феерическое:


Bug 8595653
The endpoints_listener.ora file is used to get endpoints of the default listener when data files of Oracle Database 11g Release 1 or Oracle Database 10g Release 2 are created on a release 11.2 Oracle ASM disk group. However, when the listener is modified (such as changing a port number using Network Configuration Assistant), the endpoints_listener.ora file is not updated.

Что такое scan достаточно хорошо описано тут.  Но сегодня мне задали идиотский вопрос - если один из scan listener'ов упадет ведь клиенты будут попадать на него и получать tcp/ip timeout ? Оказывается нет, потому что scan живет поверх scan vip ip, его поднимут другие узлы и клиент быстро поймет что его там никто не ждет. Теперь на public interface любого узла кластера живет 3 адреса - vip, scan vip, public этого узла. Никто не отменял что в случае падения узла, на выживших появится vip с упавшего.  Объяснить почему у меня на интерфейсе 4 новых ip адреса я затруднился ограничившись техническим термином "так надо, главное ничего не менять".

Коротко - scan приляпали сверху ко всем,  что существовало в 10g/11gR1 постаравшись все сохранить. Обяъяснить зачем все это нужно стало практически нереально. Просто ничего не трогайте после установки  -)

Update 1: совсем просмотрел во что installer поставил параметры local/remote listener. Теперь их хотя бы стали ставить при установке (на самом деле деваться некуда), но вот почему не через tnsnames, опять загадка -)


SQL> show parameter local

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
local_listener                       string      (DESCRIPTION=(ADDRESS_LIST=(AD
                                                 DRESS=(PROTOCOL=TCP)(HOST=192.
                                                 168.1.31)(PORT=1521))))

SQL> show parameter remote

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      rac-scan.us.oracle.com:1521


Читать дальше...