ヤマムギ

growing hard days.

*

MySQL勉強会 in 大阪(第10回)に行ってきました

      2017/04/18


MySQL勉強会 in 大阪(第10回)に行ってきました。

オプティマイザー、GIS、キャラクタセットなどの開発を管理しているMySQLの開発チームマネージャーのManyi Luさんが来日してお話してくれるという貴重な貴重な勉強会でした。

MySQL 8.0での文字コード、コレーション関連の話

開発中の次のメジャーバージョンの8.0

SELECT….. FOR UPDATE SKIP LOCKED

ロックされている行を飛ばしてアップデートのためにロックされていない行をロックして、リザルトとして返す

SELECT….. FOR UPDATE NOWAIT

ロックされている行が対象にあると待たずにエラーを返す

NOWAIT も SKIP LOCKEDも付けない従来のSELECT….. FOR UPDATEはロックが終わるまで待つ

Common Table

with句でサブクエリを宣言しておいて、クエリで再利用することが出来る
再帰クエリなどで有効に使える。
読みやすくなりそう。

WITH RECURSIVE

Invisible Index

一時的にOptimizerからインデックスを見せなくして、インデックスがない状態を試すことが出来る

Descending Index

降順インデックスが作れる

JSON Aggregation

5.7からJSONドキュメントをそのまま格納出来る
JSONを扱うための関数がいくつか追加された
JSON_OBJECTAGG 複数のJSONドキュメントを1つにまとめるなど

Hint

人間の方がOptimizerより賢い場合に使う

Optimizer Trace

Optimizerがどう判断しているかがトレース出来る

Unicode 9.0 対応

デフォルトはutf8mb4

Window関数

分析系の処理で役に立つ

ロードマップ

  • Window関数
  • JSON TABLE関数
  • improved statics : histogram
  • improved prepared statement/cache query plan
  • Optimization for language specfic collations
    日本語の文字照合順の性能の改良

Japanese Collation

時間も力もかけている
CLDR Sorting rule : ひらがながカタカナより先

UNICODE のweightを使ってソートしているのでハとパが同じだったが8.0で解消される

utf8mb4_ja_0900_as_cs_ks
utf8mb4_ja_0900_as_cs

全角カナと半角カナは同じ文字としてみなす
全角数字と半角数字も同じ文字としてみなす

VSS コードが同じなので識別できない(保存はされる?)
SQLServer , DB2では実装されているがONにすると遅くなる
邉は異体字が17種類ある

WSS コードが違うので識別できるが逆に同じとして扱えない

外字は外字空間にアプリケーション側でバイナリでぶっこめばいい
この制御はアプリケーション側でやるべき

バグ報告はしたほうがいい

  • 機能を使っていることが分かる
  • 使い方が分かる
  • ユニコード標準ではひらがなとカタカナが識別出来なかったがユーザーの声で識別出来るべきになった

Emoji Modifiers

@t_motookaさん

感想

日本語対応については時間も力もかけているというだけあってその話にすごく熱が入ってました。
漢字の扱いはどうするべきか、とかカナは全角と半角で識別するべきか、とか、参加者に聞いてもらって、MySQLの仕様を決めるミーティングに参加しているようなそんな気持ちになる勉強会でした。

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - study ,

ad

ad

  関連記事

「JP_Stripes (Stripe ユーザーグループ) Tokyo Vol. 6 — Stripeの使いドコロを知る」に行ってきました

「JP_Stripes (Stripe ユーザーグループ) Tokyo Vol. …

Alexa Day 2018にサポーターの中の人として(初)参加しました

2018/2/11に神戸三ノ宮のスペースアルファ三宮で開催されたAlexa Da …

「JAWS-UG名古屋 re:Inventに行ったつもりのLT大会&忘年会」でLTしてきました

大阪から東京へ自転車で向かう初日に名古屋でJAWS-UGでLT大会に参加しようと …

Alexa Day 2018で「Alexa and Machine Learning on AWS」を聞きました

Photo by 金春さん 20180211 alexa day 2018 Al …

「 MonotaRO Tech Talk #1」に行ってきました

モノタロウさんの「MonotaRO Tech Talk」に行ってきました。 ビー …

「SORACOM & myThingsを使ったハンズオンセミナー in 大阪」に行ってきました

SORACOM & myThingsを使ったハンズオンセミナー in 大阪に行っ …

docomo雑談APIのAPIキーを発行する

docomo雑談 APIのキー取得の方法です。 (2017年8月13日時点の情報 …

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (1)LambdaからSlackへ通知する1

作る部分 SlackのWebURLを確認する Slackでチームを作成してbot …

Java SE 7 Silver対策勉強をしながらメモ 2015/2/11

練習問題4日目。 とりあえずひと通り終了。 317問中288問正解、90.85% …

TwilioJP-UG大阪 第二回 勉強会「Report SIGNAL2016」に行ってきました

TwilioJP-UG大阪 第二回 勉強会「Report SIGNAL2016」 …