我们无法在 Windows AWS CLI 上执行任何命令。AWS配置如下后,几乎每个命令都会返回sts访问错误。
-- AWS Configure
aws_access_key_id=XXXXXXXX
anw_secreat_key_id=XXXXXXX
region=ap-northeast-1
output = json
-- command & error message
aws s3 ls
Could not connect to the endpoint URL : "https://sts.amazonaws.com/"
Run Code Online (Sandbox Code Playgroud)
如果你遇到了同样的问题,你能告诉我应该重新配置或添加什么,比如任何特殊的安全组等?
任何建议将不胜感激。
让我问有关 redshift sortkey 的其他问题。我们计划使用 WHERE 语句中经常使用的列来设置排序键。
到目前为止,我们系统的最佳组合似乎是:DISTSTYLE EVEN + COMPOUND SORTKEY + COMPRESSED Column(第一个 SortKey 列除外)
只是想知道对于我们的BI表来说,简单的SORTKEY和复合SORTKEY哪个更好,可以根据用户的分析进行多样化的查询。
例如,我们在多个查询的 WHERE 语句中根据频率设置复合排序键,如下所示。
COMPOUND SORTKEY
(
PURCHASE_DATE <-- set as first sort key since it's date column.
STORE_ID,
CUTOMER_ID,
PRODUCT_ID
)
Run Code Online (Sandbox Code Playgroud)
但有时在实际查询中只能查询“Product ID”,不能与其他列出的排序键一起查询,也不能与COMPOUND KEY顺序不同进行查询。
那么,请问“COMPOUND SORTKEY”可能没用,还是简单的SORT KEY更有效......?
如果您能告诉我您的想法和经历,我将不胜感激。
有一次我停止了实例并修改了其中一个 EBS 卷的大小。然后,该 EBS 停止在“使用中 - 优化 (60%)”状态。我想有时候优化可能需要很长时间,长达 24 小时。但我们需要尽快启动我们的 EC2 实例。
我只是想知道是否可以启动EC2实例,其中一个EBS处于优化状态尚未完成。该EBS不是根卷,但重要的卷包含数据库文件。
任何意见,将不胜感激。
我想将 csv 文件中的 \ 转义为 \\ 以上传到 Redshift。以下简单的 PowerShell 脚本可以按预期将 $TargetWord \ 替换为 $ReplaceWord \\ ,但使用 bom 导出 utf-8 有时会导致 Redshift 复制错误。
任何改进它的建议将不胜感激。先感谢您。
Param(
[string]$StrExpFile,
[string]$TargetWord,
[string]$ReplaceWord
)
# $(Get-Content "$StrExpFile").replace($TargetWord,$ReplaceWord) | Set-Content -Encoding UTF8 "$StrExpFile"
Run Code Online (Sandbox Code Playgroud) 让我问一些有关AWS Redshift上列压缩的问题。现在,我们正在验证可以使用适当的diststyle,sortkey和列压缩来提高性能。
如果我的理解是正确的,则列压缩可以帮助降低IO成本。我尝试了“分析压缩表名”。并且大多数Redshift建议对我们的列使用'zstd'或'lzo'作为压缩方法。
一般来说,请问设置为DISTKEY / SORTKEY的列也应该像其他列一样压缩吗?
我是Redshift的新手,任何建议都将不胜感激。
真诚的
我们想更换\到\\我们的主文件,它可以防止红移上传(更换一次,\\可以没有问题地上传,它会被上传单\,保持原来的客户数据).
我试图取代\以\\如下但是在PowerShell中获得了正则表达式错误:
Param(
[string]$TargetFileName
)
# replace words
$old='`\'
$new='`\`\'
# replace \ to \\ for Redshift upload
$file_contents=$(Get-Content "$TargetFileName") -replace $old,$new
$file_contents > $StrExpFile
Run Code Online (Sandbox Code Playgroud)
错误信息:
+ $file_contents=$(Get-Content "$TargetFileName") -replace $old,$new
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (`\:String) []?RuntimeException
+ FullyQualifiedErrorId : InvalidRegularExpression
Run Code Online (Sandbox Code Playgroud)
简单地做-replace '\','\\'也没有用.
我们想将它保存为相同的文件名,但文件大小可能很大,所以如果你有任何更好的想法,也会非常感激.