Необходимые компоненты для установки SAS на Unix системы

Всем привет!

В этой статье я напишу о необходимых настройках Linux перед установкой ПО SAS. Эта статья не имела бы место в случае полного описания требований к Linux в документации SAS.

Речь пойдёт о компонентах, требуемых при установке системы SAS Intelligence Platform, которая включает в себя Web Application сервера.

В данном примере используется RedHat в качестве OS. На других Unix платформах синтаксис может отличаться!

Поехали!

Читать далее Необходимые компоненты для установки SAS на Unix системы

4 бесплатных ресурса для изучения SAS!

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

Читать далее 4 бесплатных ресурса для изучения SAS!

Обрезаем хвосты с пробелами в макропеременных через PROC SQL

Всем привет!

Пару лет назад была статья о работе с макропеременными, о том как сохранять значения без хвоста пробелов. Тогда речь шла о записи значений через DATA STEP.

В этой статье я поделюсь, как это можно сделать через PROC SQL.

Читать далее Обрезаем хвосты с пробелами в макропеременных через PROC SQL

Обзор SAS Event Stream Processing

Всем привет!

Меня неоднократно просили сделать обзоры на продукты SAS, с которыми мне доводилось работать.  И вот, представляю мой обзор на SAS Event Stream Processing или SAS ESP.

В статье будет рассматриваться версия SAS ESP 3.2.

Поехали.

Читать далее Обзор SAS Event Stream Processing

SAS HTTPS в России

encryptionВсем привет!

С приходом новых версий продуктов SAS, приходят и новые проблемы. В статье я опишу проблему, с которой разработчики SAS в ряде стран сталкиваются при работе с протокол HTTPS с помощью PROC HTTP.

ERROR: Could not find extension: (tkessl)

ERROR: An SSL cipher handle could not be created.

ERROR: TK extension TKEAM could not be loaded. Most likely secure communications are not available on this system.

ERROR: Unable to establish an SSL connection.

Вы столкнулись с этой ошибкой? Одно из решений в данной статье!

Читать далее SAS HTTPS в России

Веб сервисы и SAS

Всем привет!

В данной статье я поделюсь, как создаются web-сервисы на базе архитектуры SAS, и как используются хранимые процессы SAS для работы с web-сервисами.

Как оказалось, ничего сложного в этом нет!

Итак, приступим.

Читать далее Веб сервисы и SAS

Макросы для работы с макропеременными

Данная статья посвящена пиратам =)

И моим самым часто используемым макросам!

Читать далее Макросы для работы с макропеременными

Работа с Oracle в среде UNIX


Всем привет!
Данная статья посвящена вопросам с кодировкой при работе с БД Oracle через SAS на среде UNIX
Сколько «собак уже было съедено» с вопросами кодировки, но, тем не менее, они периодически всплывают. Например, отображение вопросительных знаков вместо русских букв, является распространённой проблемой. 
Попробуем разобраться ниже.

