【问题标题】:AWS data pipeline, run Unload of redshift from bash shell script and save to S3AWS 数据管道,从 bash shell 脚本运行卸载 redshift 并保存到 S3
【发布时间】:2019-06-17 16:12:05
【问题描述】:

我喜欢运行 unload 以将数据从 Redshift 获取到 s3,我可以使用数据管道的 bash shell 脚本运行它吗?如果是,shell脚本中的命令是什么?

以下代码是否在 shell 脚本中工作?

unload ('select * from ......') 
to 's3://mybucket/venue_pipe_' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole';

【问题讨论】:

  • 另一个问题是关于加载的,这个是关于卸载的。我无权决定它们是否足够相似,可以合并为重复项。
  • 这个比旧的稍微好一点,但提出了一个问题“你试过了吗?发生了什么?” unloadto 都不是单独的有效 shell 命令,尽管它们当然可能在某些环境中可用。即使这样,未加引号的括号在语法上也是无效的。所以简短而甜蜜的答案可能是“不”。
  • 谢谢。所以这意味着在Shell脚本中无法识别“卸载”命令。这就是我想知道的。

标签: bash shell amazon-s3 amazon-redshift pipeline


【解决方案1】:

您可以从命令行或 shell 脚本执行此操作,但您需要像 psql 这样的客户端(在 Ubuntu 上:sudo apt-get install -y postgresql-client)。

命令如下:

PGPASSWORD='YOURPASS' psql -h your.redshift.end.point.com -U youruser -d yourdb -p 5439 -c "...unload query here..."

【讨论】:

  • 我需要从 AWS 管道运行它,我认为“卸载”在 shell 中工作。我是 AWS 和 redshift 的新手。
猜你喜欢
  • 1970-01-01
  • 2020-02-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-13
  • 2014-03-12
  • 1970-01-01
相关资源
最近更新 更多