我正在开发一个java程序,并希望直接从ec2 将数据加载到redshift表。我知道s3是一个存储位置。关于ec2我只知道ec2实例就像虚拟机一样。我现在正在从s3加载数据。现在我想知道如何在没有s3 的帮助下从ec2加载数据。
请帮助我不熟悉这个
答案 0 :(得分:0)
可以这样做。由于您的问题太广泛,我只能提供Redshift文档中的相关链接:
答案 1 :(得分:0)
没有s3的帮助,您无法从ec2复制。参见:https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-source.html
您将必须从ec2连接到redshift并执行INSERT查询。
答案 2 :(得分:0)
另一种方法(尽管不是更好)是从SQL中将值作为文字插入。 b / c并非更好,这是一种效率极低的数据传输方法,但对于较小的数据有效负载而言,效果很好。
Insert into <table> values
('A', 1, 9),
('B', 2, 8),
('C', 3, 7);
同样,这不是传输适量数据的好方法。 SQL字符长度限制也为64K个字符,但是如果您对此提出质疑,则将其用于太多数据。将大量数据移至Redshift的最佳方法是从S3复制。