В первую очередь перед настройкой кодировки я настоятельно рекомендую прочитать пару документов:
Далее, необходимо убедиться, что на сервере UNIX, где установлен SAS, установлен клиент Oracle. Сделать это можно, запустив следующую командную строку через Putty:
echo $ORACLE_HOME
Если данный параметры возвращает пустую строку, то скорее всего клиент Oracle отсутствует.
Даже если клиент установлен, скорее всего, придётся проверить следующие параметры: PATH и LD_LIBRARY_PATH. Запускаем командную строку:
echo $PATH
В строке PATH ищем что-то вроде /../oracle/client64/bin
Если такой строки нет, то необходимо выполнить следующую команду:
export PATH=$PATH:/../oracle/../bin
Аналогично проверяем второй параметр, запустив следующую команду:
echo $LD_LIBRARY_PATH
Если такой параметр отсутствует, то необходимо выполнить следующую команду
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
Следующим шагом будет установка (или мы убедимся, что они установлены) необходимых библиотек для корректной работы SAS в системе UNIX. Для этого, запустим следующую командную строку на сервере SAS:
yum install libXp glibc libXp-devel
Как показала практика, такие вещи забывают делать, а потом сложно разобраться, откуда появляются проблемы. Без данных библиотек практически невозможно разобраться с ошибками, которые появляются в логах, так как они сообщают о том, что с данной ошибкой необходимо обратиться в техническую поддержку SAS.
Далее, необходимо выявить в какой кодировке была развернута БД Oracle. Запустим следующую строку, например, вSQL Developer:
select * from nls_database_parameters
В качестве результаты мы получим список параметров, и нас интересуют следующие:
NLS_LANGUAGE
AMERICAN
NLS_TERRITORY
AMERICA
NLS_NCHAR_CHARACTERSET
AL16UTF16
Во втором столбце настойки использованы в качестве примера.
Далее, смотрим на конфигурационную настройку сессий SAS. Для этого в SAS Base, SAS Enterprise Guide или другой среде, где можно запустить SAS код, запускаем следующую строку:
Proc options
     option=config
     option=locale
     option=encoding;
Run;
В качестве результата, может получиться что-то вроде:

CONFIG=(
/SAS94/SASHome/SASFoundation/9.4/sasv9.cfg
/SAS94/SASHome/SASFoundation/9.4/nls/u8/sasv9.cfg
/SAS94/SASHome/SASFoundation/9.4/sasv9_local.cfg
/SAS94/sasconfig/Lev1/SASApp/sasv9.cfg
/SAS94/sasconfig/Lev1/SASApp/sasv9_usermods.cfg
/SAS94/sasconfig/Lev1/SASApp/WorkspaceServer/sasv9.cfg
/SAS94/sasconfig/Lev1/SASApp/WorkspaceServer/sasv9_usermods.cfg )

LOCALE=EN_US      Specifies the current locale for the SAS session
ENCODING=UTF-8    Specifies default encoding for internal processing of data
Таким образом, мы видим настройки как среды SAS, так и Oracle.
В принципе, данные настройки являются корректными, тем не менее проблема с отображением кириллицы может оставаться.
В данном вопросе приходит на помощь параметр NLS_LANG. Попробуем запустить командную строку в UNIX:
echo $NLS_LANG
Данный параметр может оказаться вовсе пустым.
Для кодировки AL16UTF16 я рекомендую запустить следующую командную строку:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
Для того чтобы настройки вступили в силу, необходимо перезагрузить SAS ObjectSpawner на сервере SAS. Для этого запускаем командную строку:
/../sasconfig/Lev1/ObjectSpawner/ObjectSpawner.sh restart
Если же, необходимо отобразить кодировку CYRILLIC, то для этого необходимо запустить строку с другим параметром:
export NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
Но этого будет не достаточно. Также потребуется добавить следующий параметр в файл:
/../sasconfig/Lev1/SASApp/WorkspaceServer/sasv9_usermods.cfg
-ENCODING=WCYRILLIC
Далее перезагружаем SAS ObjectSpawner.
Но в случае перезагрузки сервера, или всех служб SAS, всё придётся выставлять заново. Для того, чтобы этого избежать добавим все необходимые параметры в файл /home/user/.bash_profile:
export PATH=$PATH:/../oracle/../bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
Вместо пользователя user необходимо подставить имя пользователя, из-под которого запускаются процессы SAS.
На этом всё!

Возможность познакомиться с SAS Enterprise Miner

Всем привет!

Хочу познакомить вас с замечательным ресурсом:

В нём вы найдёте то, что интересует многих — работу с Data Mining инструментами, а также работу с программным обеспечением, которое позволяет это. 
 
В частности, меня заинтересовала работа с SAS Enterprise Miner. 
На мой взгляд, книжки-статьи очень хороши, хотя местами сложно и слишком детально. Тем не менее, это лучшее, что есть сегодня на русском языке.
Смотрим, изучаем!