AWS

【AWS】Amazon Redshift ~ 文字列結合 ~

■ はじめに https://dk521123.hatenablog.com/entry/2021/09/08/202004 の続き。 Redshiftは、PostgreSQL互換と言われているが ちょこちょこ異なっていること見つかる今日この頃。 今回は、文字列結合について扱い、 PostgreSQLとの差異についても扱う。 目…

【AWS】Amazon Redshift ~ キャスト ~

■ はじめに 小ネタ。 Amazon Redshiftを使っていて、 キャストの仕方が色々あるようなので、纏めてみた。 特に、「2)「::」 を使用したキャスト」が知らなかったので、 自戒の意味を込めて、記しておく。 目次 【0】公式サイト 【1】Amazon Redshiftでの…

【AWS】Amazon Redshift ~ VACUUM ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2021/09/04/172021 において 「3)インターリーブソートキー(Interleaved SortKey)」 の「デメリット」より ~~~~~~~~~~~ * インターリーブソートキーの性能を維持するためには 定期的に VACUUM REINDEX…

【トラブル】【AWS】Hiveテーブルデータ を Redshift に移行時のCOPYコマンドエラー

■ はじめに https://dk521123.hatenablog.com/entry/2021/09/01/200818 において、Hiveテーブルデータ を Redshift に移行する際に COPYコマンドにおいていくつかトラブルが発生したので まとめておく。 目次 【1】COPYコマンド時にエラー「Forbidden: HTTP…

【AWS】Hiveテーブルデータ を Redshift に移行するには

■ はじめに Hiveテーブルデータ を Redshift に移行することをやったので ざっくり方針などをメモ。 目次 【1】Hiveテーブルデータ を Redshift に移行するには 1)移行手順案 2)トラブルについて 【2】サンプル 1)HiveのExternal TableでS3上に保存…

【AWS】Amazon Redshift ~ 自動採番 / IDENTITY ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2021/08/29/000000 で、PostgreSQL において 自動採番IDしてくれる「SERIAL / BIGSERIAL / SMALLSERIAL」(※)は、 Redshiftでは対応していないと記載した。 そこで、Redshift は、自動採番をどう対応する…

【トラブル】【AWS】AWS Glue Job で DB timeout が発生する

AWS

■ はじめに AWS Glueで DB にアクセスした時にタイムアウトした際の トラブルについて、まとめる 目次 【1】概要 【2】動作環境 【3】エラー内容 【4】原因 【5】解決案 【1】概要 AWS Glue Job の 開始して、DB(今回は、Redshift)にアクセスしたら …

【AWS】Amazon Redshift ~ 他DB・サービスとの違い ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2020/02/22/002139 が長くなったので分冊。 また、インデックスがサポートされていなかったという基本的なことも 分からなかった自分への戒め的にメモしておく。 目次 【1】一般的なDB との違い メモ:イ…

【トラブル】【AWS】Amazon EMR の クローン 時の トラブル

■ はじめに https://dk521123.hatenablog.com/entry/2020/08/05/144724 にEMRのトラブルを纏めていたが、 また違うトラブルが発生したので、メモしておく トラブルってゆーかー、そういう設定してるから起こったことだが。 目次 【1】EMR起動後にエラー「Eb…

【AWS】 Amazon Route 53

AWS

■ はじめに Amazon Route 53 について、メモる。 目次 【1】Amazon Route 53 【2】機能 1)ドメイン名取得 2)DNS設定 3)DNS ヘルスチェック 【1】Amazon Route 53 * Amazonの提供するDNSサービス => DNS (Domain Name System) の詳細は、以下の関連…

【AWS】AWS Glue ~ AWS CLI ~

AWS

■ はじめに EMR から Glue workflow を実行することになったので、 AWS Glue に関する AWS CLI について、メモっておく。 目次 【0】API仕様 【1】ヘルプを表示するには 【2】AWS CLI 使用例 1)Glue Workflow を実行するには 2)Glue Connection を取…

【AWS】Amazon Redshift ~ COPY コマンド ~

AWS

■ はじめに Redshift で、S3上のデータを COPYコマンドを使って ロードしているコードがあったので、メモしておく。 なお、COPYコマンドの使用例は、以下の関連記事を参照のこと。 Hiveテーブルデータ を Redshift に移行するには https://dk521123.hatenabl…

【AWS】AWS Glue ~ トリガ / EventBridgeイベント ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2019/11/29/221207 の続き。 AWS Glue の 開始トリガで、新しいタイプ「EventBridgeイベント」が 2021/07/15頃 にリリースされたらしいので、メモしておく。 https://aws.amazon.com/jp/about-aws/whats-n…

【AWS】Amazon EMR ~ EMR内部 から SES で Email を送る ~

AWS

■ はじめに Amazon EMR から Python / AWS SES により Email を送ることを考える。 なお、SESについては、以下の関連記事を参照のこと。 Amazon SES ~ Emailサービス ~ https://dk521123.hatenablog.com/entry/2017/04/28/234103 目次 【1】SES で Email …

【トラブル】pip install wheelファイル で Read time out が発生する

■ はじめに Amazon EMR(外部接続不可) に wheelファイルを pip install しようとした時に エラー「Read time out」が発生したので、その際の出来事をメモする 目次 【1】概要 【2】原因 補足:問題の切り分けに使ったコマンド「--no-deps」 【3】解決案…

