DATA Step, Macro, Functions and more

Can we insert observations from multiple sources into a sas dataset same time

Accepted Solution Solved
Reply
Contributor
Posts: 40
Accepted Solution

Can we insert observations from multiple sources into a sas dataset same time

I have a  multiple macros those select record conditionally from database tables and insert output records into a sas datasets.

some times these macros run parallel and insert resulting records into a same dataset.

I am using proc sql  to insert records, but I am losing some of the records.

is there other way we can insert processed records into a dataset.


Accepted Solutions
Solution
‎10-09-2015 09:21 AM
Valued Guide
Posts: 2,177

Re: Can we insert observations from multiple sources into a sas dataset same time

Is SAS/SHARE available

it was designed to support such concurrent update

View solution in original post


All Replies
Solution
‎10-09-2015 09:21 AM
Valued Guide
Posts: 2,177

Re: Can we insert observations from multiple sources into a sas dataset same time

Is SAS/SHARE available

it was designed to support such concurrent update

Super User
Posts: 3,252

Re: Can we insert observations from multiple sources into a sas dataset same time

How long do your inserts take? There is an option FILELOCKWAIT you can use to get SAS to wait for a locked SAS dataset to free up so in effect the inserts happen sequentially.

http://support.sas.com/documentation/cdl/en/hostwin/67279/HTML/default/viewer.htm#n0fh4oaq31gvqkn1hl...

This option can be applied on a LIBNAME statement which you would need to use just prior to the SQL insert, then clear the LIBNAME immediately afterwards just to be safe.

Respected Advisor
Posts: 4,173

Re: Can we insert observations from multiple sources into a sas dataset same time

The ways I know of how to achieve or simulate concurrent write to SAS tables:

1. SAS/Share

2. Filelockwait

3. Each process writes to its own table but you have a view over these tables. You then can use the view for downstream processing.

....ideally: You use a database table instead which allows concurrent write (eg. a table in Oracle).

Valued Guide
Posts: 2,177

Re: Can we insert observations from multiple sources into a sas dataset same time

I think a VIEW is the way to go.

On great feature it provides is the USING clause to define a libref / connection with options like FILELOCKWAIT

🔒 This topic is solved and locked.

Need further help from the community? Please ask a new question.

Discussion stats
  • 4 replies
  • 261 views
  • 2 likes
  • 4 in conversation