"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[6936],{15680:(e,t,n)=>{n.d(t,{xA:()=>g,yg:()=>y});var a=n(96540);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,a,i=function(e,t){if(null==e)return{};var n,a,i={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var o=a.createContext({}),d=function(e){var t=a.useContext(o),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},g=function(e){var t=d(e.components);return a.createElement(o.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,o=e.parentName,g=s(e,["components","mdxType","originalType","parentName"]),p=d(n),u=i,y=p["".concat(o,".").concat(u)]||p[u]||m[u]||r;return n?a.createElement(y,l(l({ref:t},g),{},{components:n})):a.createElement(y,l({ref:t},g))}));function y(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,l=new Array(r);l[0]=u;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[p]="string"==typeof e?e:i,l[1]=s;for(var d=2;d<r;d++)l[d]=n[d];return a.createElement.apply(null,l)}return a.createElement.apply(null,n)}u.displayName="MDXCreateElement"},66944:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>g,contentTitle:()=>o,default:()=>y,frontMatter:()=>s,metadata:()=>d,toc:()=>p});var a=n(58168),i=n(98587),r=(n(96540),n(15680)),l=["components"],s={id:"native-batch-simple-task",title:"JSON-based batch simple task indexing",sidebar_label:"JSON-based batch (simple)"},o=void 0,d={unversionedId:"ingestion/native-batch-simple-task",id:"ingestion/native-batch-simple-task",title:"JSON-based batch simple task indexing",description:"\x3c!--",source:"@site/docs/29.0.0/ingestion/native-batch-simple-task.md",sourceDirName:"ingestion",slug:"/ingestion/native-batch-simple-task",permalink:"/docs/29.0.0/ingestion/native-batch-simple-task",draft:!1,tags:[],version:"current",frontMatter:{id:"native-batch-simple-task",title:"JSON-based batch simple task indexing",sidebar_label:"JSON-based batch (simple)"}},g={},p=[{value:"Simple task example",id:"simple-task-example",level:2},{value:"Simple task configuration",id:"simple-task-configuration",level:2},{value:"<code>dataSchema</code>",id:"dataschema",level:3},{value:"<code>ioConfig</code>",id:"ioconfig",level:3},{value:"<code>tuningConfig</code>",id:"tuningconfig",level:3},{value:"<code>partitionsSpec</code>",id:"partitionsspec",level:3},{value:"Segment pushing modes",id:"segment-pushing-modes",level:2}],m={toc:p},u="wrapper";function y(e){var t=e.components,n=(0,i.A)(e,l);return(0,r.yg)(u,(0,a.A)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,r.yg)("admonition",{type:"info"},(0,r.yg)("p",{parentName:"admonition"}," This page describes native batch ingestion using ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/ingestion-spec"},"ingestion specs"),". Refer to the ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/#batch"},"ingestion\nmethods")," table to determine which ingestion method is right for you.")),(0,r.yg)("p",null,"The simple task (",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/tasks"},"task type")," ",(0,r.yg)("inlineCode",{parentName:"p"},"index"),") executes single-threaded as a single task within the indexing service. For parallel, scalable options consider using ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/native-batch"},(0,r.yg)("inlineCode",{parentName:"a"},"index_parallel")," tasks")," or ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/multi-stage-query/"},"SQL-based batch ingestion"),"."),(0,r.yg)("h2",{id:"simple-task-example"},"Simple task example"),(0,r.yg)("p",null,"A sample task is shown below:"),(0,r.yg)("pre",null,(0,r.yg)("code",{parentName:"pre",className:"language-json"},'{\n  "type" : "index",\n  "spec" : {\n    "dataSchema" : {\n      "dataSource" : "wikipedia",\n      "timestampSpec" : {\n        "column" : "timestamp",\n        "format" : "auto"\n      },\n      "dimensionsSpec" : {\n        "dimensions": ["country", "page","language","user","unpatrolled","newPage","robot","anonymous","namespace","continent","region","city"],\n        "dimensionExclusions" : []\n      },\n      "metricsSpec" : [\n        {\n          "type" : "count",\n          "name" : "count"\n        },\n        {\n          "type" : "doubleSum",\n          "name" : "added",\n          "fieldName" : "added"\n        },\n        {\n          "type" : "doubleSum",\n          "name" : "deleted",\n          "fieldName" : "deleted"\n        },\n        {\n          "type" : "doubleSum",\n          "name" : "delta",\n          "fieldName" : "delta"\n        }\n      ],\n      "granularitySpec" : {\n        "type" : "uniform",\n        "segmentGranularity" : "DAY",\n        "queryGranularity" : "NONE",\n        "intervals" : [ "2013-08-31/2013-09-01" ]\n      }\n    },\n    "ioConfig" : {\n      "type" : "index",\n      "inputSource" : {\n        "type" : "local",\n        "baseDir" : "examples/indexing/",\n        "filter" : "wikipedia_data.json"\n       },\n       "inputFormat": {\n         "type": "json"\n       }\n    },\n    "tuningConfig" : {\n      "type" : "index",\n      "partitionsSpec": {\n        "type": "single_dim",\n        "partitionDimension": "country",\n        "targetRowsPerSegment": 5000000\n      }\n    }\n  }\n}\n')),(0,r.yg)("h2",{id:"simple-task-configuration"},"Simple task configuration"),(0,r.yg)("table",null,(0,r.yg)("thead",{parentName:"table"},(0,r.yg)("tr",{parentName:"thead"},(0,r.yg)("th",{parentName:"tr",align:null},"property"),(0,r.yg)("th",{parentName:"tr",align:null},"description"),(0,r.yg)("th",{parentName:"tr",align:null},"required?"))),(0,r.yg)("tbody",{parentName:"table"},(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"type"),(0,r.yg)("td",{parentName:"tr",align:null},"The task type, this should always be ",(0,r.yg)("inlineCode",{parentName:"td"},"index"),"."),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"id"),(0,r.yg)("td",{parentName:"tr",align:null},"The task ID. If this is not explicitly specified, Druid generates the task ID using task type, data source name, interval, and date-time stamp."),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"spec"),(0,r.yg)("td",{parentName:"tr",align:null},"The ingestion spec including the ",(0,r.yg)("a",{parentName:"td",href:"#dataschema"},"data schema"),", ",(0,r.yg)("a",{parentName:"td",href:"#ioconfig"},"IO config"),", and ",(0,r.yg)("a",{parentName:"td",href:"#tuningconfig"},"tuning config"),"."),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"context"),(0,r.yg)("td",{parentName:"tr",align:null},"Context to specify various task configuration parameters. See ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/tasks#context-parameters"},"Task context parameters")," for more details."),(0,r.yg)("td",{parentName:"tr",align:null},"no")))),(0,r.yg)("h3",{id:"dataschema"},(0,r.yg)("inlineCode",{parentName:"h3"},"dataSchema")),(0,r.yg)("p",null,"This field is required."),(0,r.yg)("p",null,"See the ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/ingestion-spec#dataschema"},(0,r.yg)("inlineCode",{parentName:"a"},"dataSchema"))," section of the ingestion docs for details."),(0,r.yg)("p",null,"If you do not specify ",(0,r.yg)("inlineCode",{parentName:"p"},"intervals")," explicitly in your dataSchema's granularitySpec, the Local Index Task will do an extra\npass over the data to determine the range to lock when it starts up.  If you specify ",(0,r.yg)("inlineCode",{parentName:"p"},"intervals")," explicitly, any rows\noutside the specified intervals will be thrown away. We recommend setting ",(0,r.yg)("inlineCode",{parentName:"p"},"intervals")," explicitly if you know the time\nrange of the data because it allows the task to skip the extra pass, and so that you don't accidentally replace data outside\nthat range if there's some stray data with unexpected timestamps."),(0,r.yg)("h3",{id:"ioconfig"},(0,r.yg)("inlineCode",{parentName:"h3"},"ioConfig")),(0,r.yg)("table",null,(0,r.yg)("thead",{parentName:"table"},(0,r.yg)("tr",{parentName:"thead"},(0,r.yg)("th",{parentName:"tr",align:null},"property"),(0,r.yg)("th",{parentName:"tr",align:null},"description"),(0,r.yg)("th",{parentName:"tr",align:null},"default"),(0,r.yg)("th",{parentName:"tr",align:null},"required?"))),(0,r.yg)("tbody",{parentName:"table"},(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"type"),(0,r.yg)("td",{parentName:"tr",align:null},'The task type, this should always be "index".'),(0,r.yg)("td",{parentName:"tr",align:null},"none"),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"inputFormat"),(0,r.yg)("td",{parentName:"tr",align:null},(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/data-formats#input-format"},(0,r.yg)("inlineCode",{parentName:"a"},"inputFormat"))," to specify how to parse input data."),(0,r.yg)("td",{parentName:"tr",align:null},"none"),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"appendToExisting"),(0,r.yg)("td",{parentName:"tr",align:null},"Creates segments as additional shards of the latest version, effectively appending to the segment set instead of replacing it. This means that you can append new segments to any datasource regardless of its original partitioning scheme. You must use the ",(0,r.yg)("inlineCode",{parentName:"td"},"dynamic")," partitioning type for the appended segments. If you specify a different partitioning type, the task fails with an error."),(0,r.yg)("td",{parentName:"tr",align:null},"false"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"dropExisting"),(0,r.yg)("td",{parentName:"tr",align:null},"If this setting is ",(0,r.yg)("inlineCode",{parentName:"td"},"false")," then ingestion proceeds as usual. Set this to ",(0,r.yg)("inlineCode",{parentName:"td"},"true")," and ",(0,r.yg)("inlineCode",{parentName:"td"},"appendToExisting")," to ",(0,r.yg)("inlineCode",{parentName:"td"},"false"),' to enforce true "replace" functionality as described next. If ',(0,r.yg)("inlineCode",{parentName:"td"},"true")," and ",(0,r.yg)("inlineCode",{parentName:"td"},"appendToExisting")," is ",(0,r.yg)("inlineCode",{parentName:"td"},"false")," and the ",(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec")," contains at least one",(0,r.yg)("inlineCode",{parentName:"td"},"interval"),", then the ingestion task will create regular segments for time chunk intervals with input data and ",(0,r.yg)("inlineCode",{parentName:"td"},"tombstones"),' for all other time chunks with no data. The task will publish the data segments and the tombstone segments together when the it publishes new segments. The net effect of the data segments and the tombstones is to completely adhere to a "replace" semantics where the  input data contained in the ',(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec")," intervals replaces all existing data in the intervals even for time chunks that would be empty in the case that no input data was associated with them. In the extreme case when the input data set that falls in the ",(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec")," intervals is empty all existing data in the interval will be replaced with an empty data set (i.e. with nothing -- all existing data will be covered by ",(0,r.yg)("inlineCode",{parentName:"td"},"tombstones"),"). If ingestion fails, no segments and tombstones will be published. The following two combinations are not supported and will make the ingestion fail with an error: ",(0,r.yg)("inlineCode",{parentName:"td"},"dropExisting")," is ",(0,r.yg)("inlineCode",{parentName:"td"},"true")," and ",(0,r.yg)("inlineCode",{parentName:"td"},"interval")," is not specified in ",(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec")," or  ",(0,r.yg)("inlineCode",{parentName:"td"},"appendToExisting")," is true and ",(0,r.yg)("inlineCode",{parentName:"td"},"dropExisting")," is ",(0,r.yg)("inlineCode",{parentName:"td"},"true"),". WARNING: this functionality is still in beta and even though we are not aware of any bugs, use with caution."),(0,r.yg)("td",{parentName:"tr",align:null},"false"),(0,r.yg)("td",{parentName:"tr",align:null},"no")))),(0,r.yg)("h3",{id:"tuningconfig"},(0,r.yg)("inlineCode",{parentName:"h3"},"tuningConfig")),(0,r.yg)("p",null,"The tuningConfig is optional and default parameters will be used if no tuningConfig is specified. See below for more details."),(0,r.yg)("table",null,(0,r.yg)("thead",{parentName:"table"},(0,r.yg)("tr",{parentName:"thead"},(0,r.yg)("th",{parentName:"tr",align:null},"property"),(0,r.yg)("th",{parentName:"tr",align:null},"description"),(0,r.yg)("th",{parentName:"tr",align:null},"default"),(0,r.yg)("th",{parentName:"tr",align:null},"required?"))),(0,r.yg)("tbody",{parentName:"table"},(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"type"),(0,r.yg)("td",{parentName:"tr",align:null},'The task type, this should always be "index".'),(0,r.yg)("td",{parentName:"tr",align:null},"none"),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxRowsInMemory"),(0,r.yg)("td",{parentName:"tr",align:null},"Used in determining when intermediate persists to disk should occur. Normally user does not need to set this, but depending on the nature of data, if rows are short in terms of bytes, user may not want to store a million rows in memory and this value should be set."),(0,r.yg)("td",{parentName:"tr",align:null},"1000000"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxBytesInMemory"),(0,r.yg)("td",{parentName:"tr",align:null},"Used in determining when intermediate persists to disk should occur. Normally this is computed internally and user does not need to set it. This value represents number of bytes to aggregate in heap memory before persisting. This is based on a rough estimate of memory usage and not actual usage. The maximum heap memory usage for indexing is maxBytesInMemory * (2 + maxPendingPersists). Note that ",(0,r.yg)("inlineCode",{parentName:"td"},"maxBytesInMemory")," also includes heap usage of artifacts created from intermediary persists. This means that after every persist, the amount of ",(0,r.yg)("inlineCode",{parentName:"td"},"maxBytesInMemory")," until next persist will decreases, and task will fail when the sum of bytes of all intermediary persisted artifacts exceeds ",(0,r.yg)("inlineCode",{parentName:"td"},"maxBytesInMemory"),"."),(0,r.yg)("td",{parentName:"tr",align:null},"1/6 of max JVM memory"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxTotalRows"),(0,r.yg)("td",{parentName:"tr",align:null},"Deprecated. Use ",(0,r.yg)("inlineCode",{parentName:"td"},"partitionsSpec")," instead. Total number of rows in segments waiting for being pushed. Used in determining when intermediate pushing should occur."),(0,r.yg)("td",{parentName:"tr",align:null},"20000000"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"numShards"),(0,r.yg)("td",{parentName:"tr",align:null},"Deprecated. Use ",(0,r.yg)("inlineCode",{parentName:"td"},"partitionsSpec")," instead. Directly specify the number of shards to create. If this is specified and ",(0,r.yg)("inlineCode",{parentName:"td"},"intervals")," is specified in the ",(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec"),", the index task can skip the determine intervals/partitions pass through the data."),(0,r.yg)("td",{parentName:"tr",align:null},"null"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"partitionDimensions"),(0,r.yg)("td",{parentName:"tr",align:null},"Deprecated. Use ",(0,r.yg)("inlineCode",{parentName:"td"},"partitionsSpec")," instead. The dimensions to partition on. Leave blank to select all dimensions. Only used with ",(0,r.yg)("inlineCode",{parentName:"td"},"forceGuaranteedRollup")," = true, will be ignored otherwise."),(0,r.yg)("td",{parentName:"tr",align:null},"null"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"partitionsSpec"),(0,r.yg)("td",{parentName:"tr",align:null},"Defines how to partition data in each timeChunk, see ",(0,r.yg)("a",{parentName:"td",href:"#partitionsspec"},"PartitionsSpec")),(0,r.yg)("td",{parentName:"tr",align:null},(0,r.yg)("inlineCode",{parentName:"td"},"dynamic")," if ",(0,r.yg)("inlineCode",{parentName:"td"},"forceGuaranteedRollup")," = false, ",(0,r.yg)("inlineCode",{parentName:"td"},"hashed")," if ",(0,r.yg)("inlineCode",{parentName:"td"},"forceGuaranteedRollup")," = true"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"indexSpec"),(0,r.yg)("td",{parentName:"tr",align:null},"Defines segment storage format options to be used at indexing time, see ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/ingestion-spec#indexspec"},"IndexSpec")),(0,r.yg)("td",{parentName:"tr",align:null},"null"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"indexSpecForIntermediatePersists"),(0,r.yg)("td",{parentName:"tr",align:null},"Defines segment storage format options to be used at indexing time for intermediate persisted temporary segments. This can be used to disable dimension/metric compression on intermediate segments to reduce memory required for final merging. However, disabling compression on intermediate segments might increase page cache use while they are used before getting merged into final segment published, see ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/ingestion-spec#indexspec"},"IndexSpec")," for possible values."),(0,r.yg)("td",{parentName:"tr",align:null},"same as indexSpec"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxPendingPersists"),(0,r.yg)("td",{parentName:"tr",align:null},"Maximum number of persists that can be pending but not started. If this limit would be exceeded by a new intermediate persist, ingestion will block until the currently-running persist finishes. Maximum heap memory usage for indexing scales with maxRowsInMemory * (2 + maxPendingPersists)."),(0,r.yg)("td",{parentName:"tr",align:null},"0 (meaning one persist can be running concurrently with ingestion, and none can be queued up)"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"forceGuaranteedRollup"),(0,r.yg)("td",{parentName:"tr",align:null},"Forces guaranteeing the ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/rollup"},"perfect rollup"),". The perfect rollup optimizes the total size of generated segments and querying time while indexing time will be increased. If this is set to true, the index task will read the entire input data twice: one for finding the optimal number of partitions per time chunk and one for generating segments. Note that the result segments would be hash-partitioned. This flag cannot be used with ",(0,r.yg)("inlineCode",{parentName:"td"},"appendToExisting")," of IOConfig. For more details, see the below ",(0,r.yg)("strong",{parentName:"td"},"Segment pushing modes")," section."),(0,r.yg)("td",{parentName:"tr",align:null},"false"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"reportParseExceptions"),(0,r.yg)("td",{parentName:"tr",align:null},"DEPRECATED. If true, exceptions encountered during parsing will be thrown and will halt ingestion; if false, unparseable rows and fields will be skipped. Setting ",(0,r.yg)("inlineCode",{parentName:"td"},"reportParseExceptions")," to true will override existing configurations for ",(0,r.yg)("inlineCode",{parentName:"td"},"maxParseExceptions")," and ",(0,r.yg)("inlineCode",{parentName:"td"},"maxSavedParseExceptions"),", setting ",(0,r.yg)("inlineCode",{parentName:"td"},"maxParseExceptions")," to 0 and limiting ",(0,r.yg)("inlineCode",{parentName:"td"},"maxSavedParseExceptions")," to no more than 1."),(0,r.yg)("td",{parentName:"tr",align:null},"false"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"pushTimeout"),(0,r.yg)("td",{parentName:"tr",align:null},"Milliseconds to wait for pushing segments. It must be >= 0, where 0 means to wait forever."),(0,r.yg)("td",{parentName:"tr",align:null},"0"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"segmentWriteOutMediumFactory"),(0,r.yg)("td",{parentName:"tr",align:null},"Segment write-out medium to use when creating segments. See ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/native-batch#segmentwriteoutmediumfactory"},"SegmentWriteOutMediumFactory"),"."),(0,r.yg)("td",{parentName:"tr",align:null},"Not specified, the value from ",(0,r.yg)("inlineCode",{parentName:"td"},"druid.peon.defaultSegmentWriteOutMediumFactory.type")," is used"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"logParseExceptions"),(0,r.yg)("td",{parentName:"tr",align:null},"If true, log an error message when a parsing exception occurs, containing information about the row where the error occurred."),(0,r.yg)("td",{parentName:"tr",align:null},"false"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxParseExceptions"),(0,r.yg)("td",{parentName:"tr",align:null},"The maximum number of parse exceptions that can occur before the task halts ingestion and fails. Overridden if ",(0,r.yg)("inlineCode",{parentName:"td"},"reportParseExceptions")," is set."),(0,r.yg)("td",{parentName:"tr",align:null},"unlimited"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxSavedParseExceptions"),(0,r.yg)("td",{parentName:"tr",align:null},'When a parse exception occurs, Druid can keep track of the most recent parse exceptions. "maxSavedParseExceptions" limits how many exception instances will be saved. These saved exceptions will be made available after the task finishes in the ',(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/tasks#task-reports"},"task completion report"),". Overridden if ",(0,r.yg)("inlineCode",{parentName:"td"},"reportParseExceptions")," is set."),(0,r.yg)("td",{parentName:"tr",align:null},"0"),(0,r.yg)("td",{parentName:"tr",align:null},"no")))),(0,r.yg)("h3",{id:"partitionsspec"},(0,r.yg)("inlineCode",{parentName:"h3"},"partitionsSpec")),(0,r.yg)("p",null,"PartitionsSpec is to describe the secondary partitioning method.\nYou should use different partitionsSpec depending on the ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/rollup"},"rollup mode")," you want.\nFor perfect rollup, you should use ",(0,r.yg)("inlineCode",{parentName:"p"},"hashed"),"."),(0,r.yg)("table",null,(0,r.yg)("thead",{parentName:"table"},(0,r.yg)("tr",{parentName:"thead"},(0,r.yg)("th",{parentName:"tr",align:null},"property"),(0,r.yg)("th",{parentName:"tr",align:null},"description"),(0,r.yg)("th",{parentName:"tr",align:null},"default"),(0,r.yg)("th",{parentName:"tr",align:null},"required?"))),(0,r.yg)("tbody",{parentName:"table"},(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"type"),(0,r.yg)("td",{parentName:"tr",align:null},"This should always be ",(0,r.yg)("inlineCode",{parentName:"td"},"hashed")),(0,r.yg)("td",{parentName:"tr",align:null},"none"),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxRowsPerSegment"),(0,r.yg)("td",{parentName:"tr",align:null},"Used in sharding. Determines how many rows are in each segment."),(0,r.yg)("td",{parentName:"tr",align:null},"5000000"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"numShards"),(0,r.yg)("td",{parentName:"tr",align:null},"Directly specify the number of shards to create. If this is specified and ",(0,r.yg)("inlineCode",{parentName:"td"},"intervals")," is specified in the ",(0,r.yg)("inlineCode",{parentName:"td"},"granularitySpec"),", the index task can skip the determine intervals/partitions pass through the data. ",(0,r.yg)("inlineCode",{parentName:"td"},"numShards")," cannot be specified if ",(0,r.yg)("inlineCode",{parentName:"td"},"maxRowsPerSegment")," is set."),(0,r.yg)("td",{parentName:"tr",align:null},"null"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"partitionDimensions"),(0,r.yg)("td",{parentName:"tr",align:null},"The dimensions to partition on. Leave blank to select all dimensions."),(0,r.yg)("td",{parentName:"tr",align:null},"null"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"partitionFunction"),(0,r.yg)("td",{parentName:"tr",align:null},"A function to compute hash of partition dimensions. See ",(0,r.yg)("a",{parentName:"td",href:"/docs/29.0.0/ingestion/native-batch#hash-partition-function"},"Hash partition function")),(0,r.yg)("td",{parentName:"tr",align:null},(0,r.yg)("inlineCode",{parentName:"td"},"murmur3_32_abs")),(0,r.yg)("td",{parentName:"tr",align:null},"no")))),(0,r.yg)("p",null,"For best-effort rollup, you should use ",(0,r.yg)("inlineCode",{parentName:"p"},"dynamic"),"."),(0,r.yg)("table",null,(0,r.yg)("thead",{parentName:"table"},(0,r.yg)("tr",{parentName:"thead"},(0,r.yg)("th",{parentName:"tr",align:null},"property"),(0,r.yg)("th",{parentName:"tr",align:null},"description"),(0,r.yg)("th",{parentName:"tr",align:null},"default"),(0,r.yg)("th",{parentName:"tr",align:null},"required?"))),(0,r.yg)("tbody",{parentName:"table"},(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"type"),(0,r.yg)("td",{parentName:"tr",align:null},"This should always be ",(0,r.yg)("inlineCode",{parentName:"td"},"dynamic")),(0,r.yg)("td",{parentName:"tr",align:null},"none"),(0,r.yg)("td",{parentName:"tr",align:null},"yes")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxRowsPerSegment"),(0,r.yg)("td",{parentName:"tr",align:null},"Used in sharding. Determines how many rows are in each segment."),(0,r.yg)("td",{parentName:"tr",align:null},"5000000"),(0,r.yg)("td",{parentName:"tr",align:null},"no")),(0,r.yg)("tr",{parentName:"tbody"},(0,r.yg)("td",{parentName:"tr",align:null},"maxTotalRows"),(0,r.yg)("td",{parentName:"tr",align:null},"Total number of rows in segments waiting for being pushed."),(0,r.yg)("td",{parentName:"tr",align:null},"20000000"),(0,r.yg)("td",{parentName:"tr",align:null},"no")))),(0,r.yg)("h2",{id:"segment-pushing-modes"},"Segment pushing modes"),(0,r.yg)("p",null,"While ingesting data using the simple task indexing, Druid creates segments from the input data and pushes them. For segment pushing,\nthe simple task index supports the following segment pushing modes based upon your type of ",(0,r.yg)("a",{parentName:"p",href:"/docs/29.0.0/ingestion/rollup"},"rollup"),":"),(0,r.yg)("ul",null,(0,r.yg)("li",{parentName:"ul"},"Bulk pushing mode: Used for perfect rollup. Druid pushes every segment at the very end of the index task. Until then, Druid stores created segments in memory and local storage of the service running the index task. This mode can cause problems if you have limited storage capacity, and is not recommended to use in production.\nTo enable bulk pushing mode, set ",(0,r.yg)("inlineCode",{parentName:"li"},"forceGuaranteedRollup")," in your TuningConfig. You can not use bulk pushing with ",(0,r.yg)("inlineCode",{parentName:"li"},"appendToExisting")," in your IOConfig."),(0,r.yg)("li",{parentName:"ul"},"Incremental pushing mode: Used for best-effort rollup. Druid pushes segments are incrementally during the course of the indexing task. The index task collects data and stores created segments in the memory and disks of the services running the task until the total number of collected rows exceeds ",(0,r.yg)("inlineCode",{parentName:"li"},"maxTotalRows"),". At that point the index task immediately pushes all segments created up until that moment, cleans up pushed segments, and continues to ingest the remaining data.")))}y.isMDXComponent=!0}}]);