冪等性 【idempotence】 冪等 / idempotency

概要

冪等性(idempotence)とは、ある操作を何度繰り返しても結果が同じになるという性質。元は数学の概念だがIT分野でもほぼ同じ意味で用いられる。

同じ演算や処理、操作などを1回行っても、何度繰り返しっても常に同じ結果になる性質を指す。例えば、「与えられた実数の絶対値を求める関数」は、得られた結果を再度与えても結果は同じになり、何度繰り返しても結果は同じとなる。

HTTPWebサーバに対する要求の種類表すHTTPメソッドでは、同じリソースGETメソッドPUTメソッドDELETEメソッドを何度発行しても結果は同じになるため、これらは冪等な操作だが、POSTメソッドを繰り返し発行するとその度にサーバデータが追加され異なる状態に変化していくため冪等ではない。

IaCの冪等性

システム管理の自動化などをIaCInfrastructure as Codeツールなどでは、システム環境を整備するコードが冪等になるよう、宣言型言語を用いて記述することが多い。これは従来のコマンドなどを列挙するシェルスクリプトなどの仕組みと対比される。

例えば、コマンドなどの手続き型コードで「VMインスタンスを1台起動する」という手続きを記述すると、実行前の状態によって結果は異なり(起動済みが1台なら2台に、2台なら3台になる)、繰り返し実行するとその度に異なる状態に変化する(1台→2台→3台→…)。

一方、宣言的なコードを用いて「起動済みVMインスタンスを1台にする」と記述すれば、実行前の状態に関わらず、必ずインスタンスが1台の状態になる。コードを何度繰り返して適用しても、やはり1台起動した状態が維持される。必要な操作はその都度異なるため、ツール側に高度な制御機能が必要となる。

(2023.9.29更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる