2016年6月6日月曜日

MySQL Workbenchを使うとJSON型の編集が楽になる

中国地方DB勉強会 in 米子で梶山さんがデモでJSON型のcolumnを簡単に編集してたのでその話。



つまりはこの事。
超便利なので皆にも知って欲しいのでまとめます!

1 事前準備


まずJSON型を使うためにMySQL 5.7を用意します。
そして次にMySQL Workbenchをインストールします。
既にMySQL Workbenchを使ってる人への注意点として6.3.5以降を使ってください。
そしてデフォルトの対象が5.6になってるので5.7に変更します。



あとはtableを作ってデータを登録します。
今回は下記のようなtableを作ってます。

CREATE TABLE `demo_json` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `doc` json DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4;


テストデータは婚活と言えばオミカレがAPIあるのでそこのデータを利用しました。
(xmlなんでJSONに変換してから登録しました)

お見合いパーティーAPI


2 JSONの表示

さて入ったデータがこちらです。


当たり前ですがJSONが1行になっているのでこれを編集しようと思うと辛すぎます…
そこで今回のViewerの出番です!
まず編集したい行で右クリックします。
そこでOpen Value in Editorを選択してください。


するとなんということでしょう!
JSONのタブをクリックすると整形済みで表示されます!


更に下部のタブのTreeをクリックするとフィルタリングも出来ます。



3 JSONの編集

でも本題は編集が辛いことです。
見るだけならCUIでjqなど使うことでも対応できます。
任意の要素を選択してF2を押してください(ダブルクリックでもOK)


なんと要素ごとに編集できます!!


保存後、再度確認するとちゃんと変更されています。


これでちょっとした編集の時にSQLを書く辛さは不要です!
またデータの中身が見たいのに整形用のワンライナー書いたりしなくても大丈夫です!
非常に便利なのでJSON型を使う人は是非合わせてMySQL Workbenchを使ってみてください。

