Giter Club home page Giter Club logo

skytools-dev's Introduction

= SkyTools - tools for PostgreSQL =

This is a package of tools in use in Skype for replication and
failover.  Also it includes a generic queuing mechanism PgQ and
utility library for Python scripts.

== Overview ==

It contains following tools:

=== PgQ ===

This is the queue mechanism we use. It consists of PL/pgsql, and C code
in database, with Python framework on top of it.  It is based on
snapshot based event handling ideas from Slony-I, written for general
usage.

Features:

- There can be several queues in database.
- There can be several producers than can insert into any queue.
- There can be several consumers on one queue and all consumers see
   all events.

Documentation:

- PgQ admin tool (pgqadm) usage: doc/pgq-admin.txt
- PgQ SQL API overview: doc/pgq-sql.txt
- PgQ SQL reference: http://skytools.projects.postgresql.org/pgq/

=== Londiste ===

Replication tool written in Python, using PgQ as event transport.

Features:

- Tables can be added one-by-one into set.
- Initial COPY for one table does not block event replay for other
  tables.
- Can compare tables on both sides.

Documentation:

- Londiste script usage: doc/londiste.cmdline.txt
  (also available as `man 1 londiste`)
- Londiste configuration: doc/londiste.config.txt
  (also available as `man 5 londiste`)
- Londiste reference: doc/londiste.ref.txt

=== walmgr ===

This script will setup WAL archiving, does initial backup and
runtime WAL archive and restore.


== Source tree contents ==

  doc/ 
    Documentation in asciidoc format.  Source for both html
    and man pages.

  python/
    Python modules and primary executables - walmgr, londiste, qadmin, pgqadm.

  python/pgq/
    Python framework for PgQ.

  python/londiste/
    Londiste replication.

  python/skytools/
    Low-level utilities for writing database scripts in Python.

  sql/
    Database modules.

  sql/pgq/
    Table definitions and functions for PgQ queueing.

  sql/pgq_coop/
    Functions for cooperative consuming.

  sql/londiste/
    Table definitions and functions for Londiste replication.

  sql/ticker/
    PgQ ticker written in C.
 
  scripts/
    Python scripts with lesser priority.

  lib/
    libusual C libary, for pgqd.

  debian/
    Debian packaging.  This is for creating private packages,
    official Debian packages uses it's own packagin code.

  misc/
    Random scripts used for building.

skytools-dev's People

Contributors

markokr avatar mpihlak avatar priitkustala avatar askoja avatar dimitri avatar

Stargazers

Amos Elliston avatar

Watchers

Amos Elliston avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.