b.l0g.jp     About     Archive     Feed

Tokyo Rubyist Meetupでデータベースのインデックスについて英語で話した

The English version is at the end of this post.

2月10(金)に開催されたTokyo Rubyist Meetupというイベントで、自分が翻訳したSQLパフォーマンス詳解という本をベースにして「How indexes work in relational databases」という題で発表した。題名からわかるように、英語での発表。

Tokyo Rubyist Meetupは、Doorkeeperの社長Paul McMahonさんが主催している、Rubyのことを中心にしつつも色々なトピックを取り上げている英語話者向けの勉強会。Paulさんからお声がけがあって、DBエンジニアからの知見はRubyistにもうけると思うよということで、英語の勉強と本の宣伝とデータベース知識の整理の意味で発表することにした。Paulさん貴重な機会をくれて本当にありがとうございました!

内容的には、SQLパフォーマンス詳解(の英語版)の第1章の要約みたいな感じで、インデックスがなぜ必要なのか、Bツリーインデックスはどうやってデータを探すのに役立つのかといった基本的なところを書いた。Active Recordばっかり使ってて、SQLがどう動いているのかあまり意識していなかったり、高速に応答するクエリをどう書いたらいいのかわからない人に向けて、インデックスコワクナイヨ、ということを言ったつもり。しかし特定のDB(MySQLとかPostgreSQLとか)についてあえて触れなかったので、内容的に抽象的すぎたかもしれない。こういう発表って、どの程度の人をターゲットにするかブレないようにすること、そして抽象的すぎず突っ込みすぎずな内容にもっていくのが難しい。


I gave a talk “How indexes work in relational databases” based on the book SQL Performance Explained at Tokyo Rubyist Meetup held on Feb. 10.

(See the material above.)

Tokyo Rubyist Meetup is a tech meetup for English speaking Ruby engineers organized by the CEO of Doorkeeper Inc. Paul McMahon. One day, he gave me an email and suggested me to talk about a topic related to databases. I decided to talk something to practice my English, to promote the book, and to reorganize my thought on databases. Thank you very much Paul, this was my precious experience!

The talk was basically the summary of the chapter one of SQL Performance Explained, including basic topics like why indexes are needed and how B-tree indexes search a record. The talk was for developers who use Active Record and don’t have enough knowledge about indexes and what I wanted to say for them is that don’t be afraid of indexes. I intentionally avoid to write about a specific database management system (MySQL, PostgreSQL, etc.) to focus on how indexes work in general but because of that, the talk might be too abstract. Hopefully, the talk was a good introduction to the internal of databases for attendees.

I’m going to talk at some more events in this year to improve my English skill.