yxdb-utils-0.1.0.1: Utilities for reading and writing Alteryx .yxdb files

Safe HaskellNone
LanguageHaskell98

Database.Alteryx

Synopsis

Documentation

alteryxCsvSettings :: CSVSettings Source

Our CSVs are pipe('|')-separated and do not do quoting.

csv2bytes :: MonadThrow m => Conduit Text m ByteString Source

All CSV text should be UTF-8 encoded.

sourceCsvRecords :: MonadResource m => FilePath -> Maybe Text -> CSVSettings -> Source m Record Source

Stream the parsed records from a CSV file

getAllVariableData :: Get ByteString Source

Retrieves the bytesting representing all variable data for the current record

data YxdbFile Source

Instances

Eq YxdbFile 
Show YxdbFile 
Binary YxdbFile

This binary instance is really slow because the YxdbFile type stores a list of records. Use the Conduit functions instead.

getRecord :: RecordInfo -> Get Record Source

Records consists of a fixed amount of data for each field, and also a possibly large amoutn of variable data at the end.

putRecord :: RecordInfo -> Record -> Put Source

Writes a record using the provided metadata.

headerPageSize :: Int Source

Number of bytes taken by the fixed header

miniblockThreshold :: Int Source

When writing miniblocks, how many bytes should each miniblock aim for?

recordsPerBlock :: Int Source

Number of records before each block is flushed and added to the block index