SlideShare a Scribd company logo
MySQL/Ruby 終
  了のお知らせ
     とみたまさひろ

         Powered by Rabbit 0.6.1
自己紹介
✓ とみた まさひろ
✓ tommy@tmtm.org
✓ ID: tommy とか tmtm とか
  tmtms とか
✓ Ruby歴 十数年
✓ MySQL歴 十数年
                                   1/72
                         Powered by Rabbit 0.6.1
自己紹介




MySQL徹底入門

                      2/72
            Powered by Rabbit 0.6.1
自己紹介




MySQL徹底活用

                      3/72
            Powered by Rabbit 0.6.1
自己紹介




MySQL辞典

                    4/72
          Powered by Rabbit 0.6.1
自己紹介




Postfix辞典

                      5/72
            Powered by Rabbit 0.6.1
自己紹介


✓ Rubyの本
✓ なし


                        6/72
              Powered by Rabbit 0.6.1
今日は
MySQLの方
からきました
               7/72
     Powered by Rabbit 0.6.1
MySQLご
存知です
 よね?           8/72
     Powered by Rabbit 0.6.1
エンタープラ
イズな方は
嫌いらしい
               9/72
     Powered by Rabbit 0.6.1
有名なオー
 プンソース
RDBMSです
              10/72
      Powered by Rabbit 0.6.1
オラクル
社の orz...
               11/72
       Powered by Rabbit 0.6.1
元MySQL開
  発陣が
MySQLをfork
                12/72
        Powered by Rabbit 0.6.1
MariaDB,
 Drizzle
              13/72
      Powered by Rabbit 0.6.1
MySQL終
了のお知
 らせ?         14/72
     Powered by Rabbit 0.6.1
それは
さておき       15/72
   Powered by Rabbit 0.6.1
MySQL/
 Ruby        16/72
     Powered by Rabbit 0.6.1
MySQLを
Rubyから使う
ためのライブ
    ラリ        17/72
      Powered by Rabbit 0.6.1
MySQLのC
ライブラリ
のラッパー        18/72
     Powered by Rabbit 0.6.1
ここ




             19/72
     Powered by Rabbit 0.6.1
これがない
と Rails も
 動かない          20/72
       Powered by Rabbit 0.6.1
超重
要            21/72
     Powered by Rabbit 0.6.1
作者
俺            22/72
     Powered by Rabbit 0.6.1
MySQL/
Ruby終了
のお知らせ        23/72
     Powered by Rabbit 0.6.1
高度な技
術的な理
由により       24/72
   Powered by Rabbit 0.6.1
例1       25/72
 Powered by Rabbit 0.6.1
「Macでコン
パイルできな
いんだけど」
             26/72
     Powered by Rabbit 0.6.1
Mac持って
ません。く
 ださい         27/72
     Powered by Rabbit 0.6.1
例2       28/72
 Powered by Rabbit 0.6.1
「Windowsの
バイナリはど
 こにある
  の?」          29/72
       Powered by Rabbit 0.6.1
Windows使っ
てないので
 知りません
               30/72
       Powered by Rabbit 0.6.1
Windowsは
くれなくて
もいいです         31/72
      Powered by Rabbit 0.6.1
例3       32/72
 Powered by Rabbit 0.6.1
「Ruby1.9
で動かな
  い」           33/72
       Powered by Rabbit 0.6.1
ごめん
なさい       34/72
  Powered by Rabbit 0.6.1
今は動く…
はず……
たぶん…
            35/72
    Powered by Rabbit 0.6.1
Ruby/
MySQL       36/72
    Powered by Rabbit 0.6.1
ここ




             37/72
     Powered by Rabbit 0.6.1
比較




             38/72
     Powered by Rabbit 0.6.1
コンパイ
ル不要        39/72
   Powered by Rabbit 0.6.1
作者
俺            40/72
     Powered by Rabbit 0.6.1
「名前がや
やこしいん
 だけど」       41/72
    Powered by Rabbit 0.6.1
仕様で
 す        42/72
  Powered by Rabbit 0.6.1
今後は
  Ruby/
