SQL Persists
その昔、Oracleはまだ実装していない機能をアピールして顧客に売り込み、後追いで実装したという。DB黎明期の話だ。
SybaseがSQL Serverになり、Oracleを目指したPostgreSQLはパフォーマンス面でMySQLに取って代わられ、そして一周回っていまPostgreSQLの人気が高まっているらしい。栄枯盛衰は常だが、その間ずっとSQLが残っているのは面白い。
方言は微妙にある。ベンダーごとに独自の拡張があり、移植のたびに泣かされる。それでも根幹の文法は変わらない。複雑なパーサーが必要で、最適化も難しい。そのSQLへのアンチテーゼがKVSだったように思う。キーで引いて値を返す。それだけ。潔かった。
かつてソーシャルゲーム界隈で負荷分散の切り札として活躍したKVSも、いまではセッションストアに収まっている。革命児が公共インフラになった感がある。
コロナの頃だったか、LINEがアンケートを大規模に取得する際にアプリケーションサーバーを介さずHTTP GETのアクセスログだけで記録したという話がある。リクエストをさばくのではなく、リクエストが来た痕跡だけを使う。負荷分散の本質は、処理しないことだ。
技術は進化するが、課題は変わらない。大量のデータをどう捌くか。SQLは50年近くその問いに答え続けている。アンチテーゼが生まれては消え、SQLだけが残る。AIが生成するsqlcのコードを眺めていて思った。SQLを書くのはもう人間ですらない。生成するコードを生成している。それでもSQLは変わらない。