Entries from 2018-06-01 to 1 month

Athenaで元データのカラム数とテーブル定義が一致しない時どのような挙動になるか

概要 ある日のデータからカラムが追加されることになった。 その時、Athenaではどのようなデータが表示されることになるのだろうか テスト準備 csvファイルを2つ作成(Athenaに対応しているファイル形式なら何でもよい) まずは下記カラムのファイルをここで作…

AWS 認定ソリューションアーキテクトに合格するまで

AWS認定ソリューションアーキテクト – アソシエイト (2018 年 2 月リリース)を取った。 どんなことやったかとかを書いておく。 前提レベル エンジニア歴1年半 普段ちょこちょこAWSサービスに触るものの自分で環境構築することはほぼない 使ってたりちょこっ…

MySQLのEXPAINの見方

EXPLAINとは クエリオプティマイザがクエリをどのように実行するのかを解明する手段 どのインデックス使ってるのかなーとか確認する 実際に実行するとこんな感じになる mysql> EXPLAIN SELECT * FROM covering_test WHERE key1 = 1; +----+-------------+---…

アルゴリズムの計算量について

1年ちょい前に基本的なソートと探索は研修で実装したんだけど(written in Perl) その頃はなんだか分からないまま実装してた感あったので計算量もちゃんと意識やってみる それにあたって計算量の基本の確認 計算量の評価 計算量の評価は時間計算量と領域計算…

VPCのメインルートテーブルに関してすごい勘違いをしていた

背景 AWSソリューションアーキテクトの勉強も兼ねてVPCの勉強をしていて、どーしても分からないなぁとなっていた。 VPC自体にルートテーブルを設定して何に使うんだ?と。 サブネットに設定されてあるルートテーブルでええやん?と。 結論 VPCに設定したルート…

DNSとDNSレコードについて

AWSについて勉強していて、Route 53に差し掛かったところでそもそもDNSよく分かってないや、ってなったので簡単なまとめ。 Route 53独自のレコードについても触れる。 そもそもDNSサーバ 2種類あるから混同させちゃダメ DNSキャッシュサーバ PCなどから名前…

バイト列を受け取ったブラウザがDOMツリーをつくるまで

概要 ブラウザがページをレンダリングするまでにはいくつかのステップを経ている。 googleのConstructing the Object Modelを読んで、分からなかった単語などを調べながらまとめる。 CSSDOMのところは除いてとりあえずDOMツリーが作られるところまで。 バイ…

MySQLのデータ型の後にある括弧について(おまけ: charとvarchar)

整数型の場合 テーブルを作る 何文字まで入るのか、確認のためINSERTしていく mysql> CREATE TABLE tinyint_test ( `num` tinyint(1) NOT NULL ); mysql> INSERT INTO `tinyint_test` VALUES ( 1 ); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO…