SAS connect to Hadoop. Три способа взаимодействия SAS и Hadoop.

Всем привет.

Уже достаточно давно у всех на слуху слово Hadoop или Big Data.
Многие про это слышали, но мало кто видел.

Тем неменее SAS уже официально является партнером таких мировых лидерова как Cloudera  и Hortonworks.

Если зайти на сайт SAS, то можно увдидеть множество макретинговой информации о приимуществах hadoop и визуализации SAS.

Однако когда дело доходит непосредственно до работабы все оказывается не так просто…

Есть официальная документация SAS по тому как настраивать соединение SAS c Hadoop. Его можно посмотреть тут.

А дело в том, что необходимо создавать папку и прописывать путь SAS_HADOOP_JAR_PATH и класть туда специальный jar файлы из уставновленного hadoop. Это может быть как Cloudera, Hortonworks, Apache Hadoop, IBM BigInsigths.  Но какие именно нужны фалы вам об этом никто не скажет. Так сказать разбирайтесь сами. С этим пришлось изрядно повозить.

Так вот возвращаясь к названию статьи есть три способа соединяться с hadoop:

1. Непосредсвенно через файлы. В таком случае обращение идет сразу к файловой системе hadoop HDFS:

2. Через MapReduce. В данном случае вы уже можете писать и запускать свои mapreduce программы.

3. Через SAS/Access. В данном случае взаимодейсвие идет через Hive Server, а не непосредсвенно через hadoop.

Таким образом, как можно видеть, не обязательно иметь SAS Access to Hadoop для того чтобы взаимодейсвовать с Hadoop.

Данные картинки я взял из презентации Jeff Bailey, который непосредсвенно отвечает за плагины SAS Access к различным базам данных.

Если у Вас появятся вопросы, связанные с коннектом SAS и Hadoop обращайтесь. Или поделитесь опытом — сколько времени вы на это потратили :).

С уважением,
Тимаков Николай.

День рождение! Нам 1 год.

Всем привет.

Сегодня исолняется ровно 1 год данному блогу и сайту.

За это время было сделано очень много:

  • Написаны 102 полезных статьи.
  • Написана 1 книга «Практические уроки по SAS».
  • Сделано множество проектов внедрения SAS решений. 
Хотел бы поблагодарить всех тех кто помогал и вложил свой труд — это Сергей Шишленин и Александр Маслов

Также хотелось бы услышать обратную связь от тех, кто читает и находит что-то полезное на страницах нашего блога:

  • Какие темы Вам больше интересны?
  • Находите ли Вы данный блог полезным?
  • Статьи по каким направлениям Вы бы хотели увидеть в будущем?

Также призываю всех тех, кто готов поделиться «набитыми шишкакми» с коллегами быть соавторами. Вы можете либо прислать статьи мне и я их опубликую. Либо попрость добавать себя в авторы блога.

До скорых встреч.

С уважением,
Тимаков Николай.

Как изменилась позиция SAS на мировом рынке продуктво EGRC.

Всем привет!

Просто хотечтся показать изменения позиций SAS на рынке продуктов EGRC (Enterprise Governance, Risk and Compliance) на примере квадрата Гартнера.

2011 год:

2012 год:

Как можно видеть SAS перешел из квадранта Visionaries в квадрант Лидеров.

2013 год:

В 2013 году ситуация изменилась и SAS покинув группу лидеров вернулся обратно в visionaries.

Основные причины, по которым SAS опустился называется, то что не нашлось не одного клиента, который бы сказал, что данное решение превзошло ожидания клиента.
Также среди негативных факторов оказалась сложность продукта.
Внедрения данного продукта занимает очень большое время до момента, когда продукт начинает приность хоть какой-то результат.
Ну и конечно сложность в освоении данного продукта.

Все выше сказанное относиться к мировому опыту в целом.
В России же продукт SAS EGRC достаточно популярен.

Хотел бы услышать мнения тех кто работает с данным продуктом.

С уважением,
Николай.

SAS Cleanwork Utility. A как вы чистите свою WORK library ?

Всем привет!

А сталкивались ли вы когда-нибудь с проблемой нехватки места для work library?

Бывает так, что ваша программа работает себе, работает. Час работает, два работает, а потом бац и вся эта работа «коту под хвост». А все потом, что у вас место на диске под папку work закончилось.

Как же обычно борются с этой проблемой?

На самом деле все довольно просто. Решение заключается в том, что ставят на расписание полную очистку папки, например каждую субботу.

Оказалась, у SAS есть специальная утилита, котрая позволяет чистить папку work.
Надо сказать я попробовал и все мои папочики типа _TD.. автоматически исчезли.
Надо сказать, что если вы работаете и ваша сессия действующая, то с вашей папкой ничего не случиться.

Почитать про cleanwork utility можно здесь.

А скачать тут.

С уважением,
Николай.