MySQL だけ
だから無問題        43/72
      Powered by Rabbit 0.6.1
問題       44/72
 Powered by Rabbit 0.6.1
MySQL
4.1 以降
 未対応         45/72
     Powered by Rabbit 0.6.1
Ruby/
MySQL 3.0
のお知らせ
               46/72
       Powered by Rabbit 0.6.1
インストール


GitHub
  gem install tmtm-ruby-mysql --source http://gems.github.com




                                                                 47/72
                                                         Powered by Rabbit 0.6.1
α版       48/72
 Powered by Rabbit 0.6.1
特徴       49/72
 Powered by Rabbit 0.6.1
互換な
 し        50/72
  Powered by Rabbit 0.6.1
型変換

# MySQL/Ruby, Ruby/MySQL < 3.0
mysql.query(
  "select 123,'abc'").fetch
  #=> ["123", "abc"]

# Ruby/MySQL 3.0
mysql.query(
  "select 123,'abc'").fetch
  #=> [123, "abc"]
                                      51/72
                              Powered by Rabbit 0.6.1
メソッド名

# MySQL/Ruby
Mysql::Result#num_rows

# Ruby/MySQL 3.0
Mysql::Result#size

                             52/72
                     Powered by Rabbit 0.6.1
速度       53/72
 Powered by Rabbit 0.6.1
計ってみた


# MySQL/Ruby
0.1700 0.1400 0.0500 0.0300

# Ruby/MySQL
1.1000 1.5700 1.0900 1.4100

                                 54/72
                         Powered by Rabbit 0.6.1
5倍~50
 倍遅い
  orz...       55/72
       Powered by Rabbit 0.6.1
Ruby だか
 らいいよ
   ね         56/72
     Powered by Rabbit 0.6.1
コンパイ
ル不要        57/72
   Powered by Rabbit 0.6.1
スレッドで
並列実行
 可能         58/72
    Powered by Rabbit 0.6.1
Ruby 1.9
M17N 対
  応            59/72
       Powered by Rabbit 0.6.1
MySQLと
の間で自
 動変換         60/72
     Powered by Rabbit 0.6.1
charset
 重要           61/72
      Powered by Rabbit 0.6.1
Rubyラ
イセンス        62/72
    Powered by Rabbit 0.6.1
GPLに縛
られない
            63/72
    Powered by Rabbit 0.6.1
MySQL/Ruby
✓ libmysqlclient ← GPL
✓ MySQL/Ruby ← GPL?
✓ アプリ ←???
✓ MySQLに対するFUD「ライセン
  スがややこしい」
                                 64/72
                         Powered by Rabbit 0.6.1
Ruby/MySQL

✓ Ruby/MySQL ← Rubyライセ
  ンス
✓ アプリ ← 自由
✓ シンプル

                            65/72
                    Powered by Rabbit 0.6.1
おまけ
          66/72
  Powered by Rabbit 0.6.1
プリペアドステートメント


mysql.prepare('select ?,?').execute(123,'abc')
    ↓こう書ける
mysql.query('select ?,?', 123, 'abc')




                                                  67/72
                                          Powered by Rabbit 0.6.1
Enumerable



Mysql::Result#each



                             68/72
                     Powered by Rabbit 0.6.1
予想され
る反応
           69/72
   Powered by Rabbit 0.6.1
「AR 使っ
てるから
関係ない」        70/72
     Powered by Rabbit 0.6.1
orz       71/72
  Powered by Rabbit 0.6.1
ご清聴あ
りがとうご
ざいました       72/72
    Powered by Rabbit 0.6.1

More Related Content

PDF
Ruby紹介
Masahiro Tomita
 
PDF
Ruby24
Masahiro Tomita
 
PDF
JavaとRubyのすてきな関係
garden_tree
 
PPTX
Introduction to GraalVM and Native Image
Koichi Sakata
 
PDF
Seasar ユーザだったプログラマが目指す OSS の世界展開 #seasarcon
Kazuhiro Sera
 
PDF
楽して JVM を学びたい #jjug
Yuji Kubota
 
PDF
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews, Inc.
 
