title: How to load data into Redshift from a custom REST API
body: <p>I am new to AWS and please forgive me if this question is asked previously.</p>
  
  <p>I have a REST API which returns 2 parameters (name, email). I want to load this data into Redshift.</p>
  
  <p>I thought of making a Lambda function which starts every 2 minutes and call the REST API. The API might return max 3-4 records within this 2 minutes.</p>
  
  <p>So, under this situation is it okay to just do a insert operation or I have to still use COPY (using S3)? I am worried only about performance and error-free (robust) data insert.</p>
  
  <p>Also, the Lambda function will start asynchronously every 2 mins, so there might be a overlap of insert operation (but there won't be an overlap in data). </p>
  
  <p>At this situation and if I go with S3 option, I am worried the S3 file generated by previous Lambda invoke will be overwritten and a conflict occurs.</p>
  
  <p>Long story short, what is the best practise to insert fewer records into redshift?</p>
  
  <p>PS: I am okay with using other AWS components as well. I even looked into Firehose which is perfect for me but it can't load data into Private Subnet Redshift.</p>
  
  <p>Thanks all in advance</p>