タグ

ブックマーク / atsuizo.hatenadiary.jp (8)

  • MySQL 8.0.14で全件 COUNT(*)でも加速しない!?- 「innodb_parallel_read_threads」検証その3 - なからなLife

    MySQL 8.0.14でSELECT COUNT(*)が加速する!- 「innodb_parallel_read_threads」検証その1 - なからなLife MySQL 8.0.14でSELECT COUNT(*)が加速しない!- 「innodb_parallel_read_threads」検証その2 - なからなLife の続きです。 まさかの、ネガティブ情報が続いてしまった。。。 パーティショニングの話をするつもりだったのですが いろいろなパーティションを試しながら計測しつつ、そもそもパーティション前の数字ももう一度計測しておこう、と思ったら、今まで加速してたパターンで加速しないケースにぶつかってしまいました。 パラレル化の恩恵が出た(昨日までの)状態;PKのINT AUTO_INCREMENT欠番がそこそこある+ALTER TABLE ENGINE INNODBしてない。 パ

    MySQL 8.0.14で全件 COUNT(*)でも加速しない!?- 「innodb_parallel_read_threads」検証その3 - なからなLife
    mapk0y
    mapk0y 2019/01/30
  • MySQL Workbenchで、Spatial Functionの結果を図で表示する - なからなLife

    「できるらしい」という話だけで、誰も触ってなかった? clubmysql.connpass.com に参加して、坂井さんからGISにまつわるお話をたっぷり伺ってきました。 で、坂井さんも、「MySQL WorkbenchがGIS対応してるらしいって聞いたことがあるけど、触ったこと無い」とおっしゃってまして。 で、ツイートしたところ、こうなって、 MySQL Workbenchにそんな機能があるとかないとか! (試したことはないですが6.3からあった記憶です)— yoku0825 (@yoku0825) August 31, 2018 こうなりました。 ありました!AsTextしないでバイナリのまま返ってくるようにST_関数を実行したら、Resultの表示方法選択に「Spatial Viewer」が出ました!— atsuizo (@atsuizo) September 1, 2018 こんな

    MySQL Workbenchで、Spatial Functionの結果を図で表示する - なからなLife
    mapk0y
    mapk0y 2018/09/02
  • SELECT文をタイムアウト強制終了させる「MAX_EXECUTION_TIME」使ってる? - なからなLife

    この記事はMySQL Casual Advent Calendar 2017 - Qiitaの9日目のエントリとなります。 実行が長引いたSELECT文を強制終了させるヤーツ MySQL5.6まで、正常に処理が進んでいて遅いSELECTをタイムアウトさせるシステム変数はありませんでした。 正常に処理が進んでいない時のパラメータだと lock_wait_timeout:メタデータロック取得待ち innodb_lock_wait_timeout:レコードロック取得待ち がありました。 正常に処理が進んでいるけど、厳密には「処理中」ではないときに効くパラメータだと net_read_timeout:クライアントからサーバに送り込んだデータの読み込み時間 net_write_timeout:サーバからクライアントへのデータの書き戻し時間 がありました。 他にも、アイドルタイムアウト系で inter

    SELECT文をタイムアウト強制終了させる「MAX_EXECUTION_TIME」使ってる? - なからなLife
    mapk0y
    mapk0y 2018/02/20
  • MySQLのGLOBAL_STATUSとGLOBAL_VARIABLES - なからなLife

    今更MySQL5.7を扱うにあたって MySQL5.6とMySQL5.7のパラメータ差分をあらためて見直してたら、「show_compatibility_56」という、プロダクトのアーキ移行期間にありがちな「いかにも」な名前のパラメータがありまして。 これは何? 「SHOW [GLOBAL] STATUS」や「SHOW [GLOBAL] VARIABLES」という、とてもお世話になるコマンドがあり、その実、テーブルに格納されている値を表示していたわけで、テーブル*1があることから、SELECT文を使うことでSHOWコマンドよりもより柔軟な条件式などを使って参照ができたわけです。 そんなテーブルたち、MySQL5.6まではInformation_Schemaにあったのが、MySQL 5.7からはPerformance_schemaに移動するぞ、ってドキュメントに書いてあります。 その説明のた

    MySQLのGLOBAL_STATUSとGLOBAL_VARIABLES - なからなLife
    mapk0y
    mapk0y 2017/11/22
  • MySQLのChar型のデータサイズについて小ネタ - なからなLife

    MySQL Casual Advent Calendar 2016 - Qiita の 18日目です。 がんばった。もう小ネタしか出てこない。 MySQLのchar型宣言時の数字は「データサイズ」ではなくて、「文字数」 っていうのは、ワリと有名。 Oracleからやってくると戸惑うところではあるけど、ワリとすぐに慣れるよね。 NCHAR使ってた人ならば、そんなに違和感ないだろうし。 MySQLのchar型で消費するストレージは、必ずしも文字コードベース×文字数「ではない」 char(10)な列を宣言した時、latin1だから1Byte×10、SJISだから2Byte×10、utf8だから3Byte×10、utf8mb4だから4byte×10、と、「かならずしもなるわけではない」のです。 「かならずしも」がポイント。 話をInnoDBに絞ります こちとらMySQL歴やっと1年、デフォルトがI

    MySQLのChar型のデータサイズについて小ネタ - なからなLife
    mapk0y
    mapk0y 2016/12/19
  • JOIN ON で絞り込み条件を入れるのと、JOIN ONの後WHERE句で絞り込み条件を入れるのとでは、結果が違う件 - なからなLife

    MySQL Casual Advent Calendar 2016 - Qiita 12日目の記事です。 まさかの3回目。もうムリ。。。 JOIN ON句で結合条件ではなく絞込条件を書くことができることを、知らなかったのです。 具体的な名称がわからない&検索にもヒットしにくいので、勝手に名前をつけました。 「JOINに直値」 わかりにくいと思うので、サンプルSQL書きます。 SELECT tbl_a.col1,tbl_b.col1 FROM tbl_a INNER JOIN tbl_b ON tbl_a.col1 = tbl_b.col1 AND tbl_a.col2 = 0; JOINでは一般的に「表A JOIN 表B... ON 表A.列 = 表B.列」と書いて表同士を結合するための条件を書きますが、ここに、一方の表の絞り込み条件を書けるんです。 SQLの教科書的な書籍ではまず見かけま

    JOIN ON で絞り込み条件を入れるのと、JOIN ONの後WHERE句で絞り込み条件を入れるのとでは、結果が違う件 - なからなLife
    mapk0y
    mapk0y 2016/12/14
  • SQLを繰り返し実行したら段階的に応答速度が上がった話 - なからなLife

    MySQL Casual Advent Calendar 2016 - Qiitaの6日目の記事です。 AdventCalendar自体初参加でドキドキ、してたら、成り行きで2日連続。 コレ用のきれいなエビデンス取れるような環境要していなかったので、普段より荒っぽいですが、Casualな感じで失礼します。 大きなテーブルを繰り返しSELECTしてたら、挙動が変わったんですよ。 バッファに載っているなら載っているで早いだろうし、載っていいなら最初ガッツリ遅くて、次からグイっと速くなるだろうと思っていたんですよ。 バッファに載りきらないなら、何回やっても遅いだろうと思っていたんですよ。 で、ちょいと計測的なことをやってた関係で、同じSQLを何度か叩いて平均、中央を見ようと思っていたんです。 そしたら、 45.71秒、44.90秒、24.44秒、13.32秒、13.12秒・・・ と、段階的に応答

    SQLを繰り返し実行したら段階的に応答速度が上がった話 - なからなLife
    mapk0y
    mapk0y 2016/12/07
  • 無線LANは、素人は手を出さない方がいい - 中小事業所のオフィスインフラを考える - なからなLife

    今やオフィスも家庭も無線LANが当たり前になってきて、兼任情シスだろうがなんだろうが無線の面倒まで見なくてはいけないです。 そして、あまりにも便利なので利用者のニーズが高く、ちょっと不安定だとクレームも声高になりがちです。利用者自身で解消できることもあるのにー、みたいなイライラもあります。 実際トラブルに見舞われると、無線は目に見えない分、対処がしづらいです。 そんな無線LANが、今回のテーマとなります。 勉強なしに無線LANの世話をするのはキツイのです 適当に買ってきた機材をつないで、割と簡単にネットにつながってしまう製品も多いのですが、この勢いで設置すると早晩破綻します。 勉強する時間も気力もないなら、それを素直に認めて業者に任せましょう。 自宅で無線LANを運用していて、SSIDとパスワードと暗号化のところを理解してきちんと設定が出来ているのであれば、アクセスポイント1台まではなんと

    無線LANは、素人は手を出さない方がいい - 中小事業所のオフィスインフラを考える - なからなLife
  • 1