Hello,
We are migrating our SAS Environment from Solaris x86 to Linux x86 environment & need to migrate all existing SAS datasets to new environment.
I have used proc cport & cimport to do this. Is there a better way to do this? Also is there a way to validate if SAS dataset if optimized to current environment?
Thanks,
-Nithin.
Do you even need to do anything? Unless your Linux is on an IBM mainframe then SAS should be able to read them.
It should put out a message if it needs to resort to the CEDA engine to convert on the fly.
You should be able to determine the representation for a dataset useing the DATAREP field in the dictionary table TABLES.
Tom,
Yes, SAS datasets will work with CEDA. As there are few limitations & using CEDA consumes additional cpu overhead, we are planning to migrate these datasets into respective native format.
Not sure what the question is then.
Are you not able to distinguish between the migrated and non-migrated versions using the fields in either PROC CONTENTS output or the DICTIONARY tables?
Tom,
I think that Nithin misinterpreted your first comment. As I read it, you were saying
Do a simple copy of a SAS dataset to the new environment. Open it with SAS in the new space. If it uses CEDA, then he should convert the files with CPORT/CIMPORT. If not, all he needs to do is copy the files using *nix utilities.
I agree with Nithin that using CEDA for long-term production work might be problematic.
Doc
Another way of moving SAS data between different operating systems but maintaining "native" and optimal format is to use SAS/CONNECT and the UPLOAD/DOWNLOAD procedures. If this way is used then there is no need to CPORT/CIMPORT, even with SAS catalogs as SAS handles any translations internally. Of course you do need SAS/CONNECT licensed.
Another way is to use PROC COPY + XPORT engine.
But CPORT/CIMPORT is better. why don't you want it ?
Ksharp
Thanks for the suggestions. To clarify couple of items :
1) We are migrating SAS datasets between 2 environments(Solaris x64 to Linux x64), we need them to be in native format. Hence, CEDA is not used while accessing them.
2) CPORT/CIMPORT works well for this situation. However, we are planning to provide scripts to SAS users to convert their individual SAS datasets. I want this script to validate if the dataset is in native format & then convert using CPORT/CIMPORT if needed.
A approach is making a Linux x64 version dataset at local Solaris x64 computer, then transport it to your desired destination .
OUTREP= Data Set Option
Specifies the data representation for the output SAS data set.
Valid in:
OUTREP= Value Alias* Environment
ALPHA_TRU64 ALPHA_OSF Tru64 UNIX
ALPHA_VMS_32 ALPHA_VMS OpenVMS on Alpha
ALPHA_VMS_64 OpenVMS on Alpha
HP_IA64 HP_ITANIUM HP-UX on Itanium 64-bit platform
HP_UX_32 HP_UX HP-UX on 32-bit platform
HP_UX_64 HP-UX on 64-bit platform
INTEL_ABI ABI UNIX on Intel 32-bit platform
LINUX_32 LINUX Linux for Intel Architecture on 32-bit
platform
LINUX_IA64 Linux for Itanium-based system on
64-bit platform
LINUX_X86_64 LINUX on x64 64-bit platform
MIPS_ABI ABI UNIX on 32-bit platform
MVS_32 MVS z/OS on 32-bit platform
OS2 OS/2 on Intel 32-bit platform
RS_6000_AIX_32 RS_6000_AIX AIX UNIX on 32-bit RS/6000
RS_6000_AIX_64 AIX UNIX on 64-bit RS/6000
SOLARIS_32 SOLARIS Solaris on SPARC 32-bit platform
SOLARIS_64 Solaris on SPARC 64-bit platform
SOLARIS_X86_64 Solaris on x64 64-bit platform
VAX_VMS OpenVMS VAX
VMS_IA64 OpenVMS for HP Integrity servers
64-bit platform
WINDOWS_32 WINDOWS Microsoft Windows on 32-bit platform
WINDOWS_64 Microsoft Windows 64-bit Edition (for
both Itanium-based systems and x64)
Ksharp
Thanks Ksharp... But, can I validate input dataset if its already in Linux X64 format & then convert if necessary?
-Nithin.
Sure. Check it at dictionary table.
Notice "Data Representation Name" column contains the information you need.
data class; set sashelp.class;run; data class1(OUTREP=linux); set sashelp.class;run; proc sql; create table x as select * from dictionary.tables where libname='WORK'; quit;
Ksharp
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.