データベースの性能偏重文化
- データベース業界は性能向上に注力しているが、実際のユーザー体験はしばしば別の要素に左右される。
- ユーザーがデータを処理するうえで本当に重要なのは、クエリ最適化よりも、データの形式やSQLで質問を組み立てる能力かもしれない。
- データベースの性能は重要だが、使いやすさ、エコシステム、更新速度、ワークフローとの統合性など、ほかの要素を基準にデータベースを選ぶほうがよい場合がある。
ベンチマーク戦争の終焉
- 2019年にGigaOmがクラウドデータウェアハウスを比較するベンチマークを発表したが、実際の市場の結果はそれとは異なる様相を示した。
- ベンチマーク結果がユーザー体験と一致しないなら、ベンチマークが間違っているか、間違ったものを測っているか、あるいは性能がそれほど重要ではない可能性を示している。
速さの意味
- クラウドデータベース分野では、ユーザーが「実行」ボタンをクリックしてから結果が準備されるまでの時間に注目しがちである。
- 実際にユーザーへ影響するのは作業を完了するまでにかかる時間であり、それはデータベースサーバー時間と同じではない。
性能は主観的である
- 性能はユーザーの視点から測定されるべきであり、UXの問題であるため単一の数値では説明できない。
- 性能の主観性とは、どちらが速いかはデータベースがどう使われるかによって決まることを意味する。
変化の速度
- DuckDBは高速なペースで改善されており、そのため現在のベンチマークは無意味になりうる。
- データベースを選ぶ際には、現在の性能だけでなく、将来の性能や機能の変化も重要な変数である。
魔法の豆はない
- すべてのデータベースが活発に保守されているなら、性能は時間とともに収束していくはずである。
- 重要な性能差は、時間が経つにつれて持続しない可能性が高い。
問題は椅子とキーボードの間、キーボードとデータベースの間にある
- ユーザーにとって重要な性能指標は、問いを持ってから答えを得るまでにかかる時間である。
- データベースがクエリを実行する時間ではなく、アイデアから答えに到達するまでの速さこそが重要な機能である。
酸っぱいブドウについて
- DuckDBは現在、ClickBenchとh20.aiのベンチマークで上位に位置しており、TPC-HとTPC-DSでも悪くない性能を示している。
- データベースが速いと決めつける前に、実際のワークロードで試してみることが重要である。
結論
- 最も成功したデータベース企業は、競合他社より速い性能によって成功したわけではない。
- 性能を主要な売り文句にしたデータベースは、市場で成功してこなかった。
- データベースを選ぶときは、生の速さ以外の要素を基準に判断するほうがよいと勧めている。
GN⁺の見解
- この記事は、データベースの性能だけに焦点を当てるのではなく、ユーザー体験と作業フローを最適化することが重要だと強調している。これは初級ソフトウェアエンジニアにとっても、データベースを選ぶ際に単純な性能指標よりユーザー中心のアプローチを考慮すべきだという重要な教訓を与えている。
- データベースの性能は時間とともに収束する傾向があり、これは技術の進歩があらゆるプラットフォームへ広がるためである。これは技術選定の際、短期的な性能より長期的なサポートと改善の可能性を考慮すべきことを示唆している。
- DuckDBのようなオープンソースプロジェクトは、速い改善速度とコミュニティの支援を土台に急速に発展できる。これは新しい技術を導入する際、コミュニティの活発さとプロジェクトの発展速度を考慮すべきことを意味する。
- データベース選定では性能ベンチマークの結果だけに依存せず、実際のワークロードで性能を試すことが重要である。これは実際のユースケースにより適したデータベースを選ぶ助けになる。
- データベース技術の選択では、単なる技術的側面だけでなく、ビジネス要件、保守のしやすさ、データ処理の効率性など、多様な要素を考慮すべきであることを強調している。
1件のコメント
Hacker Newsの意見
pickledbを選ぶことはない。