• Stars
    star
    29,050
  • Rank 584 (Top 0.02 %)
  • Language
    Go
  • License
    Other
  • Created about 10 years ago
  • Updated 5 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

CockroachDB - the open source, cloud-native distributed SQL database.


CockroachDB is a cloud-native distributed SQL database designed to build, scale, and manage modern, data-intensive applications.

What is CockroachDB?

CockroachDB is a distributed SQL database built on a transactional and strongly-consistent key-value store. It scales horizontally; survives disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention; supports strongly-consistent ACID transactions; and provides a familiar SQL API for structuring, manipulating, and querying data.

For more details, see our FAQ or architecture document.

Docs

For guidance on installation, development, deployment, and administration, see our User Documentation.

Starting with CockroachCloud

We can run CockroachDB for you, so you don't have to run your own cluster.

See our online documentation: Quickstart with CockroachCloud

Starting with CockroachDB

  1. Install CockroachDB: using a pre-built executable or build it from source.
  2. Start a local cluster and connect to it via the built-in SQL client.
  3. Learn more about CockroachDB SQL.
  4. Use a PostgreSQL-compatible driver or ORM to build an app with CockroachDB.
  5. Explore core features, such as data replication, automatic rebalancing, and fault tolerance and recovery.

Client Drivers

CockroachDB supports the PostgreSQL wire protocol, so you can use any available PostgreSQL client drivers to connect from various languages.

Deployment

  • CockroachCloud - Steps to create a free CockroachCloud cluster on your preferred Cloud platform.
  • Manual - Steps to deploy a CockroachDB cluster manually on multiple machines.
  • Cloud - Guides for deploying CockroachDB on various cloud platforms.
  • Orchestration - Guides for running CockroachDB with popular open-source orchestration systems.

Need Help?

Building from source

See our wiki for more details.

Contributing

We welcome your contributions! If you're looking for issues to work on, try looking at the good first issue list. We do our best to tag issues suitable for new external contributors with that label, so it's a great way to find something you can help with!

See our wiki for more details.

