tombo2-progress’s diary

できるだけ毎日1時間を切り取ってここに晒す。誤字脱字気にしない。日本語が崩壊するのも気にしない。最終的にまとめて本ブログに書く

2018-07-01から1ヶ月間の記事一覧

引き続きpacketについて

昨日見つけたmysql-snifferかProxySQLあたりでパケットをどう解析しているか見れば良さそう。 golangでも実装している人がいる。 https://github.com/zorkian/mysql-sniffer ココらへん見るとcom-queryとしてクエリが取れてて、connection phaseとcommand ph…

引き続きpacketについて

int payload_length int sequence_id string payload [len=payload_length] packetの説明にある型にかんしてはここ https://dev.mysql.com/doc/internals/en/describing-packets.html sequence_idについてはhttps://dev.mysql.com/doc/internals/en/sequence…

MySQLのpacket その1

環境構築 centos環境にMySQL8.0.12用意した。 ソースからビルドしようとして結果失敗した。 途中で/var/lib/mariadb~~.logに書き込めないとか言われて、完全にクリーンなcentosにsource展開してたから、は??ってなったんだけど、そのとき眠すぎて詳細忘れ…

dd簡易測定

HDD整理。 windows機を作ったりcentos入れたSSD用意したりしていた。 windows機でmemory 8GB4だとどうもOSが落ちてしまったのだけど、8GB2にしたら全く問題なくなった。 何だったんだろう? centos機でMySQLのパフォーマンス測定をそろそろしたい。 SSDとNVM…

p109まで。第3正規形でも更新時異常起こるんだった。

続き

P98まで。 関数従属性は多値従属性の一種というのが本日のハイライト、各種証明は追うのが難しい割にここまで必用になることはなさそうという辛さ、、、

CLionでMySQLいれられないか

CLionでMySQLの実行コードリーディングしたいので、入れてみる。 githubからコードをimportしてプロジェクトを作成する。 CMake optionsに, -DDOWNLOAD_BOOST=1 -DWITH_BOOST=cmake を指定してビルド。 ビルドは通るけど、パスが通っていない関数、定数がち…

リレーショナル・データベース入門 続き

ここまでの復習をしつつP82まで読んだ。 情報無損失分解、分解したリレーションを自然結合しても元に戻るというのはわかるけど、前提なしに数式だけでかかれたら多分わからないので、困る。 ブログに書いた内容インフラ勉強会あたりで発表しておくと改めて整…

ProxySQL調査

概要 公式トップにある機能 Query caching Query Routing Supports failover Advanced configuration with 0 downtime Application layer proxy Cross platform Advanced topology support Firewall MariaDB MaxScale, HAProxy, Nginx, MySQL Routerとの比較…

続き3

用語の整理をしつつ用語に関する部分を書いた。 リレーショナルモデルとSQLの違いを書いて、リレーショナルモデルのメリットを書いたら終わり。 リレーショナルモデル入門に加えて、C.J.Dateのデータベース実践講義も読みつつ理解していくと相互に書いてない…

続き2

数式をtex記法で書き直す。リレーションに関する説明の追記。coddの論文かいつまむ。 ブログの進捗は30%くらいで残りの部分は書いているうちに構成が変わりそう。まずい。 基礎情報数学の読み始めてから2週間、リレーショナルモデルについてやり始めて10日弱…

続き

Coddがリレーショナルデータモデルを提案した最初の論文の"A relational model of data for large shared data banks"の最初の部分を読んでみた。 DatabaseのことをData banksと言っているのはさておき、結構平易な文章で書かれていて、最初は階層型データモ…

内容再検討

目次を元にどれくらいの内容をどの順序で書こうか迷っていたら、案外分量が少ないものになりそうな気がした。 リレーショナル・データベースの設計手法として正規化理論と第5正規化までの説明まで書いて1記事にまとめようか検討してた。 結局正規化の説明だ…

まとめ書いてる

正確に書こうとすると理解があやふやなのがよくわかる。 全然進んでない。やばい

C.J.Dateのデータベース実践講義かいつまんだ

