2019-01-01から1年間の記事一覧
事象 KMS CMK でデフォルト暗号化しているS3バケットにクロスアカウントのS3バケット間コピーでマルチパートアップロードが失敗するがマルチパートでない場合は成功する。AWS CLI (aws s3 cp/sync など)はデフォルトで 8MB 以上だとマルチパートアップロー…
Systems Manager のセッションマネージャについてちょっと調べたメモ。 sh-4.2$ sudo su - Last login: Wed Dec 25 04:26:13 UTC 2019 on pts/0 [root@ip-172-**-*-97 ~]# cat /var/log/secure Dec 22 06:09:01 ip-172-**-*-97 sshd[20477]: Accepted public…
カウントする df.count() スキーマを表示する Spark DataframeのSample Code集 - Qiita print df.printSchema() DynamicFrame Dataframe 変換 from awsglue.dynamicframe import DynamicFrame # DynamicFrame -> Spark DataFrame df = DynamicFrame.toDF(<DynamicFrame>) #</dynamicframe>…
https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/tutorial-tuning-tables-create-test-data.html の lineorder テーブルのデータを増幅する PySpark スクリプト for Glue ジョブ。実行状況は Spark History UI から確認する(AWS マネジメントコンソ…
事象 PySpark で DataFrame にリテラルで列を追加しようとすると "col should be Column" と怒られる。 コード import sys from awsglue.transforms import * from awsglue.utils import getResolvedOptions from pyspark.context import SparkContext from …
JPOUG Advent Calendar 2019 の23日目のエントリーです。22日目は新久保 浩二さんのCOMMITについて少し考えてみた(1) でした。JPOUG Advent Calendar に参加するのも7回目になりました(皆勤賞)。Oracle Database などの商用DBや PostgreSQL、MySQL など RDBM…
Redshift の Tutorial: Tuning Table Design の Star Schema Benchmark (SSB) のサンプルデータを増幅した。 lineorder に lo_yyyy カラムを追加し、1001年〜2000年までの1,000倍に増幅し、24.8GB を 24.8TB に増幅した。 Athena で以下のテーブルを作成する…
when graphing CPU as stacked area chart, which parts add up to total ?guestirqnicestealStacking System and Users and probably wait are clear, but is nice part of user? Looks like guest is part of nice. Is irq part of sys? @OracleSK@oradiag…
Presto の JVM の起動オプションを指定したい場合は /etc/presto/conf/jvm.config で設定して、Presto を再起動すればよい。 /etc/presto/conf/jvm.config を編集する。 $ vi /etc/presto/conf/jvm.config -verbose:class -server -Xmx214026810294 -XX:+Use…
iostat の avgrq-sz(average request size)の単位はセクタ数かKB。iostat のバージョンによって異なるので、使う環境で man で確認すべし。 iostat の出力 $ iostat -dx 2 3 Linux 4.14.146-93.123.amzn1.x86_64 (ip-172-31-10-8) 12/18/19 _x86_64_ (32 C…
1テーブルData permissionsで権限を付与すると、データベースやテーブルがGlueやAthenaで表示される。 grant したテーブルのみリストに表示される。 特定カラムのみ grant すると Glue や Athena では権限のあるカラムだけが定義もデータも表示される。 Athe…
事象 Lake Formation で Data lake locations に指定したS3バケットのデータを Glue でクロールすると AccessDeniedException で失敗する。 [3abc7df1-8157-4d0f-9ae0-1ff50dee0de6] ERROR : Insufficient Lake Formation permission(s) on gz_sales (Databa…
データベース、OS、パフォーマンスを勉強したい人におすすめの入門編の書籍・資料(一部入門編でないものも含んでいます)。絵で見てわかるOS/ストレージ/ネットワーク 新装版作者:木村 達也,西田 光志,鳥嶋 一孝,田中 彰人,小田 圭二出版社/メーカー: 翔泳…
Apache Arrow東京ミートアップ2019 - connpass に参加してきた。 カラムナの会のメンバーとしては要チェックな Apache Arrow。圧縮有無は Parquet との大きな違い。圧縮するとIO量は減るけどCPUでのオーバヘッドが増えるので、IOレイテンシとのトレードオフ…
gmail にログイン G-Suiteアカウントを作成する 参考 Amazon Web Services cloud application - G Suite Admin Help G Suite アカウントを用いた AWS へのシングルサインオン | AWS Startup ブログ
HDFS の Datanode の Flame Graph sun.nio.ch.FileChannelImpl:::transferTo から sendfile システムコールが呼ばれている。 一番左のスタックをドリルダウンしたもの。 Presto Server の Flame Graph 一番左のスタックをドリルダウンしたもの、com.facebook…
Spark Meetup Tokyo #2 (Spark+AI Summit EU 2019) - connpass に参加してきた。今度は Spark について、どうでもいことに Dive deep して話してみるのも面白そう。 Spark+AI Summit Europe 2019 セッションハイライト by 萩原 悠二/Yuji Hagiwara and 酒井 …
RDS PostgreSQL で log_connections=1、log_disconnections=1 に設定して、接続・切断ログを記録し、CloudWatch Logs にエクスポートして確認したメモ。 設定する パラメータグループを作成する(パラメータグループファミリー: postgres11)。 log_connecti…
S3 で特定のプリフィックス以下のオブジェクトの過去バージョンを削除する。以下はバケット test-bucket の test/ 以下のオブジェクトの過去バージョンを削除するケース。UTC 0:00 になると削除される。 lifecycle.json を作成する { "Rules": [ { "Status":…
バージョニングを有効化している S3 バケットでオブジェクトの過去バージョンを一括削除する手順。 任意の S3 バケットの過去バージョンを確認する。 % aws s3api list-object-versions --bucket test-bucket|jq -r '.Versions[]|select(.IsLatest==false)|@…
データの中身に改行を含む CSV を Athena でクエリすると正しく扱えなかったが、Glue ジョブで CSV を Parquet に変換すると改行を含むデータを扱うことができた。おそらく OpenCSVSerDe は改行に対応していないが、Parquet SerDe は改行に対応しているから…
S3 に 1MB のオブジェクトを1億個作成する手順(実際にはやらない)。 s3-cp-100m.sh #!/bin/bash date dd if=/dev/urandom of=1mb.dat bs=1m count=1 aws s3 cp 1mb.dat s3://az-cp-src/ date seq -w 1 100000000|xargs -t -P512 -I{} aws s3 cp s3://az-cp…
IAMユーザー/ロールに対して、特定のホストゾーンと 特定のホストゾーンとトラフィックポリシーのみ編集できるIAMポリシー { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPublicHostedZonePermissions", "Effect": "Allow", "Action": [ "rout…
PostgreSQL のオプティマイザ統計情報を確認する pg_stat_user_tables n_live_tup: 行数 n_dead_tup: 不要な(ガベージとなっている)行数 last_analyze: ANALYZE された日時 aurora-postgres107 awsuser 13:44 => select * from pg_stat_user_tables; relid |…
util.inspect を使って、console.log(util.inspect(,false,null)) とするとオブジェクトの中身を CloudWatch Logs に出力できる。 'use strict'; const AWS = require('aws-sdk'); const util = require('util'); // util モジュールを読み込む exports.hand…
DynamoDB Streams + AWS Lambda Triggers で連携すると Item のデータは event オブジェクトで渡されることを確認した。 Lambda (node.js) のコード 'use strict'; const AWS = require('aws-sdk'); const util = require('util'); // util モジュールを読み…
aws/dynamodb のキーIDを確認 $ aws kms list-aliases|jq -r '.Aliases[]|select(.AliasName=="alias/aws/dynamodb")' { "AliasArn": "arn:aws:kms:ap-northeast-1:123456780123:alias/aws/dynamodb", "AliasName": "alias/aws/dynamodb", "TargetKeyId": "9…
イベントサブスクリプション RDS のスナップショット作成はイベントサブスクリプションで通知することができる。 カテゴリ RDS イベント ID 説明 作成 RDS-EVENT-0042 手動 DB スナップショットが作成されました。 Amazon RDS イベント通知の使用 - Amazon R…
S3バケットを作成する バケット名: exp-cloudwatchlogs バケットポリシー { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logs.ap-northeast-1.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "…
なるほどーと思ったのでメモ。ちゃむれおさん(c)。 # S3の暗号化方式 クロスアカウントアクセス VPCEポリシーによる制御 1 SSE-S3 (AES-256) ○ X 2 SSE-KMS AWS/S3 ☓ X 3 SSE-KMS AWS/Custom ○ ○ VPCエンドポイントポリシー { "Version": "2008-10-17", "Sta…