Engineering discussions take place on our public mailing list, [email protected]. Also please join our Community Slack (there's a dedicated #contributors channel!) to ask questions, discuss your ideas, and connect with other contributors.

Design

For an in-depth discussion of the CockroachDB architecture, see our Architecture Guide. For the original design motivation, see our design doc.

Licensing

Current CockroachDB code is released under a combination of two licenses, the Business Source License (BSL) and the Cockroach Community License (CCL).

When contributing to a CockroachDB feature, you can find the relevant license in the comments at the top of each file.

For more information, see the Licensing FAQs.

Comparison with Other Databases

To see how key features of CockroachDB stack up against other databases, check out CockroachDB in Comparison.

See Also

More Repositories

1

pebble

RocksDB/LevelDB inspired key-value database in Go
Go
4,438
star
2

errors

Go error library with error portability over the network
Go
1,869
star
3

copyist

Mocking your SQL database in Go tests has never been easier.
Go
833
star
4

apd

Arbitrary-precision decimals for Go
Go
540
star
5

cockroach-operator

k8s operator for CRDB
Go
264
star
6

docs

CockroachDB user documentation
HTML
177
star
7

django-cockroachdb

CockroachDB Backend for Django
Python
155
star
8

sqlalchemy-cockroachdb

SQLAlchemy adapter for CockroachDB
Python
133
star
9

activerecord-cockroachdb-adapter

CockroachDB adapter for ActiveRecord.
Ruby
100
star
10

rpc-bench

Benchmarking various RPC implementations
Go
87
star
11

examples-orms

Sample uses of CockroachDB with popular ORMs
Go
82
star
12

helm-charts

Helm charts for cockroachdb
Go
81
star
13

examples-go

Sample uses of cockroachDB.
Go
75
star
14

terraform-provider-cockroach

Terraform provider for CockroachDB Cloud
Go
53
star
15

cdc-sink

cdc-sink is a toolkit for ingesting logical replication feeds into a CockroachDB cluster
Go
52
star
16

sequelize-cockroachdb

Use Sequelize and CockroachDB together
JavaScript
52
star
17

cockroachdb-todo-apps

CockroachDB To-Do Apps
Python
51
star
18

c-rocksdb

🚫 DEPRECATED
C++
46
star
19

datadriven

Data-Driven Testing for Go
Go
38
star
20

logtags

key/value annotations for Go contexts
Go
35
star
21

cockroach-gen

CockroachDB with pre-generated Go code
Go
33
star
22

movr

A fictional ride sharing company.
Python
32
star
23

loadgen

CockroachDB load generators
Go
30
star
24

k8s

Images and utilities to run cockroach on kubernetes
Go
26
star
25

redact

Utilities to redact Go strings for confidentiality
Go
25
star
26

c-snappy

C++
21
star
27

ui

Published assets for Cockroach Labs user interfaces
TypeScript
19
star
28

cockroachdb-parser

Apache licensed CockroachDB parser and dependencies.
Go
19
star
29

roachprod

Internal CockroachDB production testing tool
Go
15
star
30

cockroachdb-typescript

A modern cloud-native web app using TypeScript, React, Prisma, Netlify serverless functions, and CockroachDB
TypeScript
14
star
31

crlfmt

Formatter for CockroachDB's additions to the Go style guide.
Go
14
star
32

homebrew-tap

`brew install cockroachdb/tap/cockroach`
Ruby
14
star
33

c-protobuf

🚫 DEPRECATED: go-gettable version of google/protobuf
C++
13
star
34

watermill-crdb

CockroachDB Pub/Sub for the Watermill project.
Go
13
star
35

cockroachdb-cloudformation

Quickly setup dev/test CockroachDB clusters using AWS CloudFormation and Kubernetes
Shell
12
star
36

molt

Migrate Off Legacy Things - open-source tooling to assist migrations to CockroachDB.
Go
12
star
37

vendored

CockroachDB's vendored Go dependencies
Go
11
star
38

c-jemalloc

🚫 DEPRECATED
C
11
star
39

yacc

Fork of go yacc tool with increased hardcoded constants to handle larger grammars.
Go
11
star
40

examples-python

Sample uses of CockroachDB
Python
10
star
41

c-lz4

C
10
star
42

build-cache

Cache the installed output of go builds
Go
9
star
43

definitive_guide_sample_code

Sample code for The Definitive Guide to CockroachDB
JavaScript
8
star
44

quickstart-code-samples

Java
8
star
45

pcf-crdb-service-broker

Pivotal Cloud Foundry service broker for CockroachDB.
Go
8
star
46

dcos-cockroachdb-service

Framework for running CockroachDB on Mesosphere DC/OS
Python
8
star
47

backport

automatically backport pull requests
Go
7
star
48

cockroach-proto

Protocol Buffer
7
star
49

python-heroku-cockroachdb

A modern cloud-native web app using Python, Flask, Heroku, and CockroachDB
Python
7
star
50

walkabout

Walkabout generates visitor-pattern accessors for your existing go structs.
Go
6
star
51

sample-apps

6
star
52

nextjs-react-vercel-crdb-app

A CockroachDB sample app for coordinating social events using Next.js with react-bootstrap deployed on vercel
JavaScript
6
star
53

rksql

Fork of scaledata/rksql
Go
5
star
54

ddshop

TodoMVC app for distributed database workshop
JavaScript
5
star
55

postgres-test

Dockerfile
5
star
56

benchviz

A tool used for visualizing results from benchmark tests over time.
Go
5
star
57

stress

A fork of Golang's stress function.
Go
5
star
58

cockroach-cloud-sdk-go

Go client SDK for CockroachDB Cloud
Mustache
5
star
59

example-app-rust-postgres

Rust
4
star
60

protoc-gen-gogoroach

protoc (protobuf compiler) plugin for CockroachDB protobuf files
Go
4
star
61

generated-diagrams

HTML
4
star
62

roachspeed

codespeed instance
Python
4
star
63

hibernate-savepoint-fix

Java
4
star
64

scripts

Utility and helper scripts for CockroachDB contributors -
Vim Script
4
star
65

go-lab

Scripts and test programs to reveal what happens under the hood in Go.
Go
4
star
66

yarn-vendored

CockroachDB's vendored JavaScript dependencies
3
star
67

cockroachdb.github.io

Supporting static content for CockroachDB
JavaScript
3
star
68

cgo_static_boom

cgo static binary boom
Go
3
star
69

docs-docker

Docker image for the docs build
3
star
70

libedit

CockroachDB fork of the libedit terminal line-editing library
3
star
71

gostdlib

Vendor-friendly Go standard library packages
Go
3
star
72

dev

A utility for performing common CockroachDB development tasks
3
star
73

example-app-python-psycopg3

Simple CRUD application in Python using the psycopg3 driver.
Python
3
star
74

scp-interview

Shell
3
star
75

efcore.pg.cockroach

C#
3
star
76

university-event-driven-architecture-for-java-developers-app-exercises

Exercise code for Cockroach University - Event Driven Architecture for Java Developers
Java
3
star
77

bincheck

Verify CockroachDB binaries
Shell
3
star
78

eddie

Big Eddie, the golang contract enforcer
Go
3
star
79

roachperf-og

🚫 Deprecated CockroachDB performance tool — use roachprod instead!
Go
3
star
80

university-getting-started-with-sql-app-exercises

Exercise code for the Cockroach University - Getting Started with SQL for Application Developers course
Shell
3
star
81

jsonb-spec

Acceptance tests/spec for CockroachDB JSONB support, complement to scoping RFC
JavaScript
3
star
82

social-events-app

JavaScript
3
star
83

ttycolor

Conditionally expose ANSI color codes for use on a terminal
Go
2
star
84

admin-ui-components

Shared frontend components between the CRDB Admin UI and other apps
TypeScript
2
star
85

rails-crdb-app

A CockroachDB leaderboard sample application using Rails deployed on Heroku
Ruby
2
star
86

fullstack-node-cockroachdb-app

Fullstack sample application in Node.js using Sequelize
JavaScript
2
star
87

university-multi-region-course-app-exercises

exercise code for the cockroach university multi-region course
Java
2
star
88

go-plus

API library for CRL's custom Go extensions
Go
2
star
89

tokenbucket

Token bucket implementation in Go
Go
2
star
90

homebrew-go

🚫 DEPRECATED 🚫 — use `brew install go` instead
Ruby
2
star
91

build-utils

🚫 DEPRECATED: Build utilities for CockroachDB
Go
2
star
92

psycopg2-cockroachdb

Testing psycopg2 against cockroachdb
Shell
2
star
93

katacoda

In-browser, interactive tutorials on CockroachDB
Shell
2
star
94

cockroachdb-hibernate

Package to improve compatibility between CockroachDB and Hibernate
2
star
95

pulumi-poc

Demo of simple control plane built on top of Pulumi.
Go
2
star
96

avrogen

Avro generator for import testing
Go
1
star
97

redcarpet-extender

Extends the Redcarpet Markdown parser to handle CockroachDB documentation
1
star
98

s3checker

Check s3 support for bulk operations
Go
1
star
99

university-getting-started-with-node-postgres-app-exercises

JavaScript
1
star
100

university-multi-region-latency-exercises

Optimizing latency in multi-region database course exercise code
Shell
1
star