【トラブル】【AWS】EMR / DBアクセス に関するトラブルシューティング

■ はじめに Amazon EMR 上で エラー「Error encountered near token 'TOK_TMP_FILE'」や エラー「NoRouteToHostException: No route to host」が発生した。 その際の調査方法や解決案などを記しておく。 目次 【1】発生現象 / エラー内容 1)Create table …

【AWS】AWS Glue ~ Boto3 / DB・テーブル操作編 ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2021/06/09/113458 の続き。 今回は、Glue で使用するテーブル情報取得および作成について扱う。 (本当は、テーブル操作までにするつもりだったが) 「【2】テーブル作成」の際に「EntityNotFoundExcept…

【AWS】AWS Glue ~ Boto3 / パーティション操作編 ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2021/05/28/142153 のAWS Management Console画面において、 パーティションを個別で削除しようと思ったが、 画面からは削除できなかったため、 代わりに、Boto3のAPIを使って、削除した。 (ちなみに、パ…

【AWS】Amazon EventBridge

AWS

■ はじめに Amazon EventBridge に関して扱うかもしれないので どんなサービスなのかを調べてみた。 目次 【1】EventBridge とは? 【2】EventBridge の 利点 【3】Amazon Cloud Watch Eventsとの違い 【4】AWS サービスからのイベント 【1】EventBridg…

【AWS】Amazon SNS ~ 通知サービス ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2017/04/28/234103 の続き。 AWS EMRで失敗した際のイベント通知方法を調べていたら、 以下のサイトが見つかり、そこに 「Amazon Simple Notification Service (Amazon SNS)」と あったので、どんなサービ…

【AWS】AWS Glue ~ クローリング結果の確認画面 ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2019/12/01/003455 で行ったクローラでの動作後に AWS Glue で [Databases]-[Tables] に遷移して クローリング結果を確認する際に表示項目などに不明点があった。 そこで、今回は、そのページおよびその派…

【トラブル】AWS Glue上で saveAsTextFile() を使ったら エラー「DirectOutputCommitter not found」が発生する

■ はじめに AWS Glue 上で RDD.saveAsTextFile() を使ったら エラー「DirectOutputCommitter not found」が発生したので その際のトラブルシュートをメモする。 目次 【1】エラー内容 【2】発生したコード(一部) 【3】解決案 案1:DirectFileOutputCom…

【トラブル】AWS Glue上で エラー「Dynamic partition strict mode requires ...」が発生する

■ はじめに https://dk521123.hatenablog.com/entry/2021/05/15/130604 を調査している際に、以下「参考サイト」で 『GlueのSparkバージョンが2.3.0になれば』って記載されていた。 で、以下のAWS Glue の公式サイト https://docs.aws.amazon.com/ja_jp/glue…

【AWS】Glue Job から パーティションを更新することを考える

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2021/05/14/095125 の続き。 Glue Job からパーティション更新を行うことを考える。 目次 ■ Job からパーティション更新実装案 ■ 案1)GlueContext クラスを駆使して実装する 方法 1:write_dynamic_fram…

【AWS】Glue からクローリングして外部テーブルを作成する

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2019/12/01/003455 の続き。 今回は、Glue で作成したファイルを外部テーブルにする際に 得た知識・ノウハウをメモしておく。 軽く書くつもりが、結構なボリュームになってしまった、、、 目次 【1】Glue…

【AWS】Glue から DataCatalogテーブル に対して Spark SQLを実行する

AWS

■ はじめに Glue から DataCatalogテーブル に対して Spark SQLを実行した際に、いくつか注意点があるので メモしておく 目次 【1】使用上の注意 1)Glue Job で Glue DataCatalog を有効にする 2)「select * from [DB].[Table] ...」ではなく「use [DB]…

【トラブル】【AWS】AWS Glue のトラブル ~ job編 [4] ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2019/10/25/232155 https://dk521123.hatenablog.com/entry/2020/10/12/152659 https://dk521123.hatenablog.com/entry/2021/02/16/145848 の続き。 今回も、AWS Glue の job で発生したトラブルについて…

【AWS】AWS Data Wrangler ~ 入門編 ~

AWS

■ はじめに AWS Data Wrangler ってのがあるようなので調べてみた。 目次 【1】AWS Data Wrangler 0)公式ドキュメント 1)AWS Data Wranglerとは? 【2】環境設定 1)pip / conda 2)AWS Glue 3)その他AWSサービス 【1】AWS Data Wrangler 0)公…

【AWS】AWS Glue ~ CloudWatch Metrics ~

AWS

■ はじめに AWS Glue の CloudWatch Metrics(メトリクス) について、 徐々にメモする。 目次 【1】公式ドキュメント 【2】関連用語 1)ステージ(Stages) 2)タスク(Tasks) 3)ドライバ(Driver) 4)エグゼキュタ(Executors) 【3】メトリクスの…

【AWS】AWS Glue ~ Boto3 / 基本編 ~

AWS

■ はじめに https://dk521123.hatenablog.com/entry/2019/10/14/000000 の続き。長くなったので、分冊。 今回は、boto3 API を使って、 PythonでGlueのコンポーネント(Workflow/Job/Trigger ※)を デプロイする簡単なサンプルの実装および 環境周りなどの注…