Skip to main content

CsvFileCommitter

Local comma-separated values files.

Notes

Commits crawled documents to local comma-separated values (CSV) files. Supports configurable delimiters, quoting, column mappings, multi-value joining, file compression, and output directory settings.

Examples

class: CsvFileCommitter
filePath: /path/to/committer.csv

Usage

Full configuration skeleton, with every option and its default
class: CsvFileCommitter
columns:
- field: string
header: string
truncateAt: 0
compress: false
delimiter: string
directory: string
docsPerFile: 0
escape: string
fieldMappings: {}
fileNamePrefix: string
fileNameSuffix: string
format: DEFAULT
multiValueJoinDelimiter: string
quote: string
restrictions:
- fieldMatcher: {}
valueMatcher: {}
showHeaders: false
splitUpsertDelete: false
truncateAt: 0
typeHeader: string

Properties

PropertyTypeRequiredDefault
columnsCsvColumn[]No-
compressbooleanNofalse
delimiterstringNo-
directorystringNo-
docsPerFileintegerNo0
escapestringNo-
fieldMappingsRecord<string, string>No-
fileNamePrefixstringNo-
fileNameSuffixstringNo-
formatenumNo-
multiValueJoinDelimiterstringNo-
quotestringNo-
restrictionsPropertyMatcher[]No-
showHeadersbooleanNofalse
splitUpsertDeletebooleanNofalse
truncateAtintegerNo5096
typeHeaderstringNo-

Property Details

columns

Target columns for desired document field values.

compress

Compress the generated CSV files using the GZIP file format.

delimiter

Delimiter

directory

Local path where CSV files will be written.

docsPerFile

Maximum number of documents per CSV files.

escape

The escape character to use when needed.

fieldMappings

Mapping of source fields to target ones (CSV columns).

fileNamePrefix

A string prepended to generated file names to distinguish them from other output files.

fileNameSuffix

A string appended to generated file names (before the extension) to distinguish them from other output files.

format

Configuration presets optimized for specific applications consuming CSV files.

Allowed Values

  • DEFAULT
  • EXCEL
  • INFORMIX_UNLOAD1_3
  • INFORMIX_UNLOAD_CSV1_3
  • MONGO_CSV1_7
  • MONGO_TSV1_7
  • MYSQL
  • ORACLE1_6
  • POSTGRESSQL_CSV1_5
  • POSTGRESSQL_TEXT1_5
  • RFC_4180
  • TDF

multiValueJoinDelimiter

One or more characters to be used as a delimiter when combining multi-value fields to become single-value.

quote

A character used to quote values.

restrictions

Defines filter conditions that restrict which documents this committer processes. Documents not matching the restrictions are ignored by this committer.

showHeaders

Write column headers at the first of a generated document.

splitUpsertDelete

When enabled, a single update operation is split into separate upsert and delete operations for compatibility with the target system.

truncateAt

Truncate values larger than N characters. Default is 5096. Use -1 for unlimited.

typeHeader

Name of the column holding the operation type (upsert or delete). Default is type.