ヤマムギ

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


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - study ,

ad

ad

  関連記事

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (4)Step Functionsで複数のLambdaを実行制御する

作る部分 Step Functionsでこれまで作ったLambdaの実行制御をし …

Java SE 7 Gold対策勉強をしながらメモ 2015/9/1

さて、9/26の試験を目指して久しぶりに試験勉強を始めます。 今月は非常に忙しい …

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

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

「SendGrid Night in Osaka #2」でLTさせていただきました

SendGrid Night in Osaka #2でLTをしてきました。 会場 …

JAWS FESTA 東海道 2016に行ってきました

JAWS FESTA 2016に行ってきました。 今回はボランティアスタッフ参加 …

第5回 八子クラウド座談会in関西 「関西まるっとIoTでやったらんかい♬」に行ってきました

SIMの契約変更のはざまで通信がほぼ使えず。 そんな状態なので、Twitterで …

AWS認定のバッジ管理が新しくなったみたいです

ふと、メールが届きました。 なんでしょうね。 いきなりリンクを踏むのもあれなんで …

「JAWS-UG朝会 #17」に参加しました

朝7:30からのJAWS-UG朝会。 コース実施の日は配信スタジオへの移動時間な …

Developers Summit 2018「 IoTサービスを始める際に必要なこととは」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

Alexaスキル開発でデザイン・スプリントのすすめ(Alexa Day 2019でのブログ)

ランチタイムセッションの一本目はISAOさん。 以下は、気になったことのメモとか …