Documentation
¶
Overview ¶
Package importer exposes stable data import helpers backed by tinySQL's internal importer implementation.
Index ¶
- Constants
- func LookupMBTilesTile(ctx context.Context, filePath string, z, x, y int) (data []byte, found bool, err error)
- func OpenFile(ctx context.Context, filePath string, opts *ImportOptions) (*tinysql.DB, string, error)
- type ExportMBTilesOptions
- type ExportMBTilesResult
- type FuzzyImportOptions
- type GeoPackageInfo
- type GeoPackageLayer
- type ImportOptions
- type ImportResult
- func FuzzyImportCSV(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func FuzzyImportJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportCSV(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportFile(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, ...) (*ImportResult, error)
- func ImportGeoJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportGeoPackage(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, ...) (*ImportResult, error)
- func ImportGeoPackageReader(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportKML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportMBTiles(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, ...) (*ImportResult, error)
- func ImportMBTilesReader(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportOSM(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportRoutingGraph(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportShapefile(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, ...) (*ImportResult, error)
- func ImportShapefileZip(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportTopoJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportXLSX(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportXML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- func ImportYAML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, ...) (*ImportResult, error)
- type MBTilesArtifactIndex
- type MBTilesArtifactManifest
- type MBTilesArtifactOptions
- type MBTilesArtifactResult
- type MBTilesArtifactSchema
- type MBTilesArtifactTable
- type MBTilesProgress
- type MBTilesReader
- type MBTilesResourceEstimate
- type OpenMBTilesOptions
- type OpenMBTilesResult
Constants ¶
const ( MBTilesSchemaAuto = ii.MBTilesSchemaAuto MBTilesSchemaFlat = ii.MBTilesSchemaFlat MBTilesSchemaNormalized = ii.MBTilesSchemaNormalized )
Variables ¶
This section is empty.
Functions ¶
func LookupMBTilesTile ¶ added in v0.48.0
func LookupMBTilesTile(ctx context.Context, filePath string, z, x, y int) (data []byte, found bool, err error)
LookupMBTilesTile reads one tile's raw bytes directly from filePath's own SQLite storage -- an indexed point query, not a zoom-range scan -- given z/x/y in the ordinary XYZ/Slippy-map convention. found is false with a nil error when the tileset does not cover that tile. Requires the sqliteimport build tag.
Types ¶
type ExportMBTilesOptions ¶ added in v0.26.0
type ExportMBTilesOptions = ii.ExportMBTilesOptions
ExportMBTilesOptions configures writing a tileset to an .mbtiles file.
type ExportMBTilesResult ¶ added in v0.26.0
type ExportMBTilesResult = ii.ExportMBTilesResult
ExportMBTilesResult reports what an export wrote.
func ExportMBTiles ¶ added in v0.26.0
func ExportMBTiles(ctx context.Context, db *tinysql.DB, tenant, filePath string, opts *ExportMBTilesOptions) (*ExportMBTilesResult, error)
ExportMBTiles writes a tinySQL tileset to filePath as a spec-compliant MBTiles (SQLite) database, so the result is usable by any MBTiles-aware tool. Requires the sqliteimport build tag.
type FuzzyImportOptions ¶
type FuzzyImportOptions = ii.FuzzyImportOptions
FuzzyImportOptions extends ImportOptions with tolerant parsing behavior.
type GeoPackageInfo ¶ added in v0.48.0
type GeoPackageInfo = ii.GeoPackageInfo
GeoPackageInfo describes an OGC GeoPackage and its vector feature layers.
func InspectGeoPackage ¶ added in v0.48.0
func InspectGeoPackage(ctx context.Context, filePath string) (*GeoPackageInfo, error)
InspectGeoPackage lists OGC GeoPackage feature layers without importing rows.
type GeoPackageLayer ¶ added in v0.48.0
type GeoPackageLayer = ii.GeoPackageLayer
GeoPackageLayer describes one standards-discovered GeoPackage feature table.
type ImportOptions ¶
type ImportOptions = ii.ImportOptions
ImportOptions controls structured data imports.
type ImportResult ¶
type ImportResult = ii.ImportResult
ImportResult contains metadata about an import operation.
func FuzzyImportCSV ¶
func FuzzyImportCSV(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *FuzzyImportOptions) (*ImportResult, error)
FuzzyImportCSV imports malformed CSV-like data using tolerant parsing.
func FuzzyImportJSON ¶
func FuzzyImportJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *FuzzyImportOptions) (*ImportResult, error)
FuzzyImportJSON imports malformed JSON-like data using tolerant parsing. Null and missing values are excluded from column type inference.
func ImportCSV ¶
func ImportCSV(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportCSV imports CSV or TSV-like data from src.
func ImportFile ¶
func ImportFile(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, opts *ImportOptions) (*ImportResult, error)
ImportFile detects a file format and imports it into a table.
func ImportGeoJSON ¶
func ImportGeoJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportGeoJSON imports GeoJSON feature data from src.
func ImportGeoPackage ¶ added in v0.48.0
func ImportGeoPackage(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, opts *ImportOptions) (*ImportResult, error)
ImportGeoPackage imports one OGC GeoPackage feature layer from a path.
func ImportGeoPackageReader ¶ added in v0.48.0
func ImportGeoPackageReader(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportGeoPackageReader imports one OGC GeoPackage feature layer from a stream.
func ImportJSON ¶
func ImportJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportJSON imports JSON or NDJSON-like data from src. JSON null and missing fields become SQL NULL, including in strict mode.
func ImportKML ¶
func ImportKML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportKML imports KML placemark data from src.
func ImportMBTiles ¶ added in v0.14.0
func ImportMBTiles(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, opts *ImportOptions) (*ImportResult, error)
ImportMBTiles imports tiles from an MBTiles SQLite database path.
func ImportMBTilesReader ¶ added in v0.14.0
func ImportMBTilesReader(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportMBTilesReader imports MBTiles from src by spooling to a temporary SQLite file.
func ImportOSM ¶ added in v0.14.0
func ImportOSM(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportOSM imports OSM XML (.osm or .osm.xml) from src.
func ImportRoutingGraph ¶ added in v0.14.0
func ImportRoutingGraph(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportRoutingGraph imports routing graph JSON or CSV edge-list data from src.
func ImportShapefile ¶
func ImportShapefile(ctx context.Context, db *tinysql.DB, tenant, tableName, filePath string, opts *ImportOptions) (*ImportResult, error)
ImportShapefile imports an ESRI Shapefile path into a table.
func ImportShapefileZip ¶ added in v0.14.0
func ImportShapefileZip(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportShapefileZip imports a ZIP archive containing Shapefile sidecar files from src.
func ImportTopoJSON ¶ added in v0.27.0
func ImportTopoJSON(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportTopoJSON imports a TopoJSON Topology from src, resolving arc references back to plain geometry coordinates before import.
func ImportXLSX ¶ added in v0.27.0
func ImportXLSX(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportXLSX imports the first worksheet (or opts.XLSXSheet) of an Excel workbook from src.
func ImportXML ¶
func ImportXML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportXML imports row-oriented XML from src.
func ImportYAML ¶
func ImportYAML(ctx context.Context, db *tinysql.DB, tenant, tableName string, src io.Reader, opts *ImportOptions) (*ImportResult, error)
ImportYAML imports a YAML mapping or sequence of mappings from src.
type MBTilesArtifactIndex ¶ added in v0.27.1
type MBTilesArtifactIndex = ii.MBTilesArtifactIndex
type MBTilesArtifactManifest ¶ added in v0.27.1
type MBTilesArtifactManifest = ii.MBTilesArtifactManifest
func OpenMBTilesArtifact ¶ added in v0.27.1
func OpenMBTilesArtifact(ctx context.Context, artifactPath string, maxMemoryBytes int64) (*tinysql.DB, *MBTilesArtifactManifest, error)
OpenMBTilesArtifact validates an artifact before opening its read-only paged-index database.
func ValidateMBTilesArtifact ¶ added in v0.27.1
func ValidateMBTilesArtifact(ctx context.Context, artifactPath string) (*MBTilesArtifactManifest, error)
ValidateMBTilesArtifact verifies the marker, manifest, checksums, table counts, unique tile keys, index coverage and tile payload parity.
type MBTilesArtifactOptions ¶ added in v0.27.1
type MBTilesArtifactOptions = ii.MBTilesArtifactOptions
type MBTilesArtifactResult ¶ added in v0.27.1
type MBTilesArtifactResult = ii.MBTilesArtifactResult
func ImportMBTilesArtifact ¶ added in v0.27.1
func ImportMBTilesArtifact(ctx context.Context, sourcePath, artifactPath string, opts *MBTilesArtifactOptions) (*MBTilesArtifactResult, error)
ImportMBTilesArtifact builds and atomically publishes a validated dataset.tinysql directory. It is available with the sqliteimport build tag.
type MBTilesArtifactSchema ¶ added in v0.27.1
type MBTilesArtifactSchema = ii.MBTilesArtifactSchema
MBTilesArtifactSchema selects the physical representation of a published dataset.tinysql artifact.
type MBTilesArtifactTable ¶ added in v0.27.1
type MBTilesArtifactTable = ii.MBTilesArtifactTable
type MBTilesProgress ¶ added in v0.27.1
type MBTilesProgress = ii.MBTilesProgress
type MBTilesReader ¶ added in v0.27.1
type MBTilesReader = ii.MBTilesReader
func OpenMBTilesReader ¶ added in v0.27.1
type MBTilesResourceEstimate ¶ added in v0.27.1
type MBTilesResourceEstimate = ii.MBTilesResourceEstimate
type OpenMBTilesOptions ¶ added in v0.26.0
type OpenMBTilesOptions = ii.OpenMBTilesOptions
OpenMBTilesOptions configures querying an .mbtiles file in place.
type OpenMBTilesResult ¶ added in v0.26.0
type OpenMBTilesResult = ii.OpenMBTilesResult
OpenMBTilesResult reports what an in-place open exposed.
func OpenMBTiles ¶ added in v0.26.0
func OpenMBTiles(ctx context.Context, db *tinysql.DB, tenant, filePath string, opts *OpenMBTilesOptions) (*OpenMBTilesResult, error)
OpenMBTiles exposes an existing .mbtiles file as queryable tinySQL tables without copying the whole tileset. Use OpenMBTilesOptions.Zooms and WithoutTileData to work with a tileset larger than memory. Requires the sqliteimport build tag.