Scribble at 2024-06-20 13:49:54 Last modified: 2024-06-20 14:14:16

添付画像

SSDs have effectively replaced spinning disks as the go-to solution for persistent storage for database systems. While they offer amazing read and write throughput, they come with their own issues vendors don't like to talk about. We dive into those issues and explain how CedarDB overcomes them.

Why Your SSD (Probably) Sucks and What Your Database Can Do About It

SSD というストレージ・デバイスは、当初の大宣伝ほどの性能はないと言われている。たとえば、非接触型のデバイスだから HDD よりもデータを長期間にわたって保存できるというセールス・トークは、もう既に色々なメディアの記事で嘘だと分かっている。単純に長期保存用のアーカイブ目的であれば、SSD は通電していないとデータがわずか数ヶ月程度の短期間で消えてしまう特性があるため、電源を OFF にした外付けデバイスとして収納するなら HDD の方がデータの保存期間は圧倒的に長いと言える。そして、仮に通電状態だったとしても、実は SSD のデータが保存される平均的な期待値は、HDD と比べて 25% ていどしか伸びないと言われている。

したがって、起動時間の速さやデータのアクセスが速いといった幾つかのメリットはあるので、多くのデスクトップ・パソコンではシステム・ドライブを SSD として、データの保存用ドライブに HDD を拡張して接続するというプランで販売していることも多い。僕も、いま会社や自宅で使っているマシンのドライブ構成を、そのようにしている。

で、上記の記事も同じような理由で SSD を有効に使うための提案をしてるわけだが、少し言っておきたいのは、「レイテンシ」という言葉の使い方だ。上の記事では、まるで「遅延」という言葉と同義であるかのように使っているが、本来はデバイス内部やデバイスどうしのメッセージングにかかる所要時間のことであり、どんなメッセージングにも必ず所要時間はある(逆に所要時間が0なら、そんなプロセスは「メッセージング」とは言わない)のだから、何かレイテンシを障害や問題であるかのように扱うのはミスリードな言葉の使い方である。レイテンシが期待するよりも長過ぎるというならともかく、レイテンシそのものは悪でもなければ障害でもない。

ただまぁ、"latency" という言葉のつくりからして "late(遅れる)" というイメージが結びつきやすいから、そう思うのも無理はない。だが、"latency" はもともとラテン語で「隠れる」という意味の latent から来ていて、古いドイツ語で「遅い」という意味の言葉から læt という英語になったのが語源とされる "late" とは言葉の由来が異なる。ところが、本来なら「隠れる」という意味の言葉だったのに、19世紀ごろの生物学者が刺激から反応への応答時間という意味で使うようになり、その後でコンピュータ・サイエンスの人々が1950年代ごろから所要時間の意味で使うようになったらしい。なので、語源の意味を本当に正確に伝えていたとすれば、"latency" が今のような意味で使われることはなかったのだろう。よって、こうした経緯には "latency" に "late" を連想し、なおかつそれを周囲の多くが疑わなかったという事情もあったのだろうと思う。英語圏のネイティブでも英語をちゃんと理解しているとは限らないという一例だ。もちろん、同じことは「純粋な日本人」などと非科学的なフレーズを喚いている右翼やネトウヨに限って日本語の運用が出鱈目であることからして、我が国にも言えるわけだが(たとえば、正仮名遣いで文章を書く者が自称保守や右翼にどれほどいるか)。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook