← Back to all sparks
T

taxizedb

ANALYTICS
Velocity0.0

Tools for Working with Taxonomic SQL Databases. Contribute to ropensci/taxizedb development by creating an account on GitHub.

Stopped trusting the cloud to prepare its taxonomic databases and does the conversion locally.

taxonomybiodiversity-datasqliteropenscidata-provenance
Current state
taxizedb queries taxonomic databases locally rather than through rate-limited web APIs, which is what makes it usable for millions of name lookups. Version 0.2.0 established the current design: every source stored as SQLite, no credentials or ports needed, plus name-to-ID mapping functions and ports of the core taxize verbs. The most recent release changes how those databases arrive — instead of downloading a preprocessed SQLite file from the cloud, db_download_*() now fetches raw data and converts it locally for every source, because the cloud path kept breaking.
Where it's heading
The package is trading convenience for independence. Each release removes another thing that has to be working elsewhere for the package to function: hosted database preparation is gone, and where a provider disappears the package documents it rather than pretending otherwise — db_download_tpl() is now defunct because The Plant List no longer exists, though previously downloaded copies still query fine. Release cadence is slow, with multi-year gaps and a maintainer handover in 2023.
Prediction
Expect further releases to track data sources appearing and disappearing rather than adding features, since that has driven every recent change. Local conversion also shifts cost onto users, so build time and memory for the larger sources are the plausible next thing to need attention.

Recent moves

  1. 9mo ago

    Databases now built locally from raw data, not the cloud

    db_download_*() stops relying on preprocessed SQLite files hosted in the cloud and converts raw source data locally for every database, removing a dependency that had been failing intermittently. The Plant List is now defunct upstream, so its download function fails, though databases fetched earlier remain queryable.

    View source ↗
  2. 3y ago

    Patch release for a maintainer change

    An administrative release accompanying a change of maintainer, with no functional content. It sits in a four-year gap between substantive versions.

    View source ↗
  3. 5y ago

    taxa_at() retrieves ancestors at a named rank

    Adds taxa_at() for walking from a known taxon to its ancestor at a specified rank — asking which phylum a family belongs to, for example — which previously required parsing a full classification. db_download() also gains an overwrite argument, ending the need to delete old database files by hand.

    View source ↗
  4. 5y ago

    Fixes failing tests

    A test-only patch released twelve days after the substantial 0.2.0. No user-facing change.

    View source ↗
  5. 6y ago

    SQLite everywhere, three new sources, taxize verbs ported

    ⚡ SPARK

    The release that produced the package as it exists today: every source on SQLite with no credentials required, three more databases, and local ports of the taxize functions users actually reach for. The recent shift to local conversion is a refinement of the architecture set here, not a departure from it.

    View source ↗
  6. 9y ago

    Tracks the dplyr split that introduced dbplyr

    Fixes the database connection functions after dplyr moved its database backends into dbplyr. Compatibility work of the kind that dominates this package's early history.

    View source ↗