やっぱこういうこと教えて貰えるから中国地方DB勉強会は最高なんだよな(ステマ

2016年5月29日日曜日

関西DB勉強会に行ってきた話

行ってきました大阪。
題名にもなってる関西DB勉強会が超絶面白かったので皆様にもおすそ分けブログです。

第3回 関西DB勉強会


内容は各DB


  • OracleDB
  • DB2
  • Firebird
  • MySQL
  • PostgreSQL


のエンジニアが集まってみんなとディスカッションをすると言う会です。
1時間くらいのパネルディスカッションと言うのは経験があるのですがそれをフリースタイルで半日!!
最初はどうなることやら…と思ってたのですがこれがホント面白かったです。
非常にレベルが高くてアーキテクチャの話、商用DBとOSSの使い分けなど非常に勉強になりました。
その中でもSQL Serverの上位モデルは列指向DBの利用をすると超高速と聞いて驚きました!!
その理由は下記のような感じでココらへんがOSから作ってる会社の強みだなと。



列指向DB自体の話もとても詳しく聞けたのでこれだけでも大阪来てよかったなと思いました。
ただOracleのOracle Exadataなんかもそうだけど「超すごいものはお金がかかる」ってこともわかりましたw
商用DBはお金を出せばパラレルクエリなんかもそうですけどホント高機能ですよね。
会場にも話題になりましたが例えばOracle Standard Editionなんかは十分PostgreSQLで代用できます。
しかしハイエンドのモデルについてはやはり機能面で大きな差があります。
だからこそ「未開の新機能より商用DBの既存機能」を如何に何から実装していくのか?がPostgreSQLの今後で楽しみなところだなぁと思います。

とホントに楽しかった関西DBなのですがPostgreSQLで質問があった事の解答例を下記にまとめておきます。

1. PostgreSQLアーキテクチャについて

永安さんがまとめてくれてるのでこのサイトを見ましょう。

・PostgreSQLアーキテクチャ入門
postgresqlinternals

あとこの本もオススメです。



2. backupについて

佐藤さんの資料が素晴らしいです。



あとPostgreSQLカンファレンスの時のYou Tubeもあります。





3. レプリケーションについて

ざっくりとした概要を把握するには手前味噌ですがこちらをどうぞ。



4. もっとPostgreSQL知りたい!

Slackっていうチャットサービスにチャンネルを用意してます。
そこに参加して質問を投げてくれれば色んな人が回答してくれます!
また最新情報の発信もしてるので安心!
しかも日本語!!←ここ重要ですよね。
ということで下記のリンクから早速どうぞ。

PostgreSQL部屋に入るSlackin


ということで楽しい一日でした。
機会があればまたこんな感じのディスカッションの場に参加したいですね!!



ということで関西DB勉強会のスタッフ、参加者の皆様ありがとうございました。

2016年5月23日月曜日

削除フラグを語るには30分は短すぎたPHPカンファレンス福岡2016な話

PHPカンファレンス福岡2016に参加してきました。
控えめに行っても最高でしたね!
登壇者のスライドについては纏めてくれてる人がいるのでこちらをどうぞ。

もう確認した?『PHPカンファレンス福岡2016』全スライドまとめ #phpconfuk


そして30分のLTと言われた僕の資料はこちらです。
リンク先の資料が北海道の時なので本物はこっちです( ー`дー´)キリッ

で実行計画の話はこっちを見てもらうと幸せになると思います。


でもって削除フラグの話はこちら。



福岡でマテビュー良いよ!!って言ってましたがアンチパターンで「マテビューの功罪」で辛い記憶を語ってます。

てなわけでRDBをPHPerにより良い理解をしてもらう旅も半分折り返しました。
内容としてちゃんと伝わったかは不安なんですけどこれを機会にどんどんDB界にみんなも遊びに来てもらえたら良いなと思います。

でPHPカンファレンス福岡について
飯もうまいし会場も広いしでカンファレンスとしても最高だったし旅行としても最高でした。
北海道の時に初めてお会いした人たちが当たり前のように福岡にも居てみんなほんとPHP好きなんだなと感じましたねw
皆様にはフレンドリーにしていただき、ぼっちでホテルで涙流しながら缶ビールを飲むことなく楽しいお酒も飲めました。
福岡、来年と言わず今年中にもう一回行きたい勢いなんで誰かDBの話するんで呼んでくださいw

というわけで次は大阪ですね。
CfPもまだ募集中なので今からでもみなさん間に合いますよ!!

PHPカンファレンス関西


次は皆さんと大阪で会える事を楽しみにしています!!

2016年5月13日金曜日

第14回 中国地方DB勉強会 in 福山で実行計画の話をしてきた #ChugokuDB

4月の勉強会の報告を5月にするのは色々バタバタしてたからです!!
ということで大盛況でした第14回のまとめがこちらです。
あと前回の山口でも似たような話したのですが実行計画の話をしてきました。
一番細かくまとまった資料なので実行計画叩いた事ない人は是非見てみてください。




あとOracleからPostgreSQLへの移行が大きなテーマとして行いました。
質疑応答も盛り上がり、かなり面白かったです。
ライセンス値上げなどで移行を検討中の方は是非、喜田さんの資料を見てみてください。

■登壇資料など
中国地方DB勉強会のポータルサイトにまとめました。

※今回は動画はありません


中国地方DB勉強会


■メーリングリスト
次回の告知についてはDoorKeeperを使います。
興味がある方はチェックしてみてください。

DoorKeeper

■twitterのまとめ
Twitterについては@noborusさんがまとめてくれています。

Twitterのまとめ

キャンセル待ちが出るくらい大人気でした。
やっぱOracleからの移行って大きなテーマで集客力あるんですね。

そして次回の予定も決まってます。

第15回 中国地方DB勉強会 in 米子

■概要
日時: 2016年06月04日(土)
会場:米子コンベンションセンター 1F 情報プラザ 鳥取県米子市末広町294

申込はこちら
第15回 中国地方DB勉強会 in 米子

今回はOracleの梶山さんが来てなんと2セッションもしてくれます!!
まだまだ進化しているMySQL5.7の話が聞けるはず。
もしかしたら◯y◯◯◯8の話も!?

なお、懇親会は17:30~19:30で考えています。
交流含めて是非参加をご検討していただけたらと思います。

第13回 中国地方DB勉強会 in 山口の資料が揃ったのでまとめてみた #ChugokuDB

2月の勉強会の報告を5月にするのは資料が今月出揃ったからです!!
ということで大盛況でした第13回のまとめがこちらです。
是非末並さんの資料を皆様には見ていただきたいですね!!

■登壇資料など
中国地方DB勉強会のポータルサイトにまとめました。

※今回は動画もあります


中国地方DB勉強会



■メーリングリスト
次回の告知についてはDoorKeeperを使います。
興味がある方はチェックしてみてください。

DoorKeeper

■twitterのまとめ
Twitterについては@Uemmra3さんがまとめてくれています。

Twitterのまとめ


さらになんと当日の様子が山口新聞で掲載されました!!!
少しずつ少しずつ、中国地方DB勉強会が認知されてきたなぁと感じてます。
もっと色んな人を巻き込んで楽しく面白いコミュニティに育っていきたいですね。

そして次回の予定も決まってます。

第15回 中国地方DB勉強会 in 米子

■概要
日時: 2016年06月04日(土)
会場:米子コンベンションセンター 1F 情報プラザ 鳥取県米子市末広町294

申込はこちら
第15回 中国地方DB勉強会 in 米子

今回はOracleの梶山さんが来てなんと2セッションもしてくれます!!
まだまだ進化しているMySQL5.7の話が聞けるはず。
もしかしたら◯y◯◯◯8の話も!?

なお、懇親会は17:30~19:30で考えています。
交流含めて是非参加をご検討していただけたらと思います。

2016年4月18日月曜日

PHPerに知ってほしいRDBの事について話した - PHPカンファレンス北海道 2016

4/16に開催されたPHPカンファレンス北海道 2016に遊びに行ってきました。

#phpcondo2016 まとめ


初めてのPHPカンファレンスで緊張もしましたが色々と刺激的ですごく楽しい一日でした!!
その中で30分のセッションをやらせていただきました。
その時の資料がこちらです。



30分のセッションに対し140枚以上というなかなかハードな感じでした。
駆け足になったので聴衆の人には優しくなかっなぁとも思いつつ、伝えたい事は伝えれたかなと思ってます。
あと懇親会で聞かれた質問の回答も載せときます。

質問:PostgreSQLに対するMySQLのメリットってなんですか?

最新版同士で比べた時のメリットは僕は兎にも角にもSSDと相性が良い事だと思います。
金の弾丸で殴った時の費用対効果が凄くいい。
クラウドなら例えばRDSとかSSDだしスケールアップで有る一定のところまですぐ早くなります。
オンプレならFusion-ioを使えばそれこそ数十倍と言う速度が手に入る可能性もかなり高いです。
PostgreSQLはdisk-ioがヘビーなケースは苦手なのでMySQLはSSDの相性の良さと相まってそんなケースではMySQLかNOSQLになると思います。
この辺はLinkBenchでPostgreSQLをベンチマーク取った時の話が凄く面白いので興味がある人は見てみてください。


MyNA・JPUG 合同勉強会

※このまとめの「MySQLメインの人がPostgreSQLのベンチマークをしてみた話」です。
他の話も面白いので興味があればぜひ。


あと商用ライセンスを買った時に使えるOracleのサポートメンバーが誰か?っての想像できる事も大きなメリットです。
あの漢らしい人とかに1台30万くらいでSQLレベルからサポートしてもらえる。
これって普通に凄いことですよね。

質問:ORM使ってるとMySQLで何も困らないんですけど?

仰るとおりでございます。
ORMのオブジェクトをRDBで上手く表現(テーブル設計)してる時はORMめっちゃ便利です。
その場合ってMySQLと相性良いと思いますしMySQLで困らないです。
強いて言えばINDEXの設計がちょっとむずかしいかもなぁってくらい。
MySQLからPostgreSQLに行くメリットよりデメリットが勝る場合も多々あるので既存でMySQLで問題ないならそのままで良いです。
ただ新規案件の時とかはPostgreSQLを新たに採用するメリットが結構あるので検討していただければと思います。


といった感じで次は5/21にPHPカンファレンス福岡 2016です!
北海道のネタをベースにまたPHPerの皆様に知ってほしいことをお伝えしようと思います。
INDEXの話は評判が良かったのでそのままに他の部分をチューニングしようと思います。
ということでPHPカンファレンス北海道 2016、本当に最高でした!!




おまけ

2016年4月9日土曜日

今から直近3ヶ月くらいの勉強会予定

そーだいなる予定計画表です。

4/10 中国地方DB勉強会 in 福山(登壇)
4/16 PHPカンファレンス北海道(登壇)
4/27 岡山Python勉強会(登壇)
5/14 オープンセミナー2016@岡山(参加)
5/21 PHPカンファレンス福岡(登壇)
5/28 関西DB勉強会(登壇)
6/04 中国地方DB勉強会 in 米子(登壇?)
6/18 JPUG総会&PostgreSQLセミナー(参加)

しかも5/23と5/24は東京出張があるっていう。
6/11はアイネットバーベキューがあるっていう。
正直そーだいくん、ちょっと予定詰め込み過ぎたかなって後悔してます。
勉強会や新橋会のお誘いの際のご参考にどうぞ。