fields: - name: "_id" type: "string" # (default StringField (non-mutex)) generator_type: "random-string" # used to generate random strings rather than pulling from known set min_len: 3 max_len: 3 charset: "ABCDEFGH" # set of possible characters to pull from when generating random string - name: "an_id_set" type: "uint-set" # (default IDArrayField) min: 0 max: 1000 distribution: "uniform" min_num: 1 max_num: 6 - name: "an_id" type: "uint" # (default IDArrayField) min: 0 max: 1000 step: 1 - name: "an_int" type: "int" # (default IntField) distribution: "uniform" # uniform or zipfian min: 20 max: 45 - name: "a_string" type: "string" # (default StringField (non-mutex)) generator_type: "random-string" # used to generate random strings rather than pulling from known set min_len: 8 max_len: 12 charset: "ZYXWVUTS" # set of possible characters to pull from when generating random string - name: "a_string_set" type: "string-set" # (default StringArrayField) generator_type: "random-string" # used to generate random strings rather than pulling from known. "distribution" is ignored. min_len: 4 max_len: 4 charset: "0123456789ABCDEF" min_num: 0 # minimum number of strings in each value (default 0) max_num: 10 # max number of strings (default to cardinality of source) # idk_params describe how data from "fields" should be ingested by IDK idk_params: primary_key_config: # if this is a single field named "id" then we'll use uint IDs, if it's # empty we'll autogen ids, and if it's anything else we'll do string keys... # yes this is a bit hacky, needs to be cleaned up. field: "_id" # fields is keyed by names of fields from top level "fields". It is # not required that all fields appear here, those that don't will # use the default ingestion. fields: an_id: - type: "ID" keyed: false mutex: true a_string: - type: "String" keyed: true mutex: true