それが僕には楽しかったんです。

僕と MySQL と時々 MariaDB

2020-01-01から1年間の記事一覧

2020 年を振り返って

はじめに 今年の総括 仕事忙しかった インプット多かった あんまりアウトプットできなかった 責任を痛感する一年でもあった どこを目指していたんだ俺は。 その他・雑感 よく言われているやつ 知り合いあんまり増えなかった 会社の部活動なるものに参加した …

JIT コンパイラのコンパイラスレッド、コード最適化について

はじめに コンパイラのスレッド コードの最適化 インライン化 エスケープ分析 おわりに はじめに 今回は前回の内容に引き続きJIT コンパイラについての話。割と薄くなる予定。 コンパイラスレッドとか最適化とかそのあたり。 Java パフォーマンスには、 JVM …

JIT コンパイラのコードキャッシュ

はじめに コードキャッシュとそのチューニング コードキャッシュとは コードキャッシュの確認 コードキャッシュが圧迫された場合の挙動 単純なチューニング コンパイル時の基準 コンパイルプロセスを理解する 非最適化について entrant ではないコード zombi…

Java のJIT コンパイルについて

はじめに JIT コンパイルとは JIT コンパイルによる効果を確かめる JIT コンパイルの動作 クライアントコンパイルとサーバコンパイル トレードオフの存在 階層型コンパイル おわりに 参考文献 はじめに 今回は Java の JIT コンパイルについて。 Java パフォ…

CLion を使って MySQL のビルド&デバッグを行う

はじめに MySQL のビルド&デバッグをする ソースコードを持ってきて展開する CLion で CMake を実行する CMake Options Generation path ビルド デバッグ デバッグ設定の変更 ブレークポイントを設定 実行する mysql クライアントから接続する おわりに 余…

OSS にちょっと技術的な貢献するまでの流れ

はじめに やったこと プルリクエストを投げるまでの流れ 問題が見つかる 信頼できる情報をまとめておく リポジトリを fork する README を確認する。 Contributing Pull Requests Testing 過去にマージされた修正から傾向を掴む 問題箇所を修正する ブランチ…

MySQL 8.0.15 の前後で変わった文字列と DATE 型の比較について

はじめに 前提条件 謎現象を再現する 8.0.15 以下 8.0.16 以上 原理 文献 おわりに はじめに そういえば、最近この手の記事を書いてないし何ならインプットもしてない事を思い出し、今日雑にテストしてたらたまたまハマった面白い挙動があったのでまとめる。…

MySQL の docker コンテナを起動した時の warning, error を調べつくす

はじめに 問題のログ [Warning] [MY-011070] [Server] Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release. [Warning] …

Go 再入門 ~基本的なデータ構造周り~

はじめに Allocation with new() Allocation with make() Arrays Slices おわりに はじめに どうも、最近自分と同い年のプロダクトに触れて死ぬほど苦しんだけんつです。 ここ数ヶ月ずっと MySQL の検証や DBMS の勉強をしてきて思ったのだが、コード書いて…

Database Internals を読み解く ~Introduction and Overview~

はじめに 参考文献の構成 Introduction and Overview DBMS Architecture On-Memory vs Disk-Based DBMS Durability in On-memory DBMS Column Versus Row-Oriented DBMS Row Oriented Data Layout Column Oriented Data Layout Data file and Index File Dat…

MySQL 8.0.20 で導入された binlog transaction compression をハイパー雑に検証する

はじめに 前提環境と検証方法 リリースノートの文献 やってみた perfomance_shema をみてみる 余談 さいごに 2020/04/29 4:42 2020/04/29 11:43 2020/04/29 12:08 はじめに どうも、共通新人研修がビジネス職よりで割とコードとか書いている暇がなかったけん…

MySQL 8.0.19 と docker-compose 環境下で Single-Primary InnoDB Cluster を構築する

はじめに 環境 参考資料 InnoDB Cluster の構築 InnoDB Cluster とは 要件 MySQL Shell の導入 各サーバインスタンスの設定を修正する binlog_checksum enforce_gtid_consistency gtid_mode InnoDB Cluster の構築 オプションの類 *** ネットワーク周り grou…

Redis を Docker 環境でいい感じに使うためのメモ

はじめに 環境 データの永続化 ログ メモリ周り おわりに はじめに どうも、最近メイドインアビスが「ポップな絵柄で描かれたダークソウル」と聞いて見てみたら想像以上にダークソウルだったのではまりそうなけんつです。結構、Redis をいい感じに docker-co…

MySQL 8.0.18 の実装を読み解きながら簡単なストレージエンジンを自作する

はじめに MySQL をビルドする ストレージエンジンを自作する Example エンジンをベースにする handlerton の作成とインスタンス化 テーブルを作成する 余談・気になったところ テーブルを開く INSERT の実装 ha_tina の存在 テーブルスキャン store_lock の…

MySQL のレプリケーション実装

はじめに レプリケーション実装 実装の詳細 おわりに はじめに どうも、年明けおもしろ荘を見ながらブログを書いているけんつです。 前にMySQL 8 と docker-compose を使ってレプリケーションを構築する記事を書いたのだけど、そこではただバイナリログのポ…