2021-08-01から1ヶ月間の記事一覧

【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 との違い メモ:イ…

【Shell】シェル ~ 基本編・eval ~

■ サンプル シェルで、変数名に val1,val2, ... って番号が振ってあって その変数をいちいち参照したくないからって探してたら eval(イーバル)があったので、メモしておく 目次 【1】eval コマンド 【2】使用上の注意 【3】サンプル 例1:Hello world …

【SQL】SQLで変化(増加/変化なし/減少)について考える

SQL

■ はじめに SQLで変化(増加/変化なし/減少)について考える 目次 【1】ポイント 1)過去データと比較するために自己結合する 2)データ仕様上、歯抜けがあるかどうかを確認 【2】Oracle 11g 例1:年間売上の変化(増加/変化なし/減少) 例2:年間売上…

【PostgreSQL】文字列関数 ~ string_agg ~

■ はじめに 小ネタ。 RedshiftのLISTAGG 関数を調べている際に PostgreSQLのstring_agg が見つかったので メモっておく 目次 【1】string_agg 補足:Redshift / LISTAGG 【2】構文 【3】サンプル 例1:Hello world 【1】string_agg * グルーピングした…

【Shell】【PostgreSQL】シェルでSQL結果を受け取る ~ エラーハンドリング編 ~

■ はじめに https://dk521123.hatenablog.com/entry/2021/08/16/231459 の続き。 先日行ったシェルではエラーハンドリングまで考慮されていなかったので EMR上でStepごとにシェル実行した際に、そのStep内でエラーが発生しても、 途中でキャンセルにならずに…

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

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

【PostgreSQL】PostgreSQLのスキーマあれこれ

■ はじめに 恥ずかしながら、PostgreSQLのスキーマとDBが一緒なものだと 思っていた、、、 そんな自戒な意味を込めて、PostgreSQLのスキーマについて 学んでおく。 目次 【1】スキーマ (Schema) 【2】構文 【1】スキーマ (Schema) * 名前空間 を設定する…

【Git】Git ~ 改行コード自動変換 core.autocrlf ~

Git

■ はじめに https://dk521123.hatenablog.com/entry/2020/08/05/144724 の「【2】エラー「Terminated with errors Bootstrap failure」が表示」で シェルスクリプトの改行がCRLFだと、Amazon EMRがうまく動かなかったことがあった。 で、また、エラー表示は…

【Shell】【PostgreSQL】シェルでSQL結果を受け取る

■ はじめに Amazon EMR で シェル経由で Amazon Redshift に対して SQL を実行し、 そのシェルが実行結果を受け取り、 結果によって、エラーにするか / 正常終了にするか ってことを実装したい。 そこで、まずは、Amazon Redshift の元となっている PostgreS…

【PostgreSQL】PostgreSQLのインデックスあれこれ

■ はじめに PostgreSQL で インデックス (index) を使う必要が出てきたので メモっておく。 目次 【1】インデックス 【2】構文 【3】インデックスの種類 【1】インデックス * 以下を参照。 インデックス ~ 入門編 ~ https://dk521123.hatenablog.com/e…

【Shell】ファイルへの書き出し

■ はじめに 小ネタ。 ファイルの書き出しについて、意外と使うのでメモ。 Dockerなんかの簡単な設定ファイル作成にも便利。 目次 【1】ファイル出力 1)echo を使ったファイル出力 2)printf を使ったファイル出力 【2】使用上の注意 - printf 1)「%」…

【Shell】シェル ~ CSV / TSVファイルの読み込み ~

■ はじめに シェルで、ヘッダー付きのCSV / TSVファイルの読み込み その一部を列を配列として扱いたいので、調べてメモっておく。 目次 【1】CSVファイルを読み込み出力する 【2】ヘッダー(1行目)を除外して出力する 【3】TSVファイルを読み込む 【4】…

【Shell】シェル ~ 基本編 / 配列 ~

■ はじめに シェルの配列に関して、まとめておく。 目次 【0】シェルの配列種類 【1】配列 - リスト 1)定義方法 2)要素の追加 3)要素の削除 4)関数の引数・戻り値 5)配列のソート 【2】連想配列 - ディクショナリ 【0】シェルの配列種類 シェ…

【PostgreSQL】自動ID付与 ~ SERIAL / BIGSERIAL / SMALLSERIAL ~

■ はじめに MySQL でいう AUTO_INCREMENT 属性みたいに 自動的に ID を付与してくれるテーブルを作る必要ができたので 調べてメモる。 目次 【1】自動ID付与 【2】連番型「SERIAL / BIGSERIAL / SMALLSERIAL」 【3】サンプル 【4】おまけ:Amazon Redshi…

【Shell】シェル ~ 基本編・ループ while / for etc ~

■ はじめに https://dk521123.hatenablog.com/entry/2015/02/20/001600 より分冊。 シェルのループについて、メモっておく。 目次 【1】while 1)構文 【2】for 1)構文 2)サンプル 例1:規定回数ループする 例2:拡張子「.sql」のファイル一覧表示 …

【AWS】Route 53 ~ 基礎知識編 ~

AWS

■ はじめに Amazon Route 53 について、メモる。 目次 【1】Amazon Route 53 【2】機能 1)ドメイン名取得 2)DNS設定 3)DNS ヘルスチェック 【3】関連用語 1)Zone APEX 2)トラフィックルーティング 【1】Amazon Route 53 * 以下の機能を持つAWS…

【Linux】ネットワーク系コマンド ~ DNS編 ~

■ はじめに https://dk521123.hatenablog.com/entry/2016/07/27/214633 の続き。 今回は、DNS関連のネットワークコマンドについて扱う。 目次 【1】nslookup 【2】dig 【1】nslookup * DNSを利用してホスト名からIPアドレスに 変換またはその逆が出来るか…

【Hive】Hive / HiveQL ~ データ圧縮あれこれ ~

■ はじめに https://dk521123.hatenablog.com/entry/2020/11/03/000000 の続き。 Hive の テーブルデータ を GZIP にするなどを行ったので 知識を整理しておく 目次 【1】テーブルデータを圧縮する 1)サンプル 【2】ファイルフォーマットを指定する 1)…

【PostgreSQL】検索方法あれこれ

■ はじめに 小ネタ。 ILIKE とかを使ったので、記録しておく。 目次 【0】テストデータ 【1】ILIKE 【0】テストデータ CREATE TABLE IF NOT EXISTS "users" ( "user_id" INTEGER NOT NULL, "user_name" VARCHAR(50) NOT NULL, "created_at" TIMESTAMP NUL…

【Python】Python ~ 基本編 / 外部コマンド実行 ~

■ はじめに https://dk521123.hatenablog.com/entry/2021/07/30/000000 で扱った pigz を Python から 起動するような処理を見た。 今回は、Python から コマンド実行することについて、まとめてみた。 目次 【0】外部コマンド実行モジュールについて 【1…

【Shell】シェル ~ 文字列抽出あれこれ ~

■ はじめに なんだかんだで、シェルスクリプト(Bsh)を扱う機会があって その中で文字列抽出をちょこちょこのだが、すぐに忘れてしまう、、、 で、ブログにまとめておいたつもりだったが、 全然まとまっていなかったので、今回で整理する。 また、cut / rev…

【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 を取…

【PostgreSQL】psql コマンドでファイル実行した際に引数を渡すには

■ はじめに AWS Redshift を psql コマンドでファイル実行しようと思っていて その際に、Hive の変数(以下の関連記事を参照)のように渡したい。 https://dk521123.hatenablog.com/entry/2021/06/24/094254 その第一段階として、Redshiftの元となっている P…