今回は、「そもそもデータとは何なのか」についての説明です。
1.初めに
私たちの身の周りには、様々なデータが存在しますよね?
身長・体重・血圧・心拍数といった身体の特徴もデータですし、気温・湿度といった環境もデータですし、音楽・画像・動画もデータです。
コンピュータが取り扱う“0”と“1”から成る意味のある数列もデータですし、日本語で書かれた文書もデータですし、グラフや表のみの資料もデータです。
では、データってそもそも何でしょうか?
常日頃からデータという呼び方が定着しているせいで、意味自体も「データ」で何となく通じてしまいますよね。
強いて言うなら、文字・符号・数値などで表現した資料や情報がデータです。
今回は、そんなデータの単位やパケットという概念などについて、わかりやすく解説していこうと思います。
2.アナログデータとデジタルデータ
データを分類すると、アナログデータとデジタルデータに分かれます。
アナログは連続したデータ、デジタルは断続的なデータのことを指しています。
アナログとデジタルの違いについては別途まとめてあるので、詳しくは以下の記事をご覧ください。
データにはアナログデータとデジタルデータが存在するわけですが、単にデータと言った場合はIT分野ではデジタルデータを指しています。
コンピュータはどんな情報も“0”と“1“の羅列で表現するので当然と言えば当然なんですけどね。
というのも、私たちが一般的に使用しているコンピュータはデジタルデータを取り扱うことがほとんどだからです。
デジタルデータの方がデータの保存性・再現性・ノイズ耐性なんかが優れているので、扱いやすいのです。
そんなデータをネットワーク経由で送受信する場合、パケットという単位に分割してデータを送受信することになります。
3.パケットとは?
パケット[packet]とは、普通に調べると[一封・小包]と出てきます。
IT用語としては、ある決まった長さに分割されたデータのことを指しています。
データの単位の一種という認識です。
大きなデータを“小包”で分けるイメージだからパケットと呼ぶのだと思います。
一つのパケットはヘッダ部とペイロード部で構成されます。
パケットのペイロード部には送信元のIPアドレス(住所)や宛先のIPアドレスも記述されていて、この情報をルータが読み取り、どのような経路でパケットを送信すれば目的地に辿り着けるかを考え、次に向かうべきルータを示してくれます。
こうして目的のIPアドレスに辿り着けるようになっているのです。
パケットに分割する理由
なんでわざわざパケットに分割するのかというと、エラー発生時の負担を軽減するためです。
仮に大きなデータを送信しようとした場合にパケットに分割せずにエラーが発生したとします。
すると、エラー復帰後にまた最初からすべてのデータを送信し直さなければいけなくなります。
ここでパケットに分割してあった場合、エラー発生前までのパケットは送信する必要が無くなるので、無駄を省けるわけです。
また、データ伝送の効率面でもパケットに分割するメリットがあります。
例えば、食パンが一斤あったとします。
この食パンですが、あなたは切り分けずにそのまま食べますか?
大食いの方はもしかしたら肯定するかもしれませんが、大半の人は何枚かに切り分けて食べますよね。
一斤丸々では大き過ぎて食べ辛いですから。
データの通信に関しても同じことが言えるのです。
イメージとしては、データの通信路を喉、データを食べ物だと考えてみてください。
一気にデータを送ろうとすると、通信が詰まってしまうんです。
そんな理由から、パケット単位に分割してデータを伝送するようになっているのです。
ちなみに、当然ながら分割された状態のデータ(パケット)は受信先で復元されます。
4.情報量を表す要素
情報量や情報伝達速度を表すメジャーな単位について紹介していきます。
ビット(bit)とは?
ビット[bit]とは、情報量の最小単位のことです。
コンピュータの世界はすべての情報が“0”と“1”で構成されています。
この“0”か“1”が入る1つの入れ物がビットです。
例えば、1ビットだと“0”と“1”しか表現できません。
2ビットあると、“00”・“01”・“10”・“11”の組み合わせができます。
なので、“00=0”・“01=1”・“10=2”・“11=3”と定義すれば、0と1という数字だけで0~3までの数字を表現できるようになります。
3ビットあると更に組み合わせが増え、“000=0”・“001=1”・“010=2”・“011=3”・“100=4”・“101=5”・“110=6”・“111=7”という具合に0と1だけで0~7までの数字が表現できます。
このように、『この組み合わせの時はこれを意味する』とあらかじめ決定しておくことで、“0”と“1”の組み合わせだけで色々表現できるようにしているのがコンピュータの世界です。
画像・音楽など、なんでもデータはビットの集まりなのです。
ビットが多い=情報量が多いということになるので、ビットが多い画像と少ない画像があったら、前者の方が高画質になります。
バイト(byte)とは?
情報量の単位としては、ビットが8つ並んだバイト(byte)も有名です。
1バイト=8ビットです。
バイトの場合はビットという入れ物が8つになり、28=256通りの組み合わせを作ることが可能です。
情報量の最小単位であるビットも頭文字はBなので、ビット/バイトを区別する意味で1bit/1byteと表示されていることが多いです。
なのですが、バイトに接頭辞を付けた単位になると、byteはBと表示されることに注意です。
キロバイト(KB)やメガバイト(MB)のことです。
ちなみに、1KB=1,000byteに感じそうなものなのですが、実際は1,024byteのことを指しています。
これは、2のべき乗の方が都合が良いかららしいです。
こうすれば210=1,024倍ごとに接頭辞を切り替えれば良くなりますからね。
情報量の単位と言ったら、ビットかバイトが根底にあると覚えておきましょう。
ビットレートとは?
ビットやバイトが情報量の主な単位ではあるのですが、情報量を表す要素としてはもう一つ重要な項目があります。
それは、ビットレートです。
ビットレートとは、1秒間に送受信できるデータ量のことです。
ビットが情報量の最小単位なので、そのレート(割合/率のこと)を示しています。
単位はbps[bit per second]です。
…普通にbit/sという単位ではダメだったんですかね?
mp3などの音楽データでは、よく96kbpsとか128kbpsという表示をされています。
これも接頭辞の“k(キロ/103に値する)”が付いているビットレートです。
この例の場合、1秒間に96,000bitか128,000bitものデータを送っていることを表しています。
音声データだけでこのレベルなので、映像になるともっとビットレートが増えます。
単純にビットレートが高いほどデータをたくさん送れるわけなので、映像の場合はビットレートが高いほうがヌルヌル動きます。
ただ、その分機器に与える負荷が大きくなってしまうので、使用するネットワーク環境のビットレートの上限は気にする必要があります。
データ送信中にネットワークの接続が切れた場合は、ビットレートが高すぎるのが原因かもしれませんよ?
カラオケのJOYSOUNDでスマートフォンから動画を送れる機能があるのですが、条件を満たしているはずなのに送ることができない動画が過去にありました。
その動画は妙にビットレートが高かったので、そのせいで接続が途切れていたのかもしれません。
実際、ビットレート下げてから接続が切れること無くなったし。
ちなみに、音質を向上させる上で大切になるのは、ビットレートの他にサンプリングレートがあります。
サンプリングレートは「どれだけ細かく音を取り込むか」、ビットレートは「どれだけ細かく音を表現するか」を指しています。
時間軸で音を分割するのがサンプリングレート、その分割された音を低周波数~高周波数(低音~高音)に分けるのがビットレートです。
bpsとは?
ビットレートの説明で出てきたbpsについても詳しく説明していきます。
bpsとは、通信におけるデータの伝送速度を表す単位のことです。
[bit per second]の略称で、1秒当たりに何bit伝送できるかを表しています。
bit/sということです。
ビットは、情報量の最小単位のことでした。
そんなビットが集まって画像や音楽などが構成されているわけですが、このデータをあるパソコンから別のパソコンに転送しようとした場合、データを構成するビットを全部伝送する必要があります。
ここで重要になるのがbpsです。
仮に伝送したいデータが100bitで構成されていたとします。
これに対して伝送速度が1bpsになっていたら、1秒に1bitずつ伝送することになります。
つまり、データの伝送に100秒もかかります。
ですが、もし伝送速度が100bpsなら、1秒で済むわけです。
なので、通信をする上でbpsは重要なパラメータとなります。
スマートフォンで使用しているネット回線は設定でも見てみれば伝送速度が記載されているはずなので、試しに見てみると良いかもしれませんね。
Wi-Fiが如何に高速なのかが実感できますよ。
Wi-Fiで3Gや5Gという表記があるでしょう?
アレの単位は厳密にはbpsなんです。
つまり、5Gbps…1秒当たり5×109ものビットを伝送しているんですね。
こうしてブログを見たりするにも通信をしているので、bpsの差がページの読み込み速度なんかにも影響します。
bpsは結構身近な単位なんです。
以上、「そもそもデータとは何なのか」についての説明でした。