inefficient use of separate INSERT
with Amazon Redshift. It is designed as a Data Warehouse , providing very fast SQL queries. This is not a transaction database where data is often updated and inserted.
Best practice is to load lots (or micropackets ) using the COPY
. Kinesis Firehose uses this method. This is much more efficient since multiple nodes are used to load data simultaneously.
If you're serious about real-time data processing, then Amazon Redshift might not be the best database. Consider using a traditional SQL database (such as provided by Amazon RDS), a NoSQL database (such as Amazon DynamoDB), or even Elasticsearch. You should use Redshift only if your focus is on reporting large amounts of data, usually involving many compounds in a table.
As mentioned in Amazon Redshift Best Practices to download data :
If the COPY command is not an option and you need SQL inserts, use multi-line inserts whenever possible. Data compression is inefficient when you add data on only one row or several rows at a time.
source share