データ (コンピュータ)
コンピューティングでは、データ(
データは、
特徴 [編集 ]
メタデータは、データに
データバイトをファイルに
プログラムとデータの
たとえば、ユーザーはまず、あるファイルからワードプロセッサプログラムをロードするようオペレーティングシステムに
2007
データのキーと値 、構造 、永続 性 [編集 ]
データのキー(key)は、
RAM[編集 ]
- ランダムアクセスメモリ(RAM)は、CPUが
直接 アクセスできるデータを保持 する。CPUは、プロセッサレジスタまたはメモリ内 のデータのみを操作 することができる。これは、CPUがストレージ機器 (ディスクやテープなど)とメモリ間 のデータ転送 を指示 する必要 があるデータストレージとは対照 的 である。RAMは、プロセッサが読 み込 みまたは書 き込 み操作 のためのアドレスを提供 することにより、読 み込 みまたは書 き込 みができる、直線 状 の連続 した場所 の配列 である。プロセッサは、メモリ内 の任意 の場所 を、いつでも、任意 の順序 で操作 することができる。RAMでは、データの最小 要素 は二 進数 ビットである。RAMにアクセスするための機能 や制限 はプロセッサによって異 なる。一般 に、メインメモリはアドレス 0(16進数 の 0)から始 まる位置 の配列 として配置 される。各 位置 には、コンピュータ・アーキテクチャに応 じて、一般 に8ビットあるいは32ビットを格納 することができる。
キー[編集 ]
- データキーは、メモリ
上 の直接的 なハードウェアアドレスを指 すものである必要 はない。間接 的 、抽象 的 、および論理 的 なキーのコードを値 と関連付 けて格納 し、データ構造 を形成 することができる。データ構造 には、その先頭 から所定 の偏差 (またはリンクやパス)があり、そこにデータ値 が格納 される。したがって、そのデータキーは、構造 体 へのキーと、構造 体 の内部 での偏差 (またはリンクやパス)を加 えて構成 される。このような構造 を繰 り返 して、同 じ繰 り返 し構造 内 にデータ値 とデータキーの組 を格納 すると、その繰 り返 し構造 の各 要素 を列 に、各 繰 り返 し構造 を行 に見立 てた、二 次元 の表 のような結果 を得 ると考 えることができる。このようなデータ編成 では、データキーは通常 、列 の値 の1つ(または複数 の値 の複 合 )になる。
編成 された繰 り返 しデータ構造 [編集 ]
繰 り返 しデータ構造 を表 形式 で表現 することは、多 くの可能 性 の1つに過 ぎない。繰 り返 しデータ構造 はまた、ノード(節 )が親子 関係 を持 って互 いにリンクするように、階層 的 に編成 することもできる。これらのノードに、値 やより複雑 なデータ構造 がリンクされる。このように、ノード階層 は、ノードに関連付 けられたデータ構造 を扱 うためのキーを提供 する。この表現 は、反転 木 (根 を上 に、葉 を下 に向 けた樹 形 図 )と考 えることができる。たとえば、最近 のコンピュータのオペレーティングシステムのファイルシステムが一般 的 な例 であり、XMLもその一 つの例 である。
並 べ替 えデータまたは順序 付 きデータ[編集 ]
- データをあるキーでソート(
整列 )すると幾 つかの固有 の特徴 を生 じる。そのキーのサブセット(部分 集合 )の値 はすべて一 群 として表 れる。同 じキーを持 つデータのグループが順次 通過 するとき、あるいはキーのサブセットが変化 するとき、これをデータ処理 の世界 ではブレークあるいはコントロールブレークと呼 ぶ。特 に、キーのサブセット上 のデータ値 の集計 を容易 にする。
ペリフェラルストレージ[編集 ]
- フラッシュメモリのような
大 容量 の不揮発 性 メモリが登場 するまで、永続 的 なデータストレージは、磁気 テープやディスクドライブのような外部 ブロックデバイスにデータを書 き込 むことで実現 されていた。これらの装置 は通常 、磁気 メディア上 のある位置 に磁気 ヘッドを移動 し、所定 のサイズのデータブロックを読 み書 きする。この場合 、メディア上 の移動 位置 がデータキーで、ブロックがデータ値 となる。初期 に用 いられた「ロー・ディスク」データファイルシステムやオペレーティングシステムでは、ディスクドライブ上 の連続 ブロックをデータファイル用 として確保 した。このようなシステムでは、すべてのデータが書 き込 まれる前 にファイルがいっぱいになり、データ領域 が不足 することがあった。そのため、各 ファイルに十分 な空 き領域 を確保 するために、多 くの未 使用 のデータ領域 が非 生産 的 に確保 されていた。その後 のファイルシステムでは、パーティションが導入 された。それらは、ディスクのデータ領域 をパーティション用 に確保 し、必要 に応 じてパーティションのブロックをファイルに動的 に割 り当 てることで、割 り当 てられたブロックをより経済 的 に使用 した。これを実現 するために、ファイルシステムは、カタログまたはファイルアロケーションテーブルによって、データファイルによって使用 または未 使用 のブロックを追跡 する必要 があった。これにより、ディスクのデータ領域 をより有効 に活用 できるようになったが、ディスク全体 でファイルの断片 化 が発生 し、データを読 み込 むための移動 時間 が増 えるために、パフォーマンスのオーバーヘッドが発生 した。最近 のファイルシステムは、断片 化 したファイルを動的 に再 編成 して、ファイルアクセス時間 を最適 化 する。ファイルシステムのさらなる発展 により、ディスクドライブが仮想 化 され、論理 ドライブを複数 の物理 ドライブからなるパーティションとして定義 することが可能 になった。
インデックス付 きデータ[編集 ]
大 きなデータセットから小 さなデータを取 り出 すことは、逐次 的 データ検索 を伴 うために非 効率 的 な場合 がある。インデックス(索引 )とは、ファイル、テーブル、データセットなどのデータ構造 からキーと位置 アドレスを写 し取 り、反転 木 構造 を使 ってそれらを編成 することで、元 のデータのサブセットを取 り出 すのにかかる時間 を短縮 する方法 である。そのためには、検索 を開始 する前 に、取得 するデータのサブセットのキーを知 っていなければならない。最 も一般 的 なインデックスは、Bツリーと動的 ハッシュキーインデックス方式 である。インデックス作成 は、データの整理 と取得 のためのオーバーヘッドである。インデックスを構成 する方法 は他 にも、キーのソートや、二分 探索 アルゴリズムがある。
抽象 化 と間接 化 [編集 ]
- オブジェクト
指向 では、データとソフトウェアを理解 するために2つの基本 的 な概念 を使用 する。
- プログラムコードクラスの
分類 学 的 なランク構造 (階層 的 なデータ構造 の一 例 )。 実行 時 に作成 される、クラスライブラリからインスタンス化 されたオブジェクトのメモリ内 データ構造 に対 するデータキー参照 。
インスタンス
データベース化 データ[編集 ]
- データベースの
登場 により、永続 的 なデータ保存 のための抽象 化 レイヤー(層 )が導入 された。データベースは、データを永続 化 する際 に、メタデータと構造 化 問 い合 わせ言語 (SQL)プロトコルを用 いて、クライアントとサーバーのシステム間 でネットワークを介 して通信 し、取引 の完全 性 を保証 するために2相 コミットのログシステムを使用 する。
並列 分散 データ処理 [編集 ]
最新 のスケーラブルで高性能 なデータ永続 化 技術 は、高 帯域 幅 ネットワークに接続 された多数 の量産 コンピュータ間 にまたがる超 並列 分散 データ処理 に依存 している。その一 例 としてApache Hadoopがあげられる。このようなシステムでは、データは複数 のコンピュータに分散 されるため、システム内 の特定 のコンピュータを直接 または間接 的 にデータのキーで表 す必要 がある。これにより、異 なるコンピューターで同時 に処理 されている2つの同 じデータセットを区別 することができる。
関連 項目 [編集 ]
- アセンブリ
言語 -低 水準 のプログラミング言語 - ビッグデータ -
従来 のデータ処理 ソフトウェアでは取扱 いが困難 な巨大 で複雑 なデータセット - バス - コンピュータ
内 の部品 間 あるいはコンピュータ間 でデータを転送 するための通信 システム - バイト -
一般 に8ビットで構成 されるデジタル情報 の単位 - コンピュータメモリ - コンピュータやデジタル
電子 機器 で、すぐに使用 できるように情報 を保存 する装置 中央 処理 装置 (CPU) - コンピュータ・プログラムを構成 する命令 を実行 する電子 回路 - コンピュータネットワーク -
資源 を共有 するコンピュータの集合 - CPUキャッシュ - CPUとコンピュータメモリの
間 の性能 差 を埋 めるための高速 なメモリ - データ -
個々 の事実 、統計 、または情報 の項目 (多 くの場合 は数値 ) - データ
辞書 - データに関 する情報 (意味 、他 のデータとの関係 、由来 、使用 、形式 など)を一元 管理 するデータ構造 - データモデリング -
情報 システムのデータモデルを作成 する過程 - データストレージ - データを
記録 媒体 に保存 すること - ストリーム -
情報 を伝達 するためにデジタル符号 化 された一連 の信号 を送信 すること - データ
型 - データの扱 われ方 をコンパイラやインタープリタに伝 える属性 - データベース -
電子 的 に保存 されアクセスされるデータの組織 的 な集合 体 - データセット - データの
集 まり - デジタルデータ -
有限 個 の値 をとる離散 的 な記号 の列 として表現 される情報 外部 キー - テーブルの属性 のうち、別 のテーブルの主 キーを参照 するもの- ハッシュテーブル - キーと
値 を対応付 けて集 めて参照 できるよう整理 したデータ構造 情報処理 システム -情報 を受 け取 って、加工 したり伝達 を行 うシステム命令 セット - コンピュータを抽象 化 するモデル- メモリアドレス - ソフトウェアやハードウェアがさまざまなレベルで
使用 する特定 のメモリ位置 への参照 - オフセット -
配列 または他 のデータ構造 オブジェクトの中 の、所定 の要素 または位置 までの、先頭 からの距離 を示 す整数 単一 キー - テーブル内 の全 ての行 でキーが唯一 である性質 - レジスタ - コンピュータのCPUが
利用 できる素早 くアクセスできる場所 - シフトレジスタ - フリップフロップをカスケード
状 に並 べたデジタル回路 - ステート -
先行 するイベントやユーザとの対話 を記憶 した情報 - タプル -
要素 の有限 順序 リスト(列 ) 値 - プログラムによって操作 可能 な何 らかの実体 の表現 - ノイマン
型 アーキテクチャ -電子 デジタルコンピュータの設計 アーキテクチャ (1945年 )
脚注 [編集 ]
注釈 [編集 ]
- ^
英語 では、dataは単数 形 、複数 形 、または不 可算 名詞 として扱 われる。また、datumは、明示 的 な単数 形 を意味 する。
出典 [編集 ]
- ^ “Data”. Lexico. 2019
年 6月 23日 時点 のオリジナルよりアーカイブ。2022年 1月 14日 閲覧 。 - ^ “Computer program”. The Oxford pocket dictionary of current english. 2011
年 11月28日 時点 のオリジナルよりアーカイブ。2012年 10月 11日 閲覧 。 - ^ “file(1)”. OpenBSD manual pages (2015
年 12月24日 ). 2018年 2月 5日 時点 のオリジナルよりアーカイブ。2018年 2月 4日 閲覧 。 - ^ Paul, Ryan (2008
年 3月 12日 ). “Study: amount of digital info > global storage capacity”. Ars Technics. オリジナルの2008年 3月 13日 時点 におけるアーカイブ。 2008年 3月 13日 閲覧 。 - ^ Gantz, John F. (2008
年 ). “The diverse and exploding digital universe”. International Data Corporation via EMC. 2008年 3月 11日 時点 のオリジナルよりアーカイブ。2008年 3月 12日 閲覧 。