PPT
play framework 勉強会 in 関西
Shinichi Kozake
 
Ruby紹介
Masahiro Tomita
 
JavaとRubyのすてきな関係
garden_tree
 
Introduction to GraalVM and Native Image
Koichi Sakata
 
Seasar ユーザだったプログラマが目指す OSS の世界展開 #seasarcon
Kazuhiro Sera
 
楽して JVM を学びたい #jjug
Yuji Kubota
 
SmartNews TechNight Vol5 : SmartNews AdServer 解体新書 / ポストモーテム
SmartNews, Inc.
 
play framework 勉強会 in 関西
Shinichi Kozake
 

What's hot (20)

PDF
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
 
PPTX
Play frameworkについて
Shinobu Okano
 
PPTX
java.lang.OutOfMemoryError #渋谷java
Yuji Kubota
 
PDF
JVMの中身を可視化してみた
Kengo Toda
 
PDF
The Essence of Using Ruby on Rails in Corporations
Koichiro Ohba
 
PDF
Servlet と Future の関わり方 #scala_ks
Kazuhiro Sera
 
PDF
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
Kazuhiro Sera
 
ODP
スレッドダンプの読み方
Funato Takashi
 
PPTX
20140518 JJUG MySQL Clsuter as NoSQL
Ryusuke Kajiyama
 
PDF
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
 
PDF
ng-japan 2015 TypeScript+AngularJS 1.3
Masahiro Wakame
 
PPTX
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Norito Agetsuma
 
PDF
JJUG CCC 2013 Fall「JVMコードリーディング入門-JVMのOS抽象化レイヤーについて-」
y torazuka
 
PDF
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Koichi Sasada
 
PDF
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
 
PDF
OpenJDK トラブルシューティング #javacasual
Yuji Kubota
 
PDF
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
Ryuji Yamashita
 
KEY
Clojureの発表など
Kikuta Go
 
PDF
コンパイラ指向ReVIEW
Masahiro Wakame
 
PDF
Ember コミュニティとわたし
Ryunosuke SATO
 
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
 
Play frameworkについて
Shinobu Okano
 
java.lang.OutOfMemoryError #渋谷java
Yuji Kubota
 
JVMの中身を可視化してみた
Kengo Toda
 
The Essence of Using Ruby on Rails in Corporations
Koichiro Ohba
 
Servlet と Future の関わり方 #scala_ks
Kazuhiro Sera
 
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
Kazuhiro Sera
 
スレッドダンプの読み方
Funato Takashi
 
20140518 JJUG MySQL Clsuter as NoSQL
Ryusuke Kajiyama
 
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
 
ng-japan 2015 TypeScript+AngularJS 1.3
Masahiro Wakame
 
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Norito Agetsuma
 
JJUG CCC 2013 Fall「JVMコードリーディング入門-JVMのOS抽象化レイヤーについて-」
y torazuka
 
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
Koichi Sasada
 
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
 
OpenJDK トラブルシューティング #javacasual
Yuji Kubota
 
PHP in Java -Quercus- によるレガシーマイグレーション実例 #jjug_ccc #ccc_r12
Ryuji Yamashita
 
Clojureの発表など
Kikuta Go
 
コンパイラ指向ReVIEW
Masahiro Wakame
 
Ember コミュニティとわたし
Ryunosuke SATO
 
Ad

Viewers also liked (7)

PPTX
Game community summit 2015
Takebuchi Eiichi
 
PDF
進捗と品質
Masahiro Tomita
 
PDF
MySQLの文字コード事情 2017版
Masahiro Tomita
 
PDF
PostgreSQL 9.5 新機能紹介
NTT DATA OSS Professional Services
 
PDF
とある診断員とSQLインジェクション
zaki4649
 
PDF
MySQLの文字コード事情
Masahiro Tomita
 
PDF
PostgreSQLアンチパターン
Soudai Sone
 
Game community summit 2015
Takebuchi Eiichi
 
進捗と品質
Masahiro Tomita
 
MySQLの文字コード事情 2017版
Masahiro Tomita
 
