Миграция на последние версии Caché Кудинов Сергей План • Необходимость миграции – Использование новых/ усовершенствованных возможностей – Использование нового оборудования – Использование поддержки продуктов – Быть в тонусе!!! •

Download Report

Transcript Миграция на последние версии Caché Кудинов Сергей План • Необходимость миграции – Использование новых/ усовершенствованных возможностей – Использование нового оборудования – Использование поддержки продуктов – Быть в тонусе!!! •

Slide 1

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 2

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 3

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 4

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 5

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 6

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 7

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 8

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 9

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 10

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 11

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 12

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 13

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 14

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 15

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 16

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 17

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 18

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 19

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 20

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 21

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 22

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 23

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 24

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 25

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 26

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 27

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 28

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]


Slide 29

Миграция на последние версии Caché
Кудинов Сергей

План

• Необходимость миграции
– Использование новых/ усовершенствованных
возможностей
– Использование нового оборудования
– Использование поддержки продуктов
– Быть в тонусе!!!

• Рекомендации по миграции
• Примеры миграции

Новые возможности
2008.2
2008.1
2007.1
5.2
5.1
5.0

Работа с локальными массивами

Работа с глобальными массивами

Основные новые возможности в
2008.2

• Производительность при работе с объектами
– Время компиляции
– Обращение к свойствам и методам объектов

• Высокая надежность
– Усовершенствование работы с теневым сервером
– Уменьшение времени после сбоев

• Управление большими конфигурациями
– Увеличение производительности задач/утилит
• Незапланированных (восстановление журнала, проверка
целостности, ...)
• Запланированные (передача изменений, backup, ...)

Обращение к свойствам/методам

• Увеличение производительности при обращении к
– Методам классов
– Свойствам
– Методам экземпляров

• Использование механизмов кеширования при

обращении к методам/свойствам
– Подобная модель используется для кеширования
программ (2007.1)

• Устранение «соревнований» между объектами на
загруженных системах
– Уменьшение использование CPU

Результаты тестирования

Object Dispatch - итоги

• Вызов методов в 2.5-3 раза быстрее, чем 2008.1
• До 5 раз быстрее, чем Caché 5.2
– Кумулятивный эффект улучшений при работе с
объектами и программами

• Обращение к Методам/Свойствам лучше

масштабируются
– при увеличении числа процессов
– при увеличении числа процессоров/ядер

• Уменьшение загрузки CPU

Компиляция классов –
наследование методов

• До 2008.2 код наследуемых методов копировался в
классах-потомках

• Если класс Patient наследует класс Person
– ‘Весь’ код метода, наследуемых из Person
копировался в программ для Patient
– Перекомпилировался весь наследуемый код в
классе Patient

Недостатки существующего
подхода

• Дублирование кода
• Длительное время компиляции
– Время компиляции любого класса
– Изменение класса вверху иерархии требует
перекомпиляции всех классов ниже в иерархии

• Сложности с размером программ(ранее)

Реализация в 2008.2

• Нет копирования методов супер-классов
• Изменение обращения к методам супер-класса
(использование %this)

• Изменение компилятора для того, чтобы супер-класс

мог быть перекомпилирован без компиляции классовпотомков

Новое для отказоустойчивых
систем

• Более быстрые механизмы востановления после сбоев

• Устранение требований к сетевым дискам
• Уменьшение зависимости от ПО третьих лиц для
кластеризации

• Использование нескольких теневых серверов

Теневые сервера

• Использование нескольких теневых сервером
– Один из них основной
– Другие резервные

• TCP –соединения между набром теневых серверов
• Основной сервер передает изменения резервным

Studio

• Возможность обнаружения undefined переменных

• Подсказка при вводе макросов
• Подсказка при вводе параметров

• Подсказка при вводе локальных переменных

Zen

• Поддержка drag-and-drop
• Динамическое изменение размеров групп

• Усовершенствование механизма загрузки дерева
• Новый tab control

CSP

• Поддержка программной http аутентификации из Cache
• Новый интерфейс к IIS 7

• Поддержка пула соединений при работе с Apache
• Поддержка http 1.1
• Передача сообщений >32K с помощью chunks

Работа с потоками

• Усовершенствование механизма поиска текста в
потоках (%CONTAINS и %SIMILARITY)

• Усовершенствование планов SQL запросов при поиске
текста в потоках (потоки могут индексироваться)

• Поток может возвращаться SQL функцией

• Поток может быть аргументом SUBSTRING

Безопасность

• Супер-сервер может работать с SSL соединениями
• Telnet через SSL для Windows

• Усовершенствование безопасности для таблиц на
уровне столбцов

Разное

• Усовершенствование light c++ binding
• Поддержка JIS2004

• Профилирование кода на уровне подпрограмм
• Усовершенствование NLS
• Бинарный SOAP

Итого

• Более широкие возможности построения интерфейса
(Zen+новые bindings)

• Увеличение производительности

• Использование новых конструкций (try…catch,…)
• Новые технологии (DeepSee)

Использование нового оборудования

• 2008.1





Windows Server 2008
AIX 6.1
RedHat 5*
SuSe 10

• 2007.1.1
– Windows Vista

Использование технической
поддержки

• Версии 5.x не поддерживаются
– Трудности при решении проблем через WRC
– Большие трудности при заказе Adhoc

Быть в тонусе

• Миграция с 2008.1 на 2008.2 значительно легче, чем с
4.1 на 2008.2

• Возможность использования новых технологий
• Совершенствование процесса
разработки/тестирования ПО

Рекомендации по миграции

• Анализ Release Notes
• Анализ Upgrade CheckList
• Анализ кода программ, классов, сsp-страниц,
хранимого в глобалах кода
– Использование $ZU()
– Использование системных классов
– Использование системных программ
–…

Ошибки компиляции

• Требования к корректности описания классов стали
жестче

• Может потребоваться незначительная модификация
для исправления ошибок

• Существуют изменения в описании структуры данных
(например, в SQLStorage)

Ошибки исполнения

• Ошибки исполнения намного опаснее ошибок

компиляции!!! Надо стараться их предотвратить

• Гораздо проще сравнить результат вызова системной

функции в разных версиях Cache, чем протестировать
работу всего приложения

• Есть сомнения – лучше перепроверить

Примеры миграции

• НПЦ «Аир» (MSM-Cache 4.1-Cache 5.0-Cache 2007.1)
• ЭКО-М (DTM-Cache 5.0-Cache 5.2-Cache 2007.1)
• Порт Владивостока (Cache 4.1-2008.1)
• SolidWorks (Cache 5.0-Cache 5.2-Cache 2008.1)
• Registru (Cache 5.0-2008.1)

• Летограф (Cache 5.0-2008.1)
•…

Спасибо за внимание! Вопросы?
Кудинов Сергей
[email protected]