P.S. Оригинал статьи можно посмотреть здесь

SAS Audit или Как узнать кто и когда вносил изменения в спровочник?

Всем привет!

Часто при работе мы имеем дело с ручными справочниками.
Обновляются такие справочники по разному. Некоторые раз в месяц, какие-то каждый день, а кикие-то и вовсе раз в столетия (как например территориальные).

Так вот бывает так, что кто-то изменил справочник, а кто и по какой причине это сделал не понятно.
Да конечно, доступ обычно дается лишь определенной группе лиц и вычислить и можно просто каждого опросить, а что делать если доступ имеют более сотни людей.

Есть еще один способ — это парсить лог файлы. Однако не факт, что у вас эти логи храняться, а если и храняться то хватит ли детализации. Да и влюбом случае не быстрая это работа.

Есть еще один способ ….

А способ заключается в том, чтобы настроить на справочник audit файл. Он имеет такоеже название, как и сам справочник, различаются только расширением.

Подробно как работает аудит файл и какая информацию туда пишется я продемонстрировал в видео уроке:

P.S.
Не забывайте, что качесто видео можно увеличивать до HD формата.
Ну и плюсовать видео, если вам понравилось.

До скорых встреч!

С уважением,
Николай.

MPRINT, MLOGIC, SYMBOLGEN. Или как понять что происходит при выполнение макросов.

Всем привет!

Сегодня коснемся темы DEBUGGING макросов. А именно иструментов, которые нам помогут если что понять на каком этапе выполнения макроса случилась ошибка. 
А помогут нам в этом следующие опции: MPRINT, MLOGIC, SYMBOLGEN.

MPRINT — Отображает выполняемый код макроса в логах.

Пример:  напишем простенький макрос:

Теперь запустим его без включенной опции mprint:

А теперь подключим опцию mprint:

Мы видим, что появились дополнительные записи начинающиеся с MPRINT(TST).

MLOGIC— Полезная опция для вложенных макросов. Отображает логику выполнения макроса. Т.е. елси будут макросы %DO ,  %IF-%THEN,  данная опция покажет по какой логике идет выполения макроса.

Давайте прассмотрим пример: запусти выполение предыдущего макроса с включенной опцией mlogic:

Мы видим в логах, как изменялось значение параметра I в цикле, а также завершение выполнения макроса.

Ну теперь давайте включим сразу две опции mlogic и mprint:

В данном логе прекрасно видно как эти опции работают совместно и дают довольно полуную информацию о том что делает макрос.

SYMBOLGEN — С помощью данной опции мы можем узнать во что превращаются макропеременные.

Дастаточно хорошо данная опцию уже рассматривалась мною в статье: SAS Macro variable and ampersands.

P.S.
На последок хотел бы сказать: «Не забывайте отключать эти опции, когда программа уже отлажена, т.к. они очень сильно могут раздувать файлы логов».

Для того чтобы отключить данные опции можно выполнить команду:

options nomprint nomlogic nosymbolgen;

P.P.S.
Чуть не забыл — не забывайте кликать на ссылки соцсетей, если статья Вам понравилась.

До скрорых встреч.

С уважением,
Николай.

Autoexec в SAS Enterprise Guide. Или как настроить под себя необходимые библиотеки и опции.

Всем добрый день!

Я думаю тот кто работает с SAS и пишет программы в SAS Enterprise Guide уже давно привык к тому что использует какие-то свои определенные настройки среды. Это может быть и определенные опции и свои библиотеки и что-то еще.

Но какждый раз при создании программ или проектов делать copy-paste своих настроект из предыдущего проекта может надоесть да и не правильно это.

А более правильно использовать автоматические настройки, которые прописываются когда вы начинаете работать в SAS Enterprise Guide.

Как же это сделать?

Да все очень просто. Есть два способа прописать сови настройки.

Первый способ — индивидуальный. Т.е. вы прописываете настройки лично под себя.
Это можно сделать через: Tools -> Options -> SAS Programs
Далее нужно поставить галочку «Submit SAS code when server is connected
И просто прописать свой код.

Ниже показано, как это работает подробно:

Есть еще один способ — сделать общие настройки через проект. Так бывает более удобно, когда над проектом работаете не только Вы, но и другие ваши коллеги.

Подробно как это делать можно посмотреть во втором видео-уроке:

Да чуть не забыл, в проекте может быть только один поток называться Autoexec.

Так что начинайте использовать autoexeс.

C уважением,
Николай.

sas подгруппа на reddit

Всем добрый день.
По аналогии с английской reddit sas-подгруппой я зарегистрировал ветку reddit.com/r/sas_ru, предназначенную для обсуждений на русском языке.

Несколько первых возможно кому-то полезных линков:

Так же создан FAQ, предложения по наполнению которого приветствуются (пишите либо тут в комментариях, либо там (для регистрации не нужен даже e-mail)).