CDM での CSV ファイルの解析
CDM CSV パーサーを使用すると、CSV ファイル内のデータを解析できるため、構成データをカンマ区切り値 (CSV) ファイルから CDM にアップロードするときに、CDM エディターまたはリストビューでデータ形式属性と構成データを簡単に識別できます。
重要:
DevOps コンフィグ は現在廃止されており、新しいアクティベーションのサポートや利用は終了しています。
CDM CSV パーサーは、CSV 標準 RFC 4180 に準拠しています。CSV ファイルから CDM の JSON 形式へのデータの解析は、次の点で役立ちます。
- カスタムヘッダーと区切り文字属性を含む既存の構成データを CSV ファイルからアップロードし、JSON の適切なキーと値のペアとして解析します。
- CDM エディターで、データ形式属性 (メタデータ) と構成データアイテム (データ) を区別する。
- CDM でインポートされた CSV データを展開用に検証しています。
- 構成データを JSON 形式から元の形式の属性を持つ CSV 形式に変換します。
インポート中の CSV から JSON への解析
CSV ファイルを CDM にインポートすると、パーサーは次のように CSV 形式のデータを JSON 形式に変換します。
- CSV ファイルの各レコードを、JSON 形式の data ノードの下の個別のインデックス付きノードに CDI として追加します。
- CSV アップロード中に使用されるデータ形式属性を metadata ノードの下に追加します。
クエリパラメーター dataFormatAttributes には、区切り文字、ヘッダー、ヘッダーとしての最初の行、およびセキュリティで保護されたヘッダーを決定するための属性が含まれています。
表 : 1. CDM CSV パーサーの属性 属性の名前 説明 区切り文字 各ヘッダーフィールドをキーとして、レコードフィールドを CDI の値として区切る文字。区切り文字として有効な文字を指定できます。 デフォルト:
"delimiter": ","。containsHeader CSV ファイルの最初の行をヘッダー行と見なすかどうかを決定するオプション。この属性はオプションです。 - true:CSV ファイルには、ヘッダーとして最初の行が含まれています。
- false:CSV ファイルにはヘッダーとして最初の行がありません。この場合、headers 属性にヘッダーを指定する必要があります。
デフォルト:
"containsHeader": "true"。ヘッダー CSV ファイルのレコードフィールドのヘッダーフィールドのリスト。これらのヘッダーは、JSON 形式の CDI のキー名に変換されます。 注:この属性は、containsHeader 属性が false に設定されている場合にのみ適用されます。CSV ファイルにヘッダーを含む最初の行がない場合は、ヘッダーのアレイを指定できます。ヘッダーの数は、レコードフィールドの数と一致する必要があります。例:
"headers": ["FirstName","LastName","Location","Salary"]。デフォルト:空のアレイ:
"headers": []。securedHeaders すべてのレコードの値が暗号化された形式で JSON 形式で表示されるヘッダーフィールドのリスト。この属性はオプションです。 セキュリティで保護する必要があるヘッダーのアレイを指定できます。セキュリティで保護されたヘッダーの名前は、ヘッダー 属性または 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 ファイルの区切り文字、ヘッダー、およびシークレットヘッダー情報を定義するために使用されます。