今日は大阪のデータベースコミュニティSQLWORLDという勉強会に参加してきました。今回はSQL serverだけでなくOracle、MySQL、Firebirdなど色々なDBの内容でしした。
今までとは趣向が違ってモバイル開発のお話やデータベースも半分はオープンソース系のお話だったので理解できるのか、内心引き気味での参加でしたが普段聞くことのできない話が多くてとても新鮮した。
普段聞くことのないお話だったのでざっくりと簡単にまとめておこうと思います。
一番手
◆モバイルアプリ開発 BaasとParse
Baasとはbackend as a serviceの略でモバイルアプリケーションのAPIをクラウドで
提供してくれるものです。有名なところでfacebookが買収したParseがあります。
今まではモバイルアプリのデータストアや接続、ユーザー管理やソーシャル連携などを開発していたものが提供してくれるのでバックエンドを開発していた方のお仕事が。。。
工数減って素晴らしくも今までバックエンドを開発していた方々は大変かも。
デモでやってたアプリなかなか面白かったな(あえてアイディアは書かず)
普段モバイル開発の話を聞く機会がないのでとても新鮮でした。
次に
◆SQL server をPowershellで管理してみる
SMO(SQL server Management Object)。Powershellを使って権限がどう付与されているかとか、ファイルの状態がどうだとかロールがどうだとか色々とできることがありますが、現時点では基本SQLとかSSMSでのGUIで十分足りるかも。イメージとしてはたくさんのDBを管理するのに運用系のスクリプトを作っておいて使うとか。他に何か使う手があるのかな。Powershellはアプリケーション層より下で活用するようなイメージがある。OSとか仮想環境とか。
◆SQL Server バックアップ
GUI(SQL server management studio)が操作も簡単でクエリのサンプル作ってくれたり色々とやってくれていいですね。手軽にバックアップのメンテナンスが組める。
バックアップ計画は要件しだい。何分前のデータまで保障したらいいのか、データストレージはどのくらいあるのか等々。
◆Firebird(少し前のオープンソース三大データベースの一つ)
日本ではどうもなじみがあまりないが実は某でも使われていて世界的にみると結構頑張っています。特にBRICS各国で人気。シンプルでDBAが不要、何より軽い。マルチプラットフォームで動く。Accessでは足りないけどSQLserver まではという中小では使える。
1000ユーザー、DBサイズ50GB位までが多いようです。
SQL標準に沿っているので正しいSQLを覚える上でもいいかも。正しく書かないとはじかれます。
にしても検証であったSQLITE、数値フィールドに漢字が登録できるというのは知らなった。nonだとなんでも入るんですね。仕様だそうです。
停電が多い(インフラが整っていない)国ではやっている。ファイルベースなのでその辺が強いのかも。
質問はMLで
http://tech.firebird.gr.jp/firebird/index.php?firebird_xsite=0
◆MySQLってすごいね
オラクルさんに買収されてから下火になるのかと思いきやドキュメントも充実してきたし前以上に更新もされていて意外でした。
特徴としてはスケールアウト(サーバー横並び分散)に合います。スレーブの後付追加が可能なのでなので拡張性が高い。また、レプリケーションが優秀でこれが人気の理由の一つでもある。マルチプラットフォームという点もいい。
マスターはマルチスレッドに対応。プログラミングは複雑になるけど処理効率は高い。スレーブはまだマルチスレッド対応足りていない。ver5.7でどうか
たくさんあるサーバーの中で近くのサーバーにアクセスすればいいんだからレイテンシも減らせます。マスターとスレーブを切り替えることも可能だし多段レプリケーションも可能(親から子、子から孫といった複製)ちなみにPostgreは多段レプリケーションはできない。
プラガバルストレージエンジン→テーブルごとに機能変更が可能なDBを使える
InoDBはトランザクションが使えて、クラッシュリカバリにも対応しているので一番使われている。他のDBはトランザクションが使えないが各々で特徴があるのでうまく使い分けられるといいです。
また、GUIツールで MySQLWorkBenchというソフトがあります。
シンプルでわかりやすい、ER図まで使える。DBからリバースエンジニアリングもフォワード、バリデーションも可能で日本語は設定を変えればいけます。
GPLなどのライセンス絡みの話もありましたが私にはよくわかりませんので詳しくはTwitterのハッシュタグ #sqlworld で検索してみてください。
頑張って作っていただいたようです。私がやろうと思ったら正直準備で気持ちが折れそう。この手順12時間くらいかかったらしい。それも作業の動画も作成したのか。ほんと頭が下がります。でもこれを乗り越えるとそれだけの価値のある可用性が得られるのかと思うとどうでしょう。。。
以上
繰り返しますが、今回はオープン系からSQL server、oracleまで様々でした。こんな色々なDBがある勉強会なかなかないです。
次は異なるDBで座談会というか討論会何かがあったら面白いですね。DBごとに得意不得意があるしコストも違う。こんな普段触らない話を聞く機会を提供していただきありがとうございました。次回も楽しみにしています。。
※◆はセッションタイトル名ではありません