Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Synopsis
- data OpenXJsonSerDe = OpenXJsonSerDe' {}
- newOpenXJsonSerDe :: OpenXJsonSerDe
- openXJsonSerDe_columnToJsonKeyMappings :: Lens' OpenXJsonSerDe (Maybe (HashMap Text Text))
- openXJsonSerDe_caseInsensitive :: Lens' OpenXJsonSerDe (Maybe Bool)
- openXJsonSerDe_convertDotsInJsonKeysToUnderscores :: Lens' OpenXJsonSerDe (Maybe Bool)
Documentation
data OpenXJsonSerDe Source #
The OpenX SerDe. Used by Kinesis Data Firehose for deserializing data, which means converting it from the JSON format in preparation for serializing it to the Parquet or ORC format. This is one of two deserializers you can choose, depending on which one offers the functionality you need. The other option is the native Hive / HCatalog JsonSerDe.
See: newOpenXJsonSerDe
smart constructor.
OpenXJsonSerDe' | |
|
Instances
newOpenXJsonSerDe :: OpenXJsonSerDe Source #
Create a value of OpenXJsonSerDe
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:columnToJsonKeyMappings:OpenXJsonSerDe'
, openXJsonSerDe_columnToJsonKeyMappings
- Maps column names to JSON keys that aren't identical to the column
names. 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
.
$sel:caseInsensitive:OpenXJsonSerDe'
, openXJsonSerDe_caseInsensitive
- When set to true
, which is the default, Kinesis Data Firehose converts
JSON keys to lowercase before deserializing them.
$sel:convertDotsInJsonKeysToUnderscores:OpenXJsonSerDe'
, openXJsonSerDe_convertDotsInJsonKeysToUnderscores
- When set to true
, specifies that the names of the keys include dots
and that you want Kinesis Data Firehose to replace them with
underscores. 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.
The default is false
.
openXJsonSerDe_columnToJsonKeyMappings :: Lens' OpenXJsonSerDe (Maybe (HashMap Text Text)) Source #
Maps column names to JSON keys that aren't identical to the column
names. 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
.
openXJsonSerDe_caseInsensitive :: Lens' OpenXJsonSerDe (Maybe Bool) Source #
When set to true
, which is the default, Kinesis Data Firehose converts
JSON keys to lowercase before deserializing them.
openXJsonSerDe_convertDotsInJsonKeysToUnderscores :: Lens' OpenXJsonSerDe (Maybe Bool) Source #
When set to true
, specifies that the names of the keys include dots
and that you want Kinesis Data Firehose to replace them with
underscores. 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.
The default is false
.