{"id":24437541,"url":"https://github.com/isaacbrodsky/duckdb-zipfs","last_synced_at":"2025-06-14T15:42:44.993Z","repository":{"id":273255977,"uuid":"918295581","full_name":"isaacbrodsky/duckdb-zipfs","owner":"isaacbrodsky","description":"DuckDB extension to read files within zip archives.","archived":false,"fork":false,"pushed_at":"2025-06-06T22:01:07.000Z","size":42,"stargazers_count":34,"open_issues_count":9,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-06T23:17:55.186Z","etag":null,"topics":["duckdb","duckdb-extension","zip"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/isaacbrodsky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-01-17T16:33:12.000Z","updated_at":"2025-05-27T22:37:22.000Z","dependencies_parsed_at":"2025-03-06T01:24:46.506Z","dependency_job_id":"ce47da3c-0c2e-4c60-9ba6-3cd0fc10ce1a","html_url":"https://github.com/isaacbrodsky/duckdb-zipfs","commit_stats":null,"previous_names":["isaacbrodsky/duckdb-zipfs"],"tags_count":4,"template":false,"template_full_name":"duckdb/extension-template","purl":"pkg:github/isaacbrodsky/duckdb-zipfs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isaacbrodsky%2Fduckdb-zipfs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isaacbrodsky%2Fduckdb-zipfs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isaacbrodsky%2Fduckdb-zipfs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isaacbrodsky%2Fduckdb-zipfs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/isaacbrodsky","download_url":"https://codeload.github.com/isaacbrodsky/duckdb-zipfs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/isaacbrodsky%2Fduckdb-zipfs/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259841142,"owners_count":22920135,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["duckdb","duckdb-extension","zip"],"created_at":"2025-01-20T18:16:57.789Z","updated_at":"2025-06-14T15:42:44.983Z","avatar_url":"https://github.com/isaacbrodsky.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Extension Test](https://github.com/isaacbrodsky/duckdb-zipfs/actions/workflows/MainDistributionPipeline.yml/badge.svg)](https://github.com/isaacbrodsky/duckdb-zipfs/actions/workflows/MainDistributionPipeline.yml)\n[![DuckDB Version](https://img.shields.io/static/v1?label=duckdb\u0026message=v1.3.0\u0026color=blue)](https://github.com/duckdb/duckdb/releases/tag/v1.3.0)\n[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n\nThis is a [DuckDB](https://duckdb.org) extension that adds support for reading files from within [zip archives](https://en.wikipedia.org/wiki/ZIP_(file_format)).\n\n# Get started\n\nLoad from the [community extensions repository](https://community-extensions.duckdb.org/extensions/zipfs.html):\n```SQL\nINSTALL zipfs FROM community;\nLOAD zipfs;\n```\n\nTo read a file:\n```SQL\nSELECT * FROM 'zip://examples/a.zip/a.csv';\n```\n\nTo read a file from azure blob storage (or other file system):\n```SQL\nSELECT * FROM 'zip://az://yourstorageaccount.blob.core.windows.net/yourcontainer/examples/a.zip/a.csv';\n```\n\n## File names\n\nFile names passed into the `zip://` URL scheme are expected to end with `.zip`, which indicates the end of the zip file name. The path after\nthat is taken to be the file path within the zip archive.\n\nGlobbing within the zip archive is supported, but see below for performance limitations. A glob query looks like:\n```SQL\nSELECT * FROM 'zip://examples/a.zip/*.csv';\n```\n\nGlobbing for multiple zip files:\n```SQL\nSELECT * FROM 'zip://examples/*.zip/*.csv';\n```\n\nYou may use options to turn this behavior off and instead choose some string to split on:\n```SQL\nSET zipfs_split = \"!!\";\n\nSELECT * FROM 'zip://examples/a.zip!!b.csv'\n```\n\n## Performance considerations\n\nThis extension is intended more for convience than high performance. It does not implement a file metadata cache as `tarfs` (on which this\nextension is based) does. As such, operations which require the central directory (index) of the zip file, such as globbing files, must\nreread the central directory multiple times, once for the glob and once for each file to open.\n\n# License\n\nduckdb-zipfs Copyright 2025 Isaac Brodsky. Licensed under the [MIT License](./LICENSE).\n\n[DuckDB](https://github.com/duckdb/duckdb) Copyright 2018-2022 Stichting DuckDB Foundation (MIT License)\n\n[miniz](https://github.com/richgel999/miniz)\nCopyright 2013-2014 RAD Game Tools and Valve Software\nCopyright 2010-2014 Rich Geldreich and Tenacious Software LLC\n(MIT License)\n\n[DuckDB extension-template](https://github.com/duckdb/extension-template) Copyright 2018-2022 DuckDB Labs BV (MIT License)\n\n[duckdb_tarfs](https://github.com/Maxxen/duckdb_tarfs) (MIT license)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisaacbrodsky%2Fduckdb-zipfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fisaacbrodsky%2Fduckdb-zipfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fisaacbrodsky%2Fduckdb-zipfs/lists"}