spanner-migration-tool

command module
v1.0.1-0...-386defc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 18, 2023 License: Apache-2.0 Imports: 13 Imported by: 0

README

Spanner migration tool: Spanner Evaluation and Migration

integration-tests-against-emulator code-coverage-check codecov

[!IMPORTANT] We have changed architecture of the minimal downtime migration and added Pub/Sub notifications component. There are some changes in required permissions because of the new component. Please go through Permissions page and design page of the documentation.

Overview

Spanner migration tool is a stand-alone open source tool for Cloud Spanner evaluation and migration, using data from an existing PostgreSQL, MySQL, SQL Server, Oracle or DynamoDB database. The tool ingests schema and data from either a pg_dump/mysqldump file or directly from the source database, and supports both schema and data migration. For schema migration, Spanner migration tool automatically builds a Spanner schema from the schema of the source database. This schema can be customized using the Spanner migration tool schema assistant and a new Spanner database is created using the Spanner schema built.

Installation

Installation instructions for Spanner migration tool are available here.

Documentation

Detailed documentation on how to use spanner-migration-tool is available at: https://googlecloudplatform.github.io/spanner-migration-tool

Documentation

Overview

Package main implements Spanner migration tool, a stand-alone tool for Cloud Spanner evaluation, using data from an existing PostgreSQL/MySQL database. See README.md for details.

Directories

Path Synopsis
common
constants
Package constants contains constants used across multiple other packages.
Package constants contains constants used across multiple other packages.
utils
Package utils contains common helper functions used across multiple other packages.
Package utils contains common helper functions used across multiple other packages.
TODO:(searce) Organize code in go style format to make this file more readable.
TODO:(searce) Organize code in go style format to make this file more readable.
Package internal implements database-agnostic functionality for Spanner migration tool.
Package internal implements database-agnostic functionality for Spanner migration tool.
reports
Implements structured report generation for Spanner migration tool.
Implements structured report generation for Spanner migration tool.
Utils.go contains common helper functions used across multiple other packages under performance folder.
Utils.go contains common helper functions used across multiple other packages under performance folder.
proto
Package schema provides a generic representation of database schemas.
Package schema provides a generic representation of database schemas.
sources
common
Package common creates an outline for common functionality across the multiple source databases we support.
Package common creates an outline for common functionality across the multiple source databases we support.
csv
mysql
Package MySQL handles schema and data migrations from MySQL.
Package MySQL handles schema and data migrations from MySQL.
oracle
Package oracle handles schema and data migrations from oracle.
Package oracle handles schema and data migrations from oracle.
postgres
Package postgres handles schema and data migrations from Postgres.
Package postgres handles schema and data migrations from Postgres.
sqlserver
Package sqlserver handles schema and data migrations from sqlserver.
Package sqlserver handles schema and data migrations from sqlserver.
spanner
ddl
Package ddl provides a go representation of Spanner DDL as well as helpers for building and manipulating Spanner DDL.
Package ddl provides a go representation of Spanner DDL as well as helpers for building and manipulating Spanner DDL.
writer
Package spanner provides high-level abstractions for working with Cloud Spanner that are not available from the core Cloud Spanner libraries.
Package spanner provides high-level abstractions for working with Cloud Spanner that are not available from the core Cloud Spanner libraries.
testing
Package web defines web APIs to be used with Spanner migration tool frontend.
Package web defines web APIs to be used with Spanner migration tool frontend.
session
Package web defines web APIs to be used with Spanner migration tool frontend.
Package web defines web APIs to be used with Spanner migration tool frontend.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL