[{"data":1,"prerenderedAt":490},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fconnections\u002Flocal-files":3},{"id":4,"title":5,"body":6,"description":481,"extension":482,"meta":483,"navigation":484,"path":485,"redirect":486,"seo":487,"stem":488,"__hash__":489},"docs\u002Fdocs\u002Fconnections\u002Flocal-files.md","Local Files",{"type":7,"value":8,"toc":474},"minimark",[9,13,17,22,95,98,116,120,162,165,169,199,203,211,239,242,367,370,438,442,470],[10,11,5],"h1",{"id":12},"local-files",[14,15,16],"p",{},"Local file connections let you browse files, inspect metadata, query file contents with SQL, and use file-backed datasets as sources or targets in Load streams.",[18,19,21],"h2",{"id":20},"supported-formats","Supported formats",[23,24,25,45],"table",{},[26,27,28],"thead",{},[29,30,31,35,39,42],"tr",{},[32,33,34],"th",{},"Format",[32,36,38],{"align":37},"center","Source",[32,40,41],{"align":37},"Target",[32,43,44],{"align":37},"Explorer \u002F SQL",[46,47,48,61,73,84],"tbody",{},[29,49,50,54,57,59],{},[51,52,53],"td",{},"CSV",[51,55,56],{"align":37},"✓",[51,58,56],{"align":37},[51,60,56],{"align":37},[29,62,63,66,68,71],{},[51,64,65],{},"JSON",[51,67,56],{"align":37},[51,69,70],{"align":37},"✗",[51,72,56],{"align":37},[29,74,75,78,80,82],{},[51,76,77],{},"JSONL",[51,79,56],{"align":37},[51,81,56],{"align":37},[51,83,56],{"align":37},[29,85,86,89,91,93],{},[51,87,88],{},"Parquet",[51,90,56],{"align":37},[51,92,56],{"align":37},[51,94,56],{"align":37},[14,96,97],{},"JSON files can be read as sources and queried in Explorer, but stream targets use JSONL (line-delimited JSON) instead.",[14,99,100,101,105,106,109,110,115],{},"Compressed files (",[102,103,104],"code",{},".gz",", ",[102,107,108],{},".bz2",") are detected and decompressed transparently. See ",[111,112,114],"a",{"href":113},"\u002Fdocs\u002Fconnections\u002Fcompressed-files","Compressed File Support",".",[18,117,119],{"id":118},"connection-settings","Connection settings",[23,121,122,135],{},[26,123,124],{},[29,125,126,129,132],{},[32,127,128],{},"Setting",[32,130,131],{},"Required",[32,133,134],{},"Description",[46,136,137,148],{},[29,138,139,142,145],{},[51,140,141],{},"Name",[51,143,144],{},"Yes",[51,146,147],{},"Connection label",[29,149,150,153,155],{},[51,151,152],{},"Base path",[51,154,144],{},[51,156,157,158,161],{},"Root directory for file browsing (e.g. ",[102,159,160],{},"\u002Fdata\u002Fexports",")",[14,163,164],{},"The base path determines the root of the file tree shown in Data Explorer. All file access is scoped under this directory.",[18,166,168],{"id":167},"typical-workflow","Typical workflow",[170,171,172,176,183,186,189,196],"ol",{},[173,174,175],"li",{},"Create a file connection with a base path.",[173,177,178,179,115],{},"Open the connection in ",[111,180,182],{"href":181},"\u002Fdocs\u002Fdatabase-explorer\u002F","Data Explorer",[173,184,185],{},"Browse folders and files from the connection tree.",[173,187,188],{},"Preview data or inspect file metadata.",[173,190,191,192,115],{},"Query files with DuckDB-powered SQL in the ",[111,193,195],{"href":194},"\u002Fdocs\u002Fdatabase-explorer\u002Fsql-console","SQL Console",[173,197,198],{},"Use the connection as a source or target in a Load stream.",[18,200,202],{"id":201},"stream-usage","Stream usage",[14,204,205,206,210],{},"Local files work as ",[207,208,209],"strong",{},"Load-mode sources and targets",". They do not support CDC.",[212,213,214,230],"ul",{},[173,215,216,218,219,222,223,226,227,115],{},[207,217,38],{}," — point a stream at a file or directory with ",[102,220,221],{},"source.connections[].files",". Supported formats: CSV, JSON, JSONL, Parquet. ",[102,224,225],{},"paths"," must be relative to ",[102,228,229],{},"basePath",[173,231,232,234,235,238],{},[207,233,41],{}," — stream output writes to the base path in the chosen format. Supported formats: CSV, JSONL, Parquet. Set ",[102,236,237],{},"fileFormat"," in the target configuration.",[14,240,241],{},"Source example:",[243,244,249],"pre",{"className":245,"code":246,"language":247,"meta":248,"style":248},"language-json shiki shiki-themes github-light github-dark","{\n  \"source\": {\n    \"connections\": [\n      {\n        \"connectionId\": \"conn_local_files\",\n        \"files\": {\n          \"basePath\": \"\u002Fdata\u002Fimports\",\n          \"paths\": [\"orders\u002F2026-03\u002Forders.csv\"]\n        }\n      }\n    ]\n  }\n}\n","json","",[102,250,251,260,270,279,285,301,309,322,337,343,349,355,361],{"__ignoreMap":248},[252,253,256],"span",{"class":254,"line":255},"line",1,[252,257,259],{"class":258},"sVt8B","{\n",[252,261,263,267],{"class":254,"line":262},2,[252,264,266],{"class":265},"sj4cs","  \"source\"",[252,268,269],{"class":258},": {\n",[252,271,273,276],{"class":254,"line":272},3,[252,274,275],{"class":265},"    \"connections\"",[252,277,278],{"class":258},": [\n",[252,280,282],{"class":254,"line":281},4,[252,283,284],{"class":258},"      {\n",[252,286,288,291,294,298],{"class":254,"line":287},5,[252,289,290],{"class":265},"        \"connectionId\"",[252,292,293],{"class":258},": ",[252,295,297],{"class":296},"sZZnC","\"conn_local_files\"",[252,299,300],{"class":258},",\n",[252,302,304,307],{"class":254,"line":303},6,[252,305,306],{"class":265},"        \"files\"",[252,308,269],{"class":258},[252,310,312,315,317,320],{"class":254,"line":311},7,[252,313,314],{"class":265},"          \"basePath\"",[252,316,293],{"class":258},[252,318,319],{"class":296},"\"\u002Fdata\u002Fimports\"",[252,321,300],{"class":258},[252,323,325,328,331,334],{"class":254,"line":324},8,[252,326,327],{"class":265},"          \"paths\"",[252,329,330],{"class":258},": [",[252,332,333],{"class":296},"\"orders\u002F2026-03\u002Forders.csv\"",[252,335,336],{"class":258},"]\n",[252,338,340],{"class":254,"line":339},9,[252,341,342],{"class":258},"        }\n",[252,344,346],{"class":254,"line":345},10,[252,347,348],{"class":258},"      }\n",[252,350,352],{"class":254,"line":351},11,[252,353,354],{"class":258},"    ]\n",[252,356,358],{"class":254,"line":357},12,[252,359,360],{"class":258},"  }\n",[252,362,364],{"class":254,"line":363},13,[252,365,366],{"class":258},"}\n",[14,368,369],{},"Target example:",[243,371,373],{"className":245,"code":372,"language":247,"meta":248,"style":248},"{\n  \"target\": {\n    \"id\": \"conn_local_files\",\n    \"spec\": {\n      \"files\": {\n        \"fileFormat\": \"jsonl\"\n      }\n    }\n  }\n}\n",[102,374,375,379,386,397,404,411,421,425,430,434],{"__ignoreMap":248},[252,376,377],{"class":254,"line":255},[252,378,259],{"class":258},[252,380,381,384],{"class":254,"line":262},[252,382,383],{"class":265},"  \"target\"",[252,385,269],{"class":258},[252,387,388,391,393,395],{"class":254,"line":272},[252,389,390],{"class":265},"    \"id\"",[252,392,293],{"class":258},[252,394,297],{"class":296},[252,396,300],{"class":258},[252,398,399,402],{"class":254,"line":281},[252,400,401],{"class":265},"    \"spec\"",[252,403,269],{"class":258},[252,405,406,409],{"class":254,"line":287},[252,407,408],{"class":265},"      \"files\"",[252,410,269],{"class":258},[252,412,413,416,418],{"class":254,"line":303},[252,414,415],{"class":265},"        \"fileFormat\"",[252,417,293],{"class":258},[252,419,420],{"class":296},"\"jsonl\"\n",[252,422,423],{"class":254,"line":311},[252,424,348],{"class":258},[252,426,427],{"class":254,"line":324},[252,428,429],{"class":258},"    }\n",[252,431,432],{"class":254,"line":339},[252,433,360],{"class":258},[252,435,436],{"class":254,"line":345},[252,437,366],{"class":258},[18,439,441],{"id":440},"related-docs","Related docs",[212,443,444,450,454,460,464],{},[173,445,446],{},[111,447,449],{"href":448},"\u002Fdocs\u002Fconnections\u002Fconnection-management","Connection Management",[173,451,452],{},[111,453,114],{"href":113},[173,455,456],{},[111,457,459],{"href":458},"\u002Fdocs\u002Fconnections\u002Fs3-compatible-storage","S3-Compatible Storage",[173,461,462],{},[111,463,195],{"href":194},[173,465,466],{},[111,467,469],{"href":468},"\u002Fdocs\u002Fstreams\u002Fstream-config-reference","Stream Configuration Reference",[471,472,473],"style",{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":248,"searchDepth":262,"depth":262,"links":475},[476,477,478,479,480],{"id":20,"depth":262,"text":21},{"id":118,"depth":262,"text":119},{"id":167,"depth":262,"text":168},{"id":201,"depth":262,"text":202},{"id":440,"depth":262,"text":441},"Work with CSV, JSON\u002FJSONL, and Parquet files in Data Explorer, SQL workflows, and file-based stream configurations.","md",{},false,"\u002Fdocs\u002Fconnections\u002Flocal-files",null,{"title":5,"description":481},"docs\u002Fconnections\u002Flocal-files","P8wsUqwAZk2_2PvLCMTyRPKK4Z_jTVB5yA6nM7q2tdw",1783896284376]