概要
ScalaからS3へのアクセスする必要がありました。
しかしSDK的なものがいくつかあり、どれを使うか迷いました。
非常に主観的ですが、メモとして残します。
個人的に普通にS3にアクセスするなら、「seratch/AWScala」が良さそうだと思っています。
調べたツール
seratch/AWScala
- EC2, S3, IAMなどなどのサービスアクセスに利用できるSDK
- 定番っぽいし更新が続いているので、対象に入っているサービスならこれが良いのかなという気がする
- リンク
atlassian/aws-scala
- アトラシアン製というのが安心ポイント
- seratch/AWScalaとは対象サービスが異なる(個人的にはRDSが入っているのが目に入った)
- 使うと、関数型プログラミング的なコードになるらしい
- 更新も続いている
- リンク
awslabs/aws-scala-sdk
- awslabsはAWS公式(らしい)
- 最初はこれを使おうと思っていたが、2016年から更新がないのでやめた
- リンク
bizreach/aws-s3-scala
- S3専用のAPIで、基本的にはseratch/AWScalaのラッパー
- Local環境で動くS3クライアントのモック実装が付いているので、テストなどで便利という理解
- リンク
AWS SDK for Java
- Scala用SDKから使えないサービスはこれを使うことになるようだ
- リンク