I suspect that your SAS session encoding does not match the encoding of your Hadoop connection. By default, Hadoop uses UTF-8 encoding. You can check the encoding of your SAS session using PROC OPTIONS:
proc options option=encoding;
run;
If your SAS session is not UTF-8 and you are running PC SAS, go to the start menu, find the SAS group, and look for "SAS 9.4 (Unicode Support)". Try running your code in that configuration. If you are not running a locally installed SAS, you may not have the ability to change the encoding. In that case, consider using a LIBNAME statement to connect to Hadoop with the SUB_CHAR= option, and then using the CONNECT USING statement in your SQL. Example pseudo-code provided here:
libname hdp hadoop user='my-user-name' pwd='my-password' server='hive.server.com'
sub_char=QUESTIONMARK;
proc SQL;
connect using hdp;
create table work.Temp as
SELECT *
FROM CONNECTION TO hdp
(SQL Passthrough code)
;
disconnect from hdp;
quit;
May the SAS be with you! Mark
... View more