ここに書くつもりだったけど、データベース実践入門も本ブログに書いているので、そっちに書くことにした。

リレーショナル・データベース入門 [第3版] その3

ここまでの内容を整理しつつp80まで読んだ。メインブログの本文としてメモを書きつつ読んでいて、そのまま文体をまとめてブログにするつもりなのでここには書かない。 第4章に突入して、正規化理論の話になってきたけど、これはリレーショナルモデルとはなに…

なにもわからない

python3のdictのソート ↓みたいな'文字列' => 'strからintに型変換した重複もある数値' という構造のdictをラムダ式利用してvalue側でソートして出力したときに、 部分的にしかソートされないみたいな現象に悩まされたんだけど、いざ再現しようとすると全然…

リレーショナル・データベース入門 [第3版] その2

ここまでの内容のまとめを作りつつp70まで読んだ。 リレーショナル代数表現の定義が結局何なのかわからない。 このあとの章でリレーショナル代数表現が出てくることがなさそうなので、もう少し読んでわからなかったら、演算の独立性の観点からリレーショナル…

リレーショナル・データベース入門 [第3版] その1

p50まで読んだ、リファレンスもしっかりしていて教科書的でとても良い、読みながらメモを取らなかったので感想だけ。

リレーショナルモデルについて調べる

基礎情報数学にあった、順序集合の応用としてリレーショナルモデルの話が出てきたので、気になって調べ始めた。 昨日書いた基礎情報数学で紹介されている参考文献は本屋でみたけど、どれもガッツリ数学から情報数学の基礎のレベルまでの説明だけで、リレーシ…

基礎情報数学4

2.3.3 順序関係が読み終わってようやくこの本の2章までが終わった。 順序関係の上界、下界、最大元、最小元、極大元、極小元、上限、下限あたりはHasse図も含めて ここがわかりやすい。 Transactional Information Systemsに戻る前に これで改めてTransactio…

基礎情報数学3

p65まで。 そもそも順序集合(全順序、半順序)とかがわからなくて読み始めたんだけど、情報数学の教科書に"関係"についての説明があることに気づいた。 特にp53, 例2.14 "n項関係に関する例"で以下のような説明が会った。 # 一部省略 「関係データベースの…

基礎情報数学読んでる2

1章の単語メモって2章56pあたりまで。 例2.16が理解できなくて詰んでる

基礎情報数学読んでる

引き続き2章を読んでる。 数式をmarkdownかつはてなブログのmarkdownで各の効率悪いので、やってたことを示すためにこの文章だけあげる

実験環境準備

情報数学復習 Transactional Information Systemsでtotal order, partial orderみたいな単語が出てきてよくわからん単語だなとか思って、調べたら全順序・半順序のことで、こりゃあかんという感じになった。 学部のときに買っていた基礎情報数学を引っ張り出…

fioはramp_time指定しないことでエラーっぽい出力はでなくなる

かれこれ1時間探し回ってしまったのだが、どうも解決策がわからない。 No I/O performed by libaio等の出力が出るのだが、libaio-devel等もいれたのになぜなのか(この行を書きながら思ったけど)これがそもそもErrorなのかwarningなのかわからない。 ramp_t…

fioでssdのベンチマークを計測してみる

fioでssdのIO速度を図ってみる github.com こちらを参考に設定ファイルを作って実験 github.com ここで書いているのはこの時点のコミットの結果 ssd sample · tom--bo/bench-settings@7574028 · GitHub デフォルトで使われるioengineのlibaioがないとおこら…

Transactional Information Systems読む chap2-1

※1: 訳すのが大変。言っていることはわかるけど単語レベル、文脈レベルで意訳を正確にするのはたいへんなので、わかりづらいと思ったら原文を自分で読んでください。 ※2: (?)がついている部分は(後述の断りがなく)説明不足と思われるか、僕が理解できなかっ…

Transactional Information Systems読む

chapter 1 トランザクションが何故大事か ネットワーク通信を介したサービスを中心にコンカレンシーが上がってきて、それでもデータの整合性を保ちたい データベースの技術として発展したけどシステムとしてトランザクション処理を考える必用がある アプリケ…