PostgreSQL 9.5 新機能紹介
NTT DATA OSS Professional Services
 
とある診断員とSQLインジェクション
zaki4649
 
MySQLの文字コード事情
Masahiro Tomita
 
PostgreSQLアンチパターン
Soudai Sone
 
Ad

Similar to MySQL/Ruby終了のお知らせ (9)

PDF
デブサミ2011 【17-E-7】 MySQLユーザ会のこれまでとこれから
Masahiro Tomita
 
PDF
初心者向けMySQLの始め方
Masahiro Tomita
 
PDF
OSSDB MySQL
Masahiro Tomita
 
PDF
Ruby開発が教えてくれたこと
yukihiro_matz
 
PDF
Nseg49 mysql
Masahiro Tomita
 
PDF
MySQL Fabricでぼっこぼこにされたはなし
yoku0825
 
PDF
MHA on AWS+Rails
Sugawara Genki
 
PDF
5分で作るMySQL Cluster環境
yoyamasaki
 
PDF
5分で作るMySQL Cluster環境
yoyamasaki
 
デブサミ2011 【17-E-7】 MySQLユーザ会のこれまでとこれから
Masahiro Tomita
 
初心者向けMySQLの始め方
Masahiro Tomita
 
OSSDB MySQL
Masahiro Tomita
 
Ruby開発が教えてくれたこと
yukihiro_matz
 
Nseg49 mysql
Masahiro Tomita
 
MySQL Fabricでぼっこぼこにされたはなし
yoku0825
 
MHA on AWS+Rails
Sugawara Genki
 
5分で作るMySQL Cluster環境
yoyamasaki
 
5分で作るMySQL Cluster環境
yoyamasaki
 

More from Masahiro Tomita (20)

PDF
お前の罪を数えろ
Masahiro Tomita
 
PDF
Ruby 2.5
Masahiro Tomita
 
PDF
本当はこわいMySQLプロトコル
Masahiro Tomita
 
PDF
ネットワークこわい
Masahiro Tomita
 
PDF
MySQLの文字コード事情 2017春版
Masahiro Tomita
 
PDF
MySQLを拡張する
Masahiro Tomita
 
PDF
「理論から学ぶデータベース実践入門」読書会スペシャル
Masahiro Tomita
 
PDF
MyNAができるまで
Masahiro Tomita
 
PDF
文字化け
Masahiro Tomita
 
PDF
Crystal
Masahiro Tomita
 
PDF
メールの暗号化
Masahiro Tomita
 
PDF
文字化け
Masahiro Tomita
 
PDF
進捗と品質
Masahiro Tomita
 
PDF
アジャイルジャパン長野サテライト
Masahiro Tomita
 
PDF
🍣=🍺
Masahiro Tomita
 
PDF
本当はこわいエンコーディングの話
Masahiro Tomita
 
PDF
Sequelのすすめ
Masahiro Tomita
 
PDF
MySQLのプロトコル解説
Masahiro Tomita
 
PDF
Dockerイメージを作る
Masahiro Tomita
 
お前の罪を数えろ
Masahiro Tomita
 
Ruby 2.5
Masahiro Tomita
 
本当はこわいMySQLプロトコル
Masahiro Tomita
 
ネットワークこわい
Masahiro Tomita
 
MySQLの文字コード事情 2017春版
Masahiro Tomita
 
MySQLを拡張する
Masahiro Tomita
 
「理論から学ぶデータベース実践入門」読書会スペシャル
Masahiro Tomita
 
MyNAができるまで
Masahiro Tomita
 
文字化け
Masahiro Tomita
 
メールの暗号化
Masahiro Tomita
 
文字化け
Masahiro Tomita
 
進捗と品質
Masahiro Tomita
 
アジャイルジャパン長野サテライト
Masahiro Tomita
 
🍣=🍺
Masahiro Tomita
 
本当はこわいエンコーディングの話
Masahiro Tomita
 
Sequelのすすめ
Masahiro Tomita
 
MySQLのプロトコル解説
Masahiro Tomita
 
Dockerイメージを作る
Masahiro Tomita
 

MySQL/Ruby終了のお知らせ