# Wirekite Docs - [Overview](https://docs.wirekite.io/introduction/overview.md): Welcome to the Wirekite documentation and reference. Everything you need to understand what Wirekite is and how it helps with your data migration challenges — whether that's a one-time migration or an ongoing pipeline between two databases. - [Sources & Targets](https://docs.wirekite.io/introduction/matrix.md): The full engine and capability matrix — which databases Wirekite supports as a source, as a target, and as a streaming queue, across all three movement modes: Data, Replicate, and Target Sync. - [Why Wirekite](https://docs.wirekite.io/introduction/whywirekite.md): This page talks about why you should consider wirekite as your data migration solution or as your data pipeline infrastructure from your production database to data warehouse. - [Architecture](https://docs.wirekite.io/introduction/architecture.md): This is the general architecture of Wirekite, the components that make up the Wirekite data movement stack, as well as limitations of those components. For a more detailed architecture please check the Implementation page. - [Implementation](https://docs.wirekite.io/introduction/implementation.md): This page provides a more detailed view of the architecture, specifically relating to how will you implement wirekite in your infrastructure. - [MySQL / MariaDB / SingleStore](https://docs.wirekite.io/datatypes/mysql.md): This page explains how data types are mapped from a source MySQL and MariaDB database to target databases. Please visit the [MySQL Data Types Documentation](https://dev.mysql.com/doc/refman/8.4/en/data-types.html) to get a primer on the various MySQL and MariaDB datatypes. - [PostgreSQL / YugaByte / TigerData / AlloyDB](https://docs.wirekite.io/datatypes/postgres.md): This page explains how data types are mapped from a source PostgreSQL database to the target databases. Please visit the [PostgreSQL Data Types Documentation](https://www.postgresql.org/docs/current/datatype.html) to get a primer on the various PostgreSQL datatypes. - [Oracle](https://docs.wirekite.io/datatypes/oracle.md): This page explains how data types are mapped from a source Oracle database to the target databases. Please visit the [Oracle Data Types Documentation](https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/Data-Types.html#GUID-7B72E154-677A-4342-A1EA-C74C1EA928E6) to get a primer on the… - [SQL Server](https://docs.wirekite.io/datatypes/sqlserver.md): This page explains how data types are mapped from a source SQL Server database to the target databases. Please visit the [SQL Server Data Types Documentation](https://learn.microsoft.com/en-us/sql/t-sql/data-types/data-types-transact-sql?view=sql-server-ver17) to get a primer on the various SQL Serv… - [Db2](https://docs.wirekite.io/datatypes/db2.md): This page explains how data types are mapped from a source IBM Db2 (LUW) database to the target databases. See the [Db2 Data Types documentation](https://www.ibm.com/docs/en/db2/11.5?topic=elements-data-types) for a primer on the various Db2 datatypes. - [Cassandra](https://docs.wirekite.io/datatypes/cassandra.md): This page explains how Apache Cassandra (CQL) source data types are mapped to each target database. Please visit the [CQL Data Types Documentation](https://cassandra.apache.org/doc/latest/cassandra/developing/cql/types.html) for a primer on the various Cassandra datatypes. - [MySQL / MariaDB / SingleStore](https://docs.wirekite.io/sourceguides/mysql.md): This guide explains how to configure MySQL, MariaDB, or SingleStore as a source database for Wirekite data extraction and replication. - [PostgreSQL / YugaByte / TigerData / AlloyDB](https://docs.wirekite.io/sourceguides/postgres.md): This guide explains how to configure PostgreSQL (including YugaByte, TigerData, and AlloyDB) as a source database for Wirekite data extraction and replication. - [Oracle](https://docs.wirekite.io/sourceguides/oracle.md): This guide explains how to configure Oracle as a source database for Wirekite data extraction and replication. - [SQL Server](https://docs.wirekite.io/sourceguides/sqlserver.md): This guide explains how to configure SQL Server as a source database for Wirekite data extraction and replication. - [Db2](https://docs.wirekite.io/sourceguides/db2.md): This guide explains how to configure IBM Db2 (LUW) as a source database for Wirekite data extraction and replication. - [Cassandra](https://docs.wirekite.io/sourceguides/cassandra.md): This guide explains how to configure Apache Cassandra as a source database for Wirekite Target Sync. - [AWS Data Mover](https://docs.wirekite.io/sourceguides/awsmover.md): Transfers extracted data files to AWS S3 buckets for cloud-based targets. - [GCS Data Mover](https://docs.wirekite.io/sourceguides/gcsmover.md): Transfers extracted data files to Google Cloud Storage buckets for GCP-based targets. - [Snowflake Data Mover](https://docs.wirekite.io/sourceguides/snowflakemover.md): Transfers extracted data files directly to Snowflake internal stages using PUT commands. - [Snowflake](https://docs.wirekite.io/targetguides/snowflake.md): This guide explains how to configure Snowflake as a target data warehouse for Wirekite data loading and replication. - [Firebolt](https://docs.wirekite.io/targetguides/firebolt.md): This guide explains how to configure Firebolt as a target data warehouse for Wirekite data loading and replication. - [Google BigQuery](https://docs.wirekite.io/targetguides/bigquery.md): This guide explains how to configure Google BigQuery as a target database for Wirekite data loading and replication. - [Databricks](https://docs.wirekite.io/targetguides/databricks.md): This guide explains how to configure Databricks as a target database for Wirekite data loading and replication. - [Google Cloud Spanner](https://docs.wirekite.io/targetguides/spanner.md): This guide explains how to configure Google Cloud Spanner as a target database for Wirekite data loading and replication. - [PostgreSQL / YugaByte / TigerData / AlloyDB](https://docs.wirekite.io/targetguides/postgrestarget.md): This guide explains how to configure PostgreSQL (including YugaByte, TigerData, and AlloyDB) as a target database for Wirekite data loading and replication. - [MySQL / MariaDB / SingleStore](https://docs.wirekite.io/targetguides/mysqltarget.md): This guide explains how to configure MySQL, MariaDB, or SingleStore as a target database for Wirekite data loading and replication. - [Oracle](https://docs.wirekite.io/targetguides/oracletarget.md): This guide explains how to configure Oracle as a target database for Wirekite data loading and replication. - [SQL Server](https://docs.wirekite.io/targetguides/sqlservertarget.md): This guide explains how to configure SQL Server as a target database for Wirekite data loading and replication. - [Db2](https://docs.wirekite.io/targetguides/db2target.md): This guide explains how to configure IBM Db2 (LUW) as a target database for Wirekite data loading and replication. - [MongoDB](https://docs.wirekite.io/targetguides/mongodbtarget.md): This guide explains how to configure MongoDB as a target database for Wirekite data loading and replication. - [Queues Overview](https://docs.wirekite.io/queues/overview.md): How Wirekite publishes change records to message queues — supported backends, message format, ordering, batching, retries, and the operational signals you can monitor. - [Kafka and Redpanda](https://docs.wirekite.io/queues/kafka.md): How to configure a Kafka or Redpanda queue target — broker prerequisites, topic creation, compression, and connection testing. - [Google Pub/Sub](https://docs.wirekite.io/queues/pubsub.md): How to configure a Google Pub/Sub queue target — GCP setup, IAM roles, ordering, exactly-once delivery, and cost guidance. - [Installation](https://docs.wirekite.io/run/installation.md): Pick the Wirekite installation path that fits your environment. - [On-Prem Installation](https://docs.wirekite.io/run/installation/onprem.md): Install Wirekite on your own Linux host using the self-extracting installer. - [Docker Installation](https://docs.wirekite.io/run/installation/container.md): Install Wirekite as a Docker container on a Linux host. - [Cloud Installation](https://docs.wirekite.io/run/installation/cloud.md): Use Wirekite on infrastructure we host and operate. - [Command Line](https://docs.wirekite.io/run/execution/commandline.md): Run Wirekite migrations from the command line via the orchestrator. - [UX](https://docs.wirekite.io/run/execution/ux.md): Run Wirekite migrations from the full-featured web interface. - [Data Loading](https://docs.wirekite.io/run/dataloading.md): How Wirekite's extractors and loaders work together to move data from source to target databases. - [CDC Replication](https://docs.wirekite.io/run/replication.md): How Wirekite captures and applies changes for continuous database replication. - [Target Sync](https://docs.wirekite.io/run/targetsync.md): Reconcile an already-populated target back to its source in a single pass — Wirekite diffs the two databases and applies only the differences, with no CDC. - [Operations](https://docs.wirekite.io/run/operations.md): Monitor, pause, and control running Wirekite migrations using metadata tables. - [Performance Tuning](https://docs.wirekite.io/run/performance.md): Optimize Wirekite migrations for throughput, memory, and resource efficiency. - [Troubleshooting](https://docs.wirekite.io/run/troubleshooting.md): Diagnose and resolve common Wirekite migration issues. - [Wiretalk SQL Command Line](https://docs.wirekite.io/run/commandline.md): The Wiretalk SQL Command Line Utility - a universal database query tool. - [Data Validation](https://docs.wirekite.io/run/validation.md): Validate migration accuracy by comparing source and target data row-by-row. - [Application Programming Interface](https://docs.wirekite.io/apicli/api.md): Complete reference for the Wirekite REST API — every endpoint customers can call from scripts or applications. - [Command Line Interface](https://docs.wirekite.io/apicli/cli.md): Complete reference for the wirekite-cli command-line tool. Every command wraps a single REST API call. - [What is Sumatra?](https://docs.wirekite.io/sumatra/overview.md): Sumatra is a procedural language for the new class of analytical warehouses — Firebolt and Snowflake: classic stored-procedure-style programs — loops, variables, conditionals, exceptions — compiled to native binaries that run batch-shaped SQL inside the engine. - [Why Sumatra](https://docs.wirekite.io/sumatra/why.md): The case for transforming data inside the database — and the two engines that make it practical: the batch execution model and the merge write path. - [Quickstart](https://docs.wirekite.io/sumatra/quickstart.md): Install the Sumatra toolchain, connect to a Firebolt database, and write and run your first two programs. - [Types, expressions, and control flow](https://docs.wirekite.io/sumatra/language.md): The Sumatra language reference: the type system, literals, operators, NULL semantics, control-flow statements, records, and keyed collections. - [Programs and batches](https://docs.wirekite.io/sumatra/programs.md): The anatomy of a Sumatra program: parameters, declarations, the batched read block, write routing, commit grains, transactions, and pipelines. - [Exceptions and recovery](https://docs.wirekite.io/sumatra/errors.md): Sumatra's fault model: typed exceptions, the EXCEPTION block, STOP versus RAISE, durable prefixes, and how re-runs recover. - [Stored procedures](https://docs.wirekite.io/sumatra/procedures.md): Name a program, store it in the database, and run it from anywhere with EXEC — compiled once per host, with automatic recompiles when source, toolchain, or schema change. - [Learning by example](https://docs.wirekite.io/sumatra/examples.md): Nine complete Sumatra programs, graded from the smallest possible to carried state, runtime-routed writes, watermarks, exception handling, pipelines, and dynamic table names. - [The sumatra shell](https://docs.wirekite.io/sumatra/shell.md): Complete reference for the sumatra command-line shell and the offline sumatra-compile inspector — flags, statements, DSN files, exit codes, and diagnostics. - [Built-in functions](https://docs.wirekite.io/sumatra/builtins.md): The functions available in Sumatra compute position — null handling, math, text, and date/time — with their exact semantics. - [Limitations](https://docs.wirekite.io/sumatra/limitations.md): What Sumatra deliberately rejects, what is absent from the current release, and the operational boundaries to plan around. ## Optional - [Community](https://wirekite-public.slack.com/) - [Blog](https://blog.wirekite.io/series/wirekite-thoughts) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.