TOMLとINIの違い【前編】
「TOML」「INI」は何が違う? いまさら聞けない設定ファイル形式
IaCの活用では、設定ファイルの活用が鍵になる。代表的な設定ファイル形式「TOML」と「INI」は、どちらもさまざまなシーンで利用できる。どちらが自社に最適なのかを見極めるために、両者の違いを知ろう。
物理および仮想インフラの構成と設定をソースコードで管理する「IaC」(Infrastructure as Code)の活用においては、設定ファイル形式の選択が重要になる。本連載は、主要な設定ファイル形式「TOML」と「INI」について、概要や特徴、編集方法、長所と短所を紹介する。
TOMLとINIの概要
TOMLとは
TOMLは、「Python」や「Rust」など、さまざまなプログラミング言語で扱える設定ファイル形式だ。拡張子は「.toml」を使用する。テスト用フレームワーク(特定の設計思想を具現化するプログラム部品やドキュメントの集合体)「pytest」、型チェックツール「mypy」のようなPython用ツールや、Rust用パッケージマネジャー「Cargo」が、TOMLをファイル形式として採用している。以下をはじめ、さまざまなIoC関連ツールでもTOMLファイルを扱うことができる。
- コンテナランタイム(コンテナを実行、管理するソフトウェア)「containerd」
- サーバレスアプリケーション開発フレームワーク「AWS Serverless Application Model」(AWS SAM)
- コンテナ化ツール「Cloud Native Buildpacks」
TOMLは一意の識別子である「キー」と「バリュー」(値)を組み合わせてデータを管理する「キーバリュー方式」の構造を特徴とし、明快で読みやすい。複数のデータ型を扱え、明確な形式で設定を記述できる。「JavaScript」「Java」「C#」「PHP」などの主要なプログラミング言語と組み合わせて使いやすいことも利点だ。ただし、ITインフラやシステム設定での用途は限られる。
INIとは
INIはソフトウェアのデプロイ(展開)や設定管理によく使われる設定ファイル形式だ。もともとは「MS-DOS」や「Windows」用の設定ファイル形式だったが、現在ではバージョン管理システム「Git」、「Linux」のシステム管理ソフトウェア群「systemd」などのユーティリティー(特定の機能を補助するプログラムやツール)でも使用されている。
構文の特徴
TOMLの構文
TOMLは等号で区切られたキーと値のペアで設定を記述する。値には文字列、整数、真偽値、日付を指定でき、キーには文字、数字、アンダースコア、ダッシュを使用できる。行頭のハッシュ記号(#)はコメントを表す。ファイル内の特定の場所にある空白文字(スペース、タブ、改行など)は無視され、大文字と小文字は区別される点は、設定ファイルの作成時には注意が必要だ。
INIの構文
INIは「[section]」のように、角かっこで囲んだセクション名でセクションを分ける。各セクションでは、キーと値のペアを使用して設定を記述する。行頭のハッシュ記号またはセミコロン(;)はコメントを表す。
INIの構文規則は以下の通りだ。
- 大文字と小文字を区別しない
- 特定の場所にある空白文字を無視する
- 「"example one"」のように、空白を含む値は二重引用符で囲む
- 等号、コロン、角かっこなどの特殊文字はバックスラッシュを使ってエスケープする(特定の文字が持つ特別な意味を打ち消す)必要がある
INIファイルの解析ツールはさまざまなものが出回っている。INIには厳密な定義が存在しないため、ツールごとに固有の規則を持つ場合がある。
次回は、TOMLファイルとINIファイルの編集、管理方法を解説する
TechTarget発 エンジニア虎の巻
米国Informa TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[Datadog Japan合同会社] Wantedlyのオブザーバビリティはどう進化したか 10年の軌跡と実装の変遷 -
事例
[Datadog Japan合同会社] エラー検知から原因調査までを最短5分で、日経新聞に学ぶアプリ監視の改善方法 -
製品資料
[Datadog Japan合同会社] クラウドのコストと利用状況を可視化&最適化、「Datadog」の実力とは? -
事例
[Datadog Japan合同会社] クラウド移行で見えた監視の死角、SBI証券が選んだ統合オブザーバビリティ実践 -
製品資料
[NTTPCコミュニケーションズ株式会社] リソースに限りのある中堅企業で「多層防御」の運用負荷をどう乗り越える?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
ITエンジニア1265人調査 生成AIを使い込むほど「人の確認」が重い理由
-
2
全社標準Copilotに絶望? MS Copilotで問い合わせ6割減できた企業は何が違った
-
3
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
4
「Microsoft一択」で本当にいいのか 知らぬ間にライセンス費用が膨らむ真相
-
5
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
-
6
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
7
回避策ゼロ、極めて危険なCisco脆弱性 メール1通で管理者権限、ログ消去の手口
-
8
「仮想化基盤の利用・検討状況」に関するアンケート
-
9
LLMの「過学習」、正しく説明している文章はどれ?
-
10
「最大の脆弱性は従業員」が8割 AI活用で深まるCISOの孤立と苦悩
ホワイトペーパーランキング PR
-
1
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
2
生成AIで文書活用を進めるには? 効率化と安全性をどう両立する
-
3
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
4
Windows PCとMacの選択制で生産性向上 LINEヤフーが実践する運用管理方法とは
-
5
少額減価償却資産が40万円未満へ拡大、令和8年度税制改正で押さえるべき変更点
-
6
「Google Workspace」活用事例34選、先進の生成AIによる組織変革の全貌
-
7
国税庁の次世代基幹システム「KSK2」稼働開始に向けて、対応すべき変更点とは?
-
8
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
9
Linuxのスキルを証明する“激推し”の認定資格はこれだ
-
10
AI時代に成功するための「ナレッジマネジメント」ベストプラクティス
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー