Class OpenXJsonInputFormatProps
Props for OpenX JSON input format for data record format conversion.
Implements
Inherited Members
Namespace: Amazon.CDK.AWS.KinesisFirehose
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class OpenXJsonInputFormatProps : IOpenXJsonInputFormatProps
Syntax (vb)
Public Class OpenXJsonInputFormatProps Implements IOpenXJsonInputFormatProps
Remarks
ExampleMetadata: infused
Examples
var inputFormat = new OpenXJsonInputFormat(new OpenXJsonInputFormatProps {
LowercaseColumnNames = false,
ColumnToJsonKeyMappings = new Dictionary<string, string> { { "ts", "timestamp" } },
ConvertDotsInJsonKeysToUnderscores = true
});
Synopsis
Constructors
| OpenXJsonInputFormatProps() | Props for OpenX JSON input format for data record format conversion. |
Properties
| ColumnToJsonKeyMappings | Maps column names to JSON keys that aren't identical to the column names. |
| ConvertDotsInJsonKeysToUnderscores | When set to |
| LowercaseColumnNames | Whether the JSON keys should be lowercased when written as column names. |
Constructors
OpenXJsonInputFormatProps()
Props for OpenX JSON input format for data record format conversion.
public OpenXJsonInputFormatProps()
Remarks
ExampleMetadata: infused
Examples
var inputFormat = new OpenXJsonInputFormat(new OpenXJsonInputFormatProps {
LowercaseColumnNames = false,
ColumnToJsonKeyMappings = new Dictionary<string, string> { { "ts", "timestamp" } },
ConvertDotsInJsonKeysToUnderscores = true
});
Properties
ColumnToJsonKeyMappings
Maps column names to JSON keys that aren't identical to the column names.
public IDictionary<string, string>? ColumnToJsonKeyMappings { get; set; }
Property Value
Remarks
This is useful when the JSON contains keys that are Hive keywords.
For example, timestamp is a Hive keyword. If you have a JSON key named timestamp, set this parameter to {"ts": "timestamp"} to map this key to a column named ts
Default: JSON keys are not renamed
ConvertDotsInJsonKeysToUnderscores
When set to true, specifies that the names of the keys include dots and that you want Firehose to replace them with underscores.
public bool? ConvertDotsInJsonKeysToUnderscores { get; set; }
Property Value
bool?
Remarks
This is useful because Apache Hive does not allow dots in column names. For example, if the JSON contains a key whose name is "a.b", you can define the column name to be "a_b" when using this option.
Default: false
LowercaseColumnNames
Whether the JSON keys should be lowercased when written as column names.
public bool? LowercaseColumnNames { get; set; }
Property Value
bool?
Remarks
Default: true