ヤマムギ

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の仕様を決めるミーティングに参加しているようなそんな気持ちになる勉強会でした。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - study ,

ad

ad

  関連記事

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

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

「神戸Pythonの会 #2 meetup」に行ってきました

「神戸Pythonの会 #2 meetup」に行ってきました。 所感など Ato …

「IBM Cloud Community Summit 2018 フルマネージドデータベースというのは使えるのか?IBM Cloudでのデータ活用事例いろいろ」でIBm Cloudのデータベースサービスを聞かせていただいた

IBM Cloud Community Summit 2018におじゃましました …

Java SE 7 Silver受験直前 練習問題総確認 2015/2/14

カーリング中継見ながら、iTunesシャッフルでかけながら、練習問題。 集中って …

「kintone Café 大阪 Vol.8 〜夏の事例祭り!〜」に行ってきました

「kintone Café 大阪 Vol.8 〜夏の事例祭り!〜」に行ってきまし …

「SORACOM UG Online Handson #1 ~スマホで顔認証編~」に参加しました

久しぶりのSORACOM UG勉強会に参加しました。 SORACOM Air メ …

「JP_Stipes Osaka meetup vol.1」を運営させていただきました

Stripeのユーザーグループ、JP_Stripesの大阪ミートアップの運営をさ …

「JAWS-UG大阪 re:Invent re:Cap LT大会 サンバが始まったら強制終了」の起案記録

2025/1/16に「JAWS-UG大阪 re:Invent re:Cap LT …

JAWS SONIC 2020 & MIDNIGHT JAWS 2020 の深夜のパワポカラオケに挑戦しました

2020/9/12(土) 16:50 ~ 2020/9/13(日) 17:20( …

「実践AWSプログラミング in Osaka」に行ってきました

クラスメソッドさんの「実践AWSプログラミング in Osaka」に行ってきまし …