での CSV ファイルの解析 CDM

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:6分
  • CDM CSV パーサーを使用すると、CSV ファイル内のデータを解析できるため、構成データをカンマ区切り値 (CSV) ファイルから CDM にアップロードすると、CDMエディターまたはリストビューでデータ形式の属性と構成データを簡単に識別できます。

    重要:
    Washington DC リリース以降、DevOps コンフィグは将来の廃止に備えて準備されます。これは非表示になり、新しいインスタンスにはインストールされなくなりますが、引き続きサポートされます。詳細については、Now Support ナレッジベースの「Deprecation Process (廃止プロセス) [KB0867184]」の記事を参照してください。
    CDM CSV パーサーは、CSV 標準 RFC 4180 に準拠しています。CSV ファイルから CDM の JSON 形式へのデータのこの解析は、次の点で役立ちます。
    • カスタムヘッダー属性と区切り文字属性を持つ CSV ファイルから既存の構成データをアップロードして、JSON で適切なキーと値のペアとして解析します。
    • CDMエディターの構成データアイテム (データ) とデータ形式の属性 (メタデータ) を区別する。
    • 展開のためにインポートされた CSV データを CDM で検証しています。
    • 元の形式の属性を使用して、構成データを JSON 形式から CSV 形式に変換します。

    インポート時の CSV から JSON への解析

    CSV ファイルを CDM にインポートすると、パーサーは次のように CSV 形式のデータを JSON 形式に変換します。
    • CSV ファイルの各レコードを CDI として、JSON 形式の data ノードの下の個別のインデックス付きノードに追加します。
    • metadata ノードで CSV アップロード中に使用されるデータ形式属性を追加します。

      クエリパラメーター dataFormatAttributes には、区切り文字、ヘッダー、ヘッダーとしての最初の行、および保護されたヘッダーを決定するための属性が含まれています。

      表 : 1. CDM CSV パーサーの属性
      属性の名前 説明
      区切り文字 各ヘッダーフィールドをキーとして、レコードフィールドを CDI の値として区切る文字。区切り文字として有効な文字を指定できます。

      デフォルト: "delimiter": ,.

      ヘッダーを含む CSV ファイルの最初の行をヘッダー行と見なすかどうかを決定するオプション。この属性はオプションです。
      • true:CSV ファイルにはヘッダーとして最初の行が含まれます。
      • false:CSV ファイルにはヘッダーとして最初の行がありません。この場合、 headers 属性にヘッダーを指定する必要があります。

      デフォルト: "containsHeader": "true"

      ヘッダー CSV ファイル内のレコードフィールドのヘッダーフィールドのリスト。これらのヘッダーは、JSON 形式の CDI のキー名に変換されます。
      注:
      この属性は、 containsHeader 属性が false に設定されている場合にのみ適用されます。

      CSV ファイルにヘッダーを含む最初の行がない場合は、ヘッダーの配列を指定できます。ヘッダーの数は、レコードフィールドの数と一致する必要があります。例:"headers": ["FirstName","LastName","Location","Salary"]

      デフォルト:空のアレイ: "headers": []

      securedHeader すべてのレコードの値が JSON 形式で暗号化された形式で表示されるヘッダーフィールドのリスト。この属性はオプションです。

      保護する必要があるヘッダーの配列を指定できます。セキュリティで保護されたヘッダーの名前は、 headers 属性または CSV ファイル内のヘッダーの名前と一致する必要があります。例:"securedHeaders": ["Salary"]

      デフォルト:空のアレイ: "securedHeaders": []

    CSV から JSON 形式への変換

    この例は、指定されたデータ形式属性と、これらの属性に基づいて CSV コンテンツを JSON 形式に変換する方法を示しています。
    データ形式の属性
    注:
    このパラメーターはオプションです。値を指定しない場合は、属性のデフォルト値が使用されます。

    { "delimiter": ",", "containsHeader": "true", "headers": [], "securedHeaders": ["salary"] }

    CSV 形式
    //Sample CSV file content: no header in the first row; each line represents a record 
      FirstName,LastName,Location,Salary
      David,Ben,NYC,1000
      Jakes D,Ron,IRE,1220
      "George, R",Martin,US,12120
      "Antony, ""Ron",Mak,US,1210
    JSON 形式
    
    //data node for the records from CSV - each record row converted to individual nodes with fields separated by delimiter character converted to individual items of the node{
    	"data": {   
    		"0": {
    			"FirstName": "David",
    			"LastName": "Ben",
    			"Location": "NYC",
    			"Salary": "*****"
    		},
    		"1": {
    			"FirstName": "Jakes D",
    			"LastName": "Ron",
    			"Location": "IRE",
    			"Salary": "*****"
    		},
    		"2": {
    			"FirstName": "George, R",  //the name has a delimiter char so the full name is enclosed within " "
    			"LastName": "Martin",
    			"Location": "US",
    			"Salary": "******"
    		},
    		"3": {
    			"FirstName": "Antony, \"Ron", //the last name has "" so a \ is added to include " in the last name
    			"LastName": "Mak",
    			"Location": "US",
    			"Salary": "*****"
    		}
    	},
    //metadata added for the data format attributes
    	"metadata": {   
    		"containsHeader": "true",
    		"delimiter": ",",
    		"headers": "FirstName�LastName�Location�salary",
    		"securedHeaders": "Salary"
    	}
    }

    エクスポート中の JSON から CSV への解析

    構成データを CSV ファイル形式にエクスポートするときに CSV 構成データを元の形式に保つには、データに data ノードと metadata ノードが含まれていることを確認します。
    • dataノード内の構成データアイテムは、CSV ファイル内の個々のレコード行に変換されます。
    • metadata ノード内のデータ形式属性は、CSV ファイル内の区切り文字、ヘッダー、およびシークレットヘッダー情報を定義するために使用されます。