diff --git a/docs/content/_index.html b/docs/content/_index.html index 7411ef56bc3..d49ac9d4141 100644 --- a/docs/content/_index.html +++ b/docs/content/_index.html @@ -26,7 +26,7 @@
Quick Start
- Get started in less than 5 minutes on macOS, Linux, Docker and Kubernetes. + Get started in < 5 minutes on macOS, Linux, Docker and Kubernetes.
@@ -39,7 +39,7 @@
Explore
- See in action cloud native, transactional, high performance and planet-scale core features. + See the core features in action.
@@ -52,7 +52,7 @@
Develop
- Learn how to develop transactional, high-performance and planet-scale applications powered by YugaByte DB. + Learn how to develop applications powered by YugaByte DB.
@@ -70,6 +70,19 @@ +
+ +
+ +
2 articles
+
Benchmark
+
+
+ Run performance and correctness benchmarks. +
+
+
+
@@ -78,7 +91,7 @@
Secure
- Secure YugaByte DB with authentication, authorization and encryption. + Secure with authentication, authorization and encryption.
@@ -91,7 +104,7 @@
Manage
- Manage YugaByte DB's day-to-day operations with extreme ease and efficiency. + Manage day-to-day operations with extreme ease and efficiency.
@@ -139,11 +152,11 @@
-
3 chapters
+
2 chapters
API Reference
- Reference for Cassandra-compatible YCQL, Redis-compatible YEDIS, and PostgreSQL-compatible YSQL (Beta) APIs + Reference for the YSQL and YCQL APIs.
@@ -156,7 +169,7 @@
Admin Reference
- YugaByte DB admin commands and utilities reference. + Admin commands and utilities reference.
@@ -169,8 +182,9 @@
FAQ
- Frequently asked questions about YugaByte DB. + Frequently asked questions.
+ diff --git a/docs/content/latest/_index.html b/docs/content/latest/_index.html index e7c5e4e507e..b08cd1cfd5c 100644 --- a/docs/content/latest/_index.html +++ b/docs/content/latest/_index.html @@ -1,7 +1,7 @@ --- title: YugaByte DB Docs description: YugaByte DB Docs -headcontent: v1.1, the latest stable version +headcontent: v1.2, the latest stable version type: list image: /images/ybsymbol_original.png weight: 1 @@ -14,7 +14,7 @@
Introduction
- An introduction to YugaByte DB. + Learn more about YugaByte DB's unique value proposition.
@@ -27,7 +27,7 @@
Quick Start
- Get started in less than 5 minutes on macOS, Linux, Docker and Kubernetes. + Get started in < 5 minutes on macOS, Linux, Docker and Kubernetes.
@@ -40,7 +40,7 @@
Explore
- See in action core features such as distributed ACID transactions, fault tolerance, global data distribution and auto rebalancing. + See core features in action.
@@ -53,7 +53,7 @@
Develop
- Learn how to develop transactional, high-performance and planet-scale applications powered by YugaByte DB. + Learn how to develop applications powered by YugaByte DB.
@@ -71,6 +71,19 @@ +
+ +
+ +
2 articles
+
Benchmark
+
+
+ Run performance and correctness benchmarks. +
+
+
+
@@ -79,7 +92,7 @@
Secure
- Secure YugaByte DB with authentication, authorization and encryption. + Secure with authentication, authorization and encryption.
@@ -92,7 +105,7 @@
Manage
- Manage YugaByte DB with extreme operational ease and efficiency. + Manage with extreme operational ease and efficiency.
@@ -118,7 +131,7 @@
Architecture
- Learn how YugaByte DB works, it's concepts and what exactly makes it so great. + Learn how YugaByte DB works.
@@ -144,7 +157,7 @@
API Reference
- Reference for Cassandra-compatible YCQL, Redis-compatible YEDIS, and PostgreSQL-compatible YSQL (Beta) APIs + Reference for the YSQL and YCQL APIs.
@@ -157,7 +170,7 @@
Admin Reference
- YugaByte DB admin commands and utilities reference. + Admin commands and utilities reference.
@@ -170,7 +183,7 @@
FAQ
- Frequently asked questions about YugaByte DB. + Frequently asked questions.
diff --git a/docs/content/latest/admin/_index.html b/docs/content/latest/admin/_index.html index f69302960da..0956d87cd8f 100644 --- a/docs/content/latest/admin/_index.html +++ b/docs/content/latest/admin/_index.html @@ -51,27 +51,29 @@ +
- +
- -
yb-master
+ +
yb-tserver
- Manages metadata of data stored in yb-tserver and coordinates cluster-wide operations. + Data node that hosts and serves user data.
- +
- -
yb-tserver
+ +
yb-master
- Data node that hosts and serves user data. + Manages metadata of data stored in yb-tserver and coordinates cluster-wide operations.
+ diff --git a/docs/content/latest/api/_index.md b/docs/content/latest/api/_index.md index 0a457414590..b41593b88a6 100644 --- a/docs/content/latest/api/_index.md +++ b/docs/content/latest/api/_index.md @@ -3,7 +3,7 @@ title: API Reference linkTitle: API Reference description: API Reference image: /images/section_icons/index/api.png -headcontent: YugaByte DB's YCQL, YEDIS and YSQL APIs enable data modeling with flexible schema, key value and relational models. +headcontent: YugaByte DB API Reference aliases: - /api/ menu: @@ -14,39 +14,26 @@ menu:
-
- -
- -
YCQL
-
-
- Complete reference for Cassandra-compatible YugaByte Cloud Query Language (YCQL) API. -
-
-
- -
- + - +
diff --git a/docs/content/latest/api/ycql/_index.md b/docs/content/latest/api/ycql/_index.md index 189df46921b..e7ea6661058 100644 --- a/docs/content/latest/api/ycql/_index.md +++ b/docs/content/latest/api/ycql/_index.md @@ -2,14 +2,14 @@ title: YCQL linkTitle: YCQL description: YugaByte Cloud Query Language (YCQL) -summary: Reference for Cassandra-compatible YCQL API +summary: Reference for the YCQL API image: /images/section_icons/api/cql.png headcontent: menu: latest: identifier: api-cassandra parent: api - weight: 1300 + weight: 3000 aliases: - /latest/api/ycql/ - /latest/api/cassandra/ @@ -18,7 +18,7 @@ showAsideToc: true --- ## Introduction -YCQL is a transactional flexible-schema API that is compatible with the [Cassandra Query Language (CQL)](http://cassandra.apache.org/doc/latest/cql/index.html). It supports the following features. +YCQL is a SQL-based flexible-schema API that has its roots in [Cassandra Query Language (CQL)](http://cassandra.apache.org/doc/latest/cql/index.html). It supports the following features. - Data definition language (DDL) statements. - Data manipulation language (DML) statements. diff --git a/docs/content/latest/api/ysql/_index.md b/docs/content/latest/api/ysql/_index.md index 97266a5b821..b704c15cb8e 100644 --- a/docs/content/latest/api/ysql/_index.md +++ b/docs/content/latest/api/ysql/_index.md @@ -1,8 +1,8 @@ --- -title: YSQL (Beta) -linkTitle: YSQL (Beta) +title: YSQL +linkTitle: YSQL description: YugaByte Structured Query Language (YSQL) [Beta] -summary: Reference for PostgreSQL-compatible YSQL API +summary: Reference for the YSQL API image: /images/section_icons/api/pgsql.png beta: /faq/product/#what-is-the-definition-of-the-beta-feature-tag aliases: @@ -12,7 +12,7 @@ menu: latest: identifier: api-postgresql parent: api - weight: 3000 + weight: 1300 isTocNested: true showAsideToc: true --- diff --git a/docs/content/latest/benchmark/_index.md b/docs/content/latest/benchmark/_index.md new file mode 100644 index 00000000000..a4fa2aa624c --- /dev/null +++ b/docs/content/latest/benchmark/_index.md @@ -0,0 +1,39 @@ +--- +title: Benchmark +linkTitle: Benchmark +description: Benchmark YugaByte DB +image: /images/section_icons/quick_start/sample_apps.png +headcontent: +menu: + latest: + identifier: benchmark + weight: 700 +--- + +
+
+ +
+ +
YCSB
+
+
+ Performance testing with Yahoo Cloud Serving Benchmark. +
+
+
+ +
+ +
+ +
+
Jepsen
+
+
+ Data safety/correctness testing under failure conditions with Jepsen. +
+
+
+ +
diff --git a/docs/content/latest/comparisons/_index.md b/docs/content/latest/comparisons/_index.md index 37876407dcf..bd38733becb 100644 --- a/docs/content/latest/comparisons/_index.md +++ b/docs/content/latest/comparisons/_index.md @@ -14,40 +14,38 @@ menu: ## NoSQL Databases -Feature | [Apache Cassandra](cassandra/) | [Redis In-Memory Store](redis/) | [MongoDB](mongodb/) | [FoundationDB](foundationdb/) |[Amazon DynamoDB](amazon-dynamodb/) | [MS Azure CosmosDB](azure-cosmos/)| YugaByte DB ---------|-----------|-------|---------|--------|-------------|--------------|----------------- -Linear Read & Write Scalability | | | || | | -Automated Failover & Repair | | | || | | -Auto Sharding | || || | | -Auto Rebalancing | || || | | | -Distributed ACID Transactions | || || | | -Consensus Driven Strongly Consistent Replication | || || | | -Strongly Consistent Secondary Indexes | || || | | -Multiple Read Consistency Levels | || || | | -Low, Predictable p99 Latencies | || || | | -High Data Density| || || | | -Open API | Cassandra QL |Redis| MongoDB QL |Proprietary KV, MongoDB QL| Proprietary KV, Document | Cassandra QL, MongoDB QL | Cassandra-compatible YCQL, Redis-compatible YEDIS -Open Source | Apache 2.0 | 3-Clause BSD| SSPL | Apache 2.0| | | Apache 2.0 +Feature | [Apache Cassandra](cassandra/) | [MongoDB](mongodb/) | [FoundationDB](foundationdb/) |[Amazon DynamoDB](amazon-dynamodb/) | [MS Azure CosmosDB](azure-cosmos/)| YugaByte DB +--------|-----------|-------|--------|-------------|--------------|----------------- +Horizontal Write Scalability | | || | | +Automated Failover & Repair | | || | | +Auto Sharding | | || | | +Distributed ACID Transactions | | || | | +Consensus Driven Strongly Consistent Replication | | || | | +Strongly Consistent Secondary Indexes | | || | | +Multiple Read Consistency Levels | | || | | +Low, Predictable p99 Latencies | | || | | +High Data Density| | || | | +API | Cassandra QL | MongoDB QL | Proprietary KV, MongoDB QL| Proprietary KV, Document | Cassandra QL, MongoDB QL | YCQL w/ Cassandra QL roots +Open Source | Apache 2.0 | SSPL | Apache 2.0| | | Apache 2.0 ## Distributed SQL Databases -Feature | Clustrix | [CockroachDB](https://www.yugabyte.com/yugabyte-db-vs-cockroachdb/) | TiDB | Amazon Aurora | [MS Azure CosmosDB](azure-cosmos/) | [Google Cloud Spanner](google-spanner/) | YugaByte DB ---------|---------|-------------|------------|----------------|----------------|-------------|----------- -Linear Write Scalability | | | | | | | -Linear Read Scalability | | | | | | | -Automated Failover & Repair | | | | | | | -Auto Sharding | | | | | | | -Auto Rebalancing | | | | | | | -Distributed ACID Transactions | | | | | | | -SQL Joins | | | | || | -Serializable Isolation Level | | | | | | | -Consensus Driven Strongly Consistent Replication | | | | | | | -Global Consistency Across Multi-DC/Regions | | | | | | | -Multiple Read Consistency Levels | | | | | | | -Low, Predictable p99 Latencies | | | | | | | -SQL Compatibility | MySQL | PostgreSQL | MySQL | MySQL, PostgreSQL | Read Only | Proprietary | PostgreSQL (BETA) -Open Source | | Apache 2.0 | Apache 2.0 | | | | Apache 2.0 +Feature | [CockroachDB](https://www.yugabyte.com/yugabyte-db-vs-cockroachdb/) | TiDB | Amazon Aurora | [MS Azure CosmosDB](azure-cosmos/) | [Google Cloud Spanner](google-spanner/) | YugaByte DB +--------|-----------------|------------|----------------|----------------|-------------|----------- +Horizontal Write Scalability | | | | | | +Automated Failover & Repair | | | | | | +Auto Sharding | | | | | | +Auto Rebalancing | | | | | | +Distributed ACID Transactions | | | | | | +SQL Joins | | | || | +Serializable Isolation Level | | | | | | +Consensus Driven Strongly Consistent Replication | | | | | | +Global Consistency Across Multi-DC/Regions | | | | | | +Multiple Read Consistency Levels | | | | | | +Low, Predictable p99 Latencies | | | | | | +SQL Compatibility | PostgreSQL | MySQL | MySQL, PostgreSQL | Read Only | Proprietary | PostgreSQL (BETA) +Open Source | Apache 2.0 | Apache 2.0 | | | | Apache 2.0 {{< note title="Note" >}} diff --git a/docs/content/latest/comparisons/cassandra.md b/docs/content/latest/comparisons/cassandra.md index 2ee3ad5338e..2d4a31076c7 100644 --- a/docs/content/latest/comparisons/cassandra.md +++ b/docs/content/latest/comparisons/cassandra.md @@ -7,7 +7,7 @@ aliases: menu: latest: parent: comparisons - weight: 1080 + weight: 1120 isTocNested: false showAsideToc: true --- diff --git a/docs/content/latest/comparisons/foundationdb.md b/docs/content/latest/comparisons/foundationdb.md index 66c633ddfe0..37e73bdeb54 100644 --- a/docs/content/latest/comparisons/foundationdb.md +++ b/docs/content/latest/comparisons/foundationdb.md @@ -7,7 +7,7 @@ aliases: menu: latest: parent: comparisons - weight: 1101 + weight: 1100 isTocNested: false showAsideToc: true --- @@ -18,7 +18,7 @@ As previously highlighted, we at YugaByte believe that both [Calvin](https://blo Assuming the FoundationDB’s API layer will get strengthened with introduction of new Layers, the core engine limitations can live forever. This will hamper adoption significantly in the context of internet-scale transactional workloads where each individual limitation gets magnified and becomes critical in its own right. -Following are the key areas of difference between YugaByte DB 1.1 (released September 2018) and FoundationDB 6.0 (released November 2018). +Following are the key areas of difference between YugaByte DB 1.2 (released March 2019) and FoundationDB 6.0 (released November 2018). ## Data Modeling @@ -50,7 +50,7 @@ As we have previously highlighted in [How Does Consensus-Based Replication Work Let’s compare the behavior of FoundationDB and a Raft-based DB such as YugaByte DB in the context of RF=2, 3 and 5. Note that while RF=2 is allowed in FoundationDB, it is disallowed in Raft-based DBs since it is not a fault-tolerant configuration. -![FDB vs. Raft](fdb-raft.png) +![FDB vs. Raft](/images/comparisons/fdb-raft.png) The above table shows that FoundationDB’s RF=2 is equivalent to Raft’s RF=3 and FoundationDB’s RF=3 is equivalent to Raft’s RF=5. While it may seem that FoundationDB and a Raft-based DB behave similarly under failure conditions, that is not the case in practice. In a 3-node cluster with RF=2, FoundationDB has 2 replicas of any given shard on only 2 of the 3 nodes. If the 1 node not hosting the replica dies then writes are not impacted. If any of the 2 nodes hosting a replica die, then FoundationDB has to rebuild the replica’s transaction log on the free node first before writes are allowed back on for that shard. So the probability of writes being impacted for a single shard because of faults is 2/3 i.e. RF/NumNodes. diff --git a/docs/content/latest/comparisons/google-spanner.md b/docs/content/latest/comparisons/google-spanner.md index 7f268d40009..1e5d4811915 100644 --- a/docs/content/latest/comparisons/google-spanner.md +++ b/docs/content/latest/comparisons/google-spanner.md @@ -7,10 +7,10 @@ aliases: menu: latest: parent: comparisons - weight: 1120 + weight: 1080 --- -YugaByte DB’s storage and replication architecture is similar to that of [Google Cloud Spanner](https://cloud.google.com/spanner/) which is also a CP database with high write availability. While Google Cloud Spanner leverages Google’s proprietary (and expensive) network infrastructure, YugaByte DB is designed work on commodity infrastructure used by most enterprise users. +YugaByte DB’s storage, replication and transactions architecture is similar to that of [Google Cloud Spanner](https://cloud.google.com/spanner/) which is also a CP database with high write availability. Both these databases are based on the design principles outlined in the original Google Spanner paper published in 2012. Note that while Google Cloud Spanner leverages Google’s proprietary (and expensive) network infrastructure, YugaByte DB is designed work on commodity infrastructure used by most enterprise users. Following blogs highlight how YugaByte DB works as a Spanner derivative. diff --git a/docs/content/latest/comparisons/redis.md b/docs/content/latest/comparisons/redis.md index cb6f623191f..e5d3ca2e230 100644 --- a/docs/content/latest/comparisons/redis.md +++ b/docs/content/latest/comparisons/redis.md @@ -7,7 +7,7 @@ aliases: menu: latest: parent: comparisons - weight: 1100 + weight: 1129 isTocNested: false showAsideToc: true --- diff --git a/docs/content/latest/develop/client-drivers/_index.html b/docs/content/latest/develop/client-drivers/_index.html index 2184df937ee..6972efb844f 100644 --- a/docs/content/latest/develop/client-drivers/_index.html +++ b/docs/content/latest/develop/client-drivers/_index.html @@ -19,13 +19,27 @@
+ +
-
C/C++
+
C++
Develop apps using C/C++. diff --git a/docs/content/latest/develop/client-drivers/c.md b/docs/content/latest/develop/client-drivers/c.md index 1cccd14ce2d..f147037b646 100644 --- a/docs/content/latest/develop/client-drivers/c.md +++ b/docs/content/latest/develop/client-drivers/c.md @@ -13,34 +13,25 @@ menu:
-
- {{% includeMarkdown "cassandra/cpp.md" /%}} -
-
- {{% includeMarkdown "redis/cpp.md" /%}} -
-
+
{{% includeMarkdown "ysql/c.md" /%}}
+
+ {{% includeMarkdown "ycql/cpp.md" /%}} +
diff --git a/docs/content/latest/develop/client-drivers/cassandra/scala.md b/docs/content/latest/develop/client-drivers/cassandra/scala.md deleted file mode 100644 index bbd4fa974c3..00000000000 --- a/docs/content/latest/develop/client-drivers/cassandra/scala.md +++ /dev/null @@ -1,4 +0,0 @@ - -## Installation - -Coming soon. \ No newline at end of file diff --git a/docs/content/latest/develop/client-drivers/cassandra/spark.md b/docs/content/latest/develop/client-drivers/cassandra/spark.md deleted file mode 100644 index bbd4fa974c3..00000000000 --- a/docs/content/latest/develop/client-drivers/cassandra/spark.md +++ /dev/null @@ -1,4 +0,0 @@ - -## Installation - -Coming soon. \ No newline at end of file diff --git a/docs/content/latest/develop/client-drivers/cpp.md b/docs/content/latest/develop/client-drivers/cpp.md index f213a499efd..c94f6b8d9ef 100644 --- a/docs/content/latest/develop/client-drivers/cpp.md +++ b/docs/content/latest/develop/client-drivers/cpp.md @@ -12,35 +12,26 @@ menu: ---
-
- {{% includeMarkdown "cassandra/cpp.md" /%}} -
-
- {{% includeMarkdown "redis/cpp.md" /%}} -
-
+
{{% includeMarkdown "ysql/cpp.md" /%}}
+
+ {{% includeMarkdown "ycql/cpp.md" /%}} +
diff --git a/docs/content/latest/develop/client-drivers/csharp.md b/docs/content/latest/develop/client-drivers/csharp.md index 7acfb65cfa7..ecc8564fce1 100644 --- a/docs/content/latest/develop/client-drivers/csharp.md +++ b/docs/content/latest/develop/client-drivers/csharp.md @@ -18,19 +18,10 @@ menu: YCQL -
  • - - - YEDIS - -
  • - {{% includeMarkdown "cassandra/csharp.md" /%}} -
    -
    - {{% includeMarkdown "redis/csharp.md" /%}} + {{% includeMarkdown "ycql/csharp.md" /%}}
    diff --git a/docs/content/latest/develop/client-drivers/go.md b/docs/content/latest/develop/client-drivers/go.md index 601dfd79b31..5d263dbbb3f 100644 --- a/docs/content/latest/develop/client-drivers/go.md +++ b/docs/content/latest/develop/client-drivers/go.md @@ -13,33 +13,24 @@ menu:
    -
    - {{% includeMarkdown "cassandra/go.md" /%}} -
    -
    - {{% includeMarkdown "redis/go.md" /%}} -
    -
    +
    {{% includeMarkdown "ysql/go.md" /%}}
    +
    + {{% includeMarkdown "ycql/go.md" /%}} +
    diff --git a/docs/content/latest/develop/client-drivers/java.md b/docs/content/latest/develop/client-drivers/java.md index d79f1030150..f1fe1069181 100644 --- a/docs/content/latest/develop/client-drivers/java.md +++ b/docs/content/latest/develop/client-drivers/java.md @@ -13,33 +13,24 @@ menu:
    -
    - {{% includeMarkdown "cassandra/java.md" /%}} -
    -
    - {{% includeMarkdown "redis/java.md" /%}} -
    -
    +
    {{% includeMarkdown "ysql/java.md" /%}}
    +
    + {{% includeMarkdown "ycql/java.md" /%}} +
    diff --git a/docs/content/latest/develop/client-drivers/nodejs.md b/docs/content/latest/develop/client-drivers/nodejs.md index 4d42e6ddb82..65c6469e301 100644 --- a/docs/content/latest/develop/client-drivers/nodejs.md +++ b/docs/content/latest/develop/client-drivers/nodejs.md @@ -13,33 +13,24 @@ menu:
    -
    - {{% includeMarkdown "cassandra/nodejs.md" /%}} -
    -
    - {{% includeMarkdown "redis/nodejs.md" /%}} -
    -
    +
    {{% includeMarkdown "ysql/nodejs.md" /%}}
    +
    + {{% includeMarkdown "ycql/nodejs.md" /%}} +
    diff --git a/docs/content/latest/develop/client-drivers/python.md b/docs/content/latest/develop/client-drivers/python.md index 695a9e3c51b..26fe38c85f0 100644 --- a/docs/content/latest/develop/client-drivers/python.md +++ b/docs/content/latest/develop/client-drivers/python.md @@ -13,33 +13,24 @@ menu:
    -
    - {{% includeMarkdown "cassandra/python.md" /%}} -
    -
    - {{% includeMarkdown "redis/python.md" /%}} -
    -
    +
    {{% includeMarkdown "ysql/python.md" /%}}
    +
    + {{% includeMarkdown "ycql/python.md" /%}} +
    diff --git a/docs/content/latest/develop/client-drivers/redis/scala.md b/docs/content/latest/develop/client-drivers/redis/scala.md deleted file mode 100644 index bbd4fa974c3..00000000000 --- a/docs/content/latest/develop/client-drivers/redis/scala.md +++ /dev/null @@ -1,4 +0,0 @@ - -## Installation - -Coming soon. \ No newline at end of file diff --git a/docs/content/latest/develop/client-drivers/redis/spark.md b/docs/content/latest/develop/client-drivers/redis/spark.md deleted file mode 100644 index bbd4fa974c3..00000000000 --- a/docs/content/latest/develop/client-drivers/redis/spark.md +++ /dev/null @@ -1,4 +0,0 @@ - -## Installation - -Coming soon. \ No newline at end of file diff --git a/docs/content/latest/develop/client-drivers/ruby.md b/docs/content/latest/develop/client-drivers/ruby.md index 7a744745264..552ecc13c69 100644 --- a/docs/content/latest/develop/client-drivers/ruby.md +++ b/docs/content/latest/develop/client-drivers/ruby.md @@ -14,7 +14,7 @@ menu:
    - A unified developer console for querying all the 3 APIs supported by YugaByte DB. + A unified developer console for querying all YugaByte DB APIs.
    diff --git a/docs/content/latest/explore/_index.md b/docs/content/latest/explore/_index.md index 7d04ef9973b..d5f64aa9eee 100644 --- a/docs/content/latest/explore/_index.md +++ b/docs/content/latest/explore/_index.md @@ -5,7 +5,10 @@ description: Explore Core Features headcontent: image: /images/section_icons/index/explore.png aliases: - - /explore/ + - /latest/explore/cloud-native/ + - /latest/explore/transactional/ + - /latest/explore/high-performance/ + - /latest/explore/planet-scale/ menu: latest: identifier: explore @@ -16,63 +19,94 @@ menu: {{< tip title="Tip" >}}You can use your [local cluster](../quick-start/) to explore all the core features of YugaByte DB.{{< /tip >}}
    diff --git a/docs/content/latest/explore/planet-scale/auto-rebalancing.md b/docs/content/latest/explore/auto-rebalancing.md similarity index 94% rename from docs/content/latest/explore/planet-scale/auto-rebalancing.md rename to docs/content/latest/explore/auto-rebalancing.md index 571cce39b4a..5bc98b61731 100644 --- a/docs/content/latest/explore/planet-scale/auto-rebalancing.md +++ b/docs/content/latest/explore/auto-rebalancing.md @@ -1,15 +1,16 @@ --- title: Auto Rebalancing -linkTitle: 3. Auto Rebalancing +linkTitle: 5. Auto Rebalancing description: Auto Rebalancing aliases: - /explore/auto-rebalancing/ - /latest/explore/auto-rebalancing/ + - /latest/explore/planet-scale/auto-rebalancing/ menu: latest: identifier: auto-rebalancing - parent: explore-planet-scale - weight: 280 + parent: explore + weight: 230 --- YugaByte DB automatically rebalances data into newly added nodes, so that the cluster can easily be expanded if more space is needed. In this tutorial, we will look at how YugaByte rebalances data while a workload is running. We will run a read-write workload using a pre-packaged sample application against a 3-node local universe with a replication factor of 3, and add nodes to it while the workload is running. We will then observe how the cluster rebalances its on-disk data as well as its memory footprint. diff --git a/docs/content/latest/explore/planet-scale/auto-sharding.md b/docs/content/latest/explore/auto-sharding.md similarity index 95% rename from docs/content/latest/explore/planet-scale/auto-sharding.md rename to docs/content/latest/explore/auto-sharding.md index a7cd8254905..94663332e9e 100644 --- a/docs/content/latest/explore/planet-scale/auto-sharding.md +++ b/docs/content/latest/explore/auto-sharding.md @@ -1,15 +1,16 @@ --- title: Auto Sharding -linkTitle: 2. Auto Sharding +linkTitle: 4. Auto Sharding description: Auto Sharding aliases: - /explore/auto-sharding/ - /latest/explore/auto-sharding/ + - /latest/explore/planet-scale/auto-sharding/ menu: latest: identifier: auto-sharding - parent: explore-planet-scale - weight: 270 + parent: explore + weight: 225 --- YugaByte DB automatically splits user tables into multiple shards, called **tablets**. The primary key for each row in the table uniquely determines the tablet the row lives in. For data distribution purposes, a hash based partitioning scheme is used. Read more about [how sharding works](../../../architecture/concepts/sharding/) in YugaByte DB. diff --git a/docs/content/latest/explore/planet-scale/binary/auto-rebalancing.md b/docs/content/latest/explore/binary/auto-rebalancing.md similarity index 100% rename from docs/content/latest/explore/planet-scale/binary/auto-rebalancing.md rename to docs/content/latest/explore/binary/auto-rebalancing.md diff --git a/docs/content/latest/explore/planet-scale/binary/auto-sharding.md b/docs/content/latest/explore/binary/auto-sharding.md similarity index 100% rename from docs/content/latest/explore/planet-scale/binary/auto-sharding.md rename to docs/content/latest/explore/binary/auto-sharding.md diff --git a/docs/content/latest/explore/postgresql/binary/fault-tolerance.md b/docs/content/latest/explore/binary/fault-tolerance.md similarity index 100% rename from docs/content/latest/explore/postgresql/binary/fault-tolerance.md rename to docs/content/latest/explore/binary/fault-tolerance.md diff --git a/docs/content/latest/explore/planet-scale/binary/global-distribution.md b/docs/content/latest/explore/binary/global-distribution.md similarity index 100% rename from docs/content/latest/explore/planet-scale/binary/global-distribution.md rename to docs/content/latest/explore/binary/global-distribution.md diff --git a/docs/content/latest/explore/postgresql/binary/linear-scalability.md b/docs/content/latest/explore/binary/linear-scalability.md similarity index 100% rename from docs/content/latest/explore/postgresql/binary/linear-scalability.md rename to docs/content/latest/explore/binary/linear-scalability.md diff --git a/docs/content/latest/explore/cloud-native/binary/observability.md b/docs/content/latest/explore/binary/observability.md similarity index 100% rename from docs/content/latest/explore/cloud-native/binary/observability.md rename to docs/content/latest/explore/binary/observability.md diff --git a/docs/content/latest/explore/high-performance/binary/tunable-reads.md b/docs/content/latest/explore/binary/tunable-reads.md similarity index 100% rename from docs/content/latest/explore/high-performance/binary/tunable-reads.md rename to docs/content/latest/explore/binary/tunable-reads.md diff --git a/docs/content/latest/explore/cloud-native/_index.md b/docs/content/latest/explore/cloud-native/_index.md deleted file mode 100644 index 458cca8839e..00000000000 --- a/docs/content/latest/explore/cloud-native/_index.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: Explore Cloud Native Features -linkTitle: Cloud Native -description: Cloud Native -headcontent: -image: /images/section_icons/explore/cloud_native.png -aliases: - - /explore/cloud-native/ -menu: - latest: - identifier: explore-cloud-native - parent: explore - weight: 205 ---- - -{{< tip title="Cloud Native Definition" >}} -Cloud native technologies empower organizations to build and run **scalable** applications in modern, **dynamic** environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach. - -These techniques enable loosely coupled systems that are **resilient**, **manageable**, and **observable**. Combined with robust **automation**, they allow engineers to make high-impact changes frequently and predictably with minimal toil. - -> Provided By the [Cloud Native Computing Foundation](https://www.cncf.io/about/charter/) -{{< /tip >}} - -YugaByte DB was architected ground-up with **cloud native** as one of its core design principles. This section explores some of the highlighted terms in the above formal definition. - -
    - - \ No newline at end of file diff --git a/docs/content/latest/explore/cloud-native/binary/fault-tolerance.md b/docs/content/latest/explore/cloud-native/binary/fault-tolerance.md deleted file mode 100644 index bb96c09d5f6..00000000000 --- a/docs/content/latest/explore/cloud-native/binary/fault-tolerance.md +++ /dev/null @@ -1,227 +0,0 @@ -## 1. Setup - create universe and table - -If you have a previously running local universe, destroy it using the following. - -```sh -$ ./bin/yb-ctl destroy -``` - -Start a new local universe with replication factor 5. - -```sh -$ ./bin/yb-ctl --replication_factor 5 create -``` - -Connect to cqlsh on node 1. - -```sh -$ ./bin/cqlsh 127.0.0.1 -``` - -```sh -Connected to local cluster at 127.0.0.1:9042. -[cqlsh 5.0.1 | Cassandra 3.9-SNAPSHOT | CQL spec 3.4.2 | Native protocol v4] -Use HELP for help. -cqlsh> -``` - -Create a CQL keyspace and a table. - -```sql -cqlsh> CREATE KEYSPACE users; -``` - -```sql -cqlsh> CREATE TABLE users.profile (id bigint PRIMARY KEY, - email text, - password text, - profile frozen>); -``` - - -## 2. Insert data through node 1 - -Now insert some data by typing the following into cqlsh shell we joined above. - -```sql -cqlsh> INSERT INTO users.profile (id, email, password, profile) VALUES - (1000, 'james.bond@yugabyte.com', 'licensed2Kill', - {'firstname': 'James', 'lastname': 'Bond', 'nickname': '007'} - ); -``` - -```sql -cqlsh> INSERT INTO users.profile (id, email, password, profile) VALUES - (2000, 'sherlock.holmes@yugabyte.com', 'itsElementary', - {'firstname': 'Sherlock', 'lastname': 'Holmes'} - ); -``` - -Query all the rows. - -```sql -cqlsh> SELECT email, profile FROM users.profile; -``` - -``` - email | profile -------------------------------+--------------------------------------------------------------- - james.bond@yugabyte.com | {'firstname': 'James', 'lastname': 'Bond', 'nickname': '007'} - sherlock.holmes@yugabyte.com | {'firstname': 'Sherlock', 'lastname': 'Holmes'} - -(2 rows) -``` - - -## Step 3. Read data through another node - -Let us now query the data from node 5. - -```sh -$ ./bin/cqlsh 127.0.0.5 -``` - -```sql -cqlsh> SELECT email, profile FROM users.profile; -``` - -``` - email | profile -------------------------------+--------------------------------------------------------------- - james.bond@yugabyte.com | {'firstname': 'James', 'lastname': 'Bond', 'nickname': '007'} - sherlock.holmes@yugabyte.com | {'firstname': 'Sherlock', 'lastname': 'Holmes'} - -(2 rows) -``` - -## 4. Verify that one node failure has no impact - -We have 5 nodes in this universe. You can verify this by running the following. - -```sh -$ ./bin/yb-ctl status -``` - -``` -... -2017-11-19 23:20:35,029 INFO: Server is running: type=tserver, node_id=1, ... -2017-11-19 23:20:35,061 INFO: Server is running: type=tserver, node_id=2, ... -2017-11-19 23:20:35,094 INFO: Server is running: type=tserver, node_id=3, ... -2017-11-19 23:20:35,128 INFO: Server is running: type=tserver, node_id=4, ... -2017-11-19 23:20:35,155 INFO: Server is running: type=tserver, node_id=5, ... -``` - -Let us simulate a node failure by removing node 5. - -```sh -$ ./bin/yb-ctl remove_node 5 -``` - -Now running the status command should show only 4 nodes: - -```sh -$ ./bin/yb-ctl status -``` - -``` -... -2017-11-19 23:20:35,029 INFO: Server is running: type=tserver, node_id=1, ... -2017-11-19 23:20:35,061 INFO: Server is running: type=tserver, node_id=2, ... -2017-11-19 23:20:35,094 INFO: Server is running: type=tserver, node_id=3, ... -2017-11-19 23:20:35,128 INFO: Server is running: type=tserver, node_id=4, ... -2017-11-19 23:22:12,997 INFO: Server type=tserver node_id=5 is not running -``` - -Now connect to node 4. - -```sh -$ ./bin/cqlsh 127.0.0.4 -``` - -Let us insert some data. - -```sql -cqlsh> INSERT INTO users.profile (id, email, password, profile) VALUES - (3000, 'austin.powers@yugabyte.com', 'imGroovy', - {'firstname': 'Austin', 'lastname': 'Powers'}); -``` - -Now query the data. - -```sql -cqlsh> SELECT email, profile FROM users.profile; -``` - -``` - email | profile -------------------------------+--------------------------------------------------------------- - james.bond@yugabyte.com | {'firstname': 'James', 'lastname': 'Bond', 'nickname': '007'} - sherlock.holmes@yugabyte.com | {'firstname': 'Sherlock', 'lastname': 'Holmes'} - austin.powers@yugabyte.com | {'firstname': 'Austin', 'lastname': 'Powers'} - -(3 rows) -``` - - -## 5. Verify that second node failure has no impact - -This cluster was created with replication factor 5 and hence needs only 3 replicas to make consensus. Therefore, it is resilient to 2 failures without any data loss. Let us simulate another node failure. - -```sh -$ ./bin/yb-ctl remove_node 1 -``` - -We can check the status to verify: - -```sh -$ ./bin/yb-ctl status -``` - -``` -... -2017-11-19 23:31:02,183 INFO: Server type=tserver node_id=1 is not running -2017-11-19 23:31:02,217 INFO: Server is running: type=tserver, node_id=2, ... -2017-11-19 23:31:02,245 INFO: Server is running: type=tserver, node_id=3, ... -2017-11-19 23:31:02,278 INFO: Server is running: type=tserver, node_id=4, ... -2017-11-19 23:31:02,308 INFO: Server type=tserver node_id=5 is not running -``` - -Now let us connect to node 2. - -```sh -$ ./bin/cqlsh 127.0.0.2 -``` - -Insert some data. - -```sql -cqlsh> INSERT INTO users.profile (id, email, password, profile) VALUES - (4000, 'superman@yugabyte.com', 'iCanFly', - {'firstname': 'Clark', 'lastname': 'Kent'}); -``` - -Run the query. - -```sql -cqlsh> SELECT email, profile FROM users.profile; -``` - -``` - email | profile -------------------------------+--------------------------------------------------------------- - superman@yugabyte.com | {'firstname': 'Clark', 'lastname': 'Kent'} - james.bond@yugabyte.com | {'firstname': 'James', 'lastname': 'Bond', 'nickname': '007'} - sherlock.holmes@yugabyte.com | {'firstname': 'Sherlock', 'lastname': 'Holmes'} - austin.powers@yugabyte.com | {'firstname': 'Austin', 'lastname': 'Powers'} - -(4 rows) -``` - - -## 6. Clean up (optional) - -Optionally, you can shutdown the local cluster created in Step 1. - -```sh -$ ./bin/yb-ctl destroy -``` diff --git a/docs/content/latest/explore/cloud-native/binary/linear-scalability.md b/docs/content/latest/explore/cloud-native/binary/linear-scalability.md deleted file mode 100644 index 7df15323b7c..00000000000 --- a/docs/content/latest/explore/cloud-native/binary/linear-scalability.md +++ /dev/null @@ -1,78 +0,0 @@ -## 1. Setup - create universe - -If you have a previously running local universe, destroy it using the following. - -```sh -$ ./bin/yb-ctl destroy -``` - -Start a new local cluster - by default, this will create a 3-node universe with a replication factor of 3. We configure the number of [shards](../../../architecture/concepts/sharding/)(aka tablets) per table per tserver to 4 so that we can better observe the load balancing during scale-up and scale-down. Each table will now have 4 tablet-leaders in each tserver and with replication factor 3, there will be 2 tablet-followers for each tablet-leader distributed in the 2 other tservers. So each tserver will have 12 tablets (i.e. sum of 4 tablet-leaders and 8 tablet-followers) per table. - -```sh -$ ./bin/yb-ctl --num_shards_per_tserver 4 create -``` - -## 2. Run sample key-value app - -Run the Cassandra sample key-value app against the local universe by typing the following command. - -```sh -$ java -jar ./java/yb-sample-apps.jar --workload CassandraKeyValue \ - --nodes 127.0.0.1:9042 \ - --num_threads_write 1 \ - --num_threads_read 4 \ - --value_size 4096 -``` - -The sample application prints some stats while running, which is also shown below. You can read more details about the output of the sample applications [here](../../../quick-start/run-sample-apps/). - -``` -2018-05-10 09:10:19,538 [INFO|...] Read: 8988.22 ops/sec (0.44 ms/op), 818159 total ops | Write: 1095.77 ops/sec (0.91 ms/op), 97120 total ops | ... -2018-05-10 09:10:24,539 [INFO|...] Read: 9110.92 ops/sec (0.44 ms/op), 863720 total ops | Write: 1034.06 ops/sec (0.97 ms/op), 102291 total ops | ... -``` - -## 3. Observe IOPS per node - -You can check a lot of the per-node stats by browsing to the tablet-servers page. It should look like this. The total read and write IOPS per node are highlighted in the screenshot below. Note that both the reads and the writes are roughly the same across all the nodes indicating uniform usage across the nodes. - -![Read and write IOPS with 3 nodes](/images/ce/linear-scalability-3-nodes.png) - -## 4. Add node and observe linear scale out - -Add a node to the universe. - -```sh -$ ./bin/yb-ctl --num_shards_per_tserver 4 add_node -``` - -Now we should have 4 nodes. Refresh the tablet-servers page to see the stats update. In a short time, you should see the new node performing a comparable number of reads and writes as the other nodes. The 36 tablets will now get distributed evenly across all the 4 nodes, leading to each node having 9 tablets. - -The YugaByte DB universe automatically let the client know to use the newly added node for serving queries. This scaling out of client queries is completely transparent to the application logic, allowing the application to scale linearly for both reads and writes. - -![Read and write IOPS with 4 nodes - Rebalancing in progress](/images/ce/linear-scalability-4-nodes.png) - -![Read and write IOPS with 4 nodes](/images/ce/linear-scalability-4-nodes-balanced.png) - -## 5. Remove node and observe linear scale in - -Remove the recently added node from the universe. - -```sh -$ ./bin/yb-ctl remove_node 4 -``` - -- Refresh the tablet-servers page to see the stats update. The `Time since heartbeat` value for that node will keep increasing. Once that number reaches 60s (i.e. 1 minute), YugaByte DB will change the status of that node from ALIVE to DEAD. Note that at this time the universe is running in an under-replicated state for some subset of tablets. - -![Read and write IOPS with 4th node dead](/images/ce/linear-scalability-4-nodes-dead.png) - -- After 300s (i.e. 5 minutes), YugaByte DB's remaining nodes will re-spawn new tablets that were lost with the loss of node 4. Each remaining node's tablet count will increase from 9 to 12, thus getting back to the original state of 36 total tablets. - -![Read and write IOPS with 4th node removed](/images/ce/linear-scalability-3-nodes-rebalanced.png) - -## 6. Clean up (optional) - -Optionally, you can shutdown the local cluster created in Step 1. - -```sh -$ ./bin/yb-ctl destroy -``` diff --git a/docs/content/latest/explore/planet-scale/docker/auto-rebalancing.md b/docs/content/latest/explore/docker/auto-rebalancing.md similarity index 100% rename from docs/content/latest/explore/planet-scale/docker/auto-rebalancing.md rename to docs/content/latest/explore/docker/auto-rebalancing.md diff --git a/docs/content/latest/explore/planet-scale/docker/auto-sharding.md b/docs/content/latest/explore/docker/auto-sharding.md similarity index 100% rename from docs/content/latest/explore/planet-scale/docker/auto-sharding.md rename to docs/content/latest/explore/docker/auto-sharding.md diff --git a/docs/content/latest/explore/cloud-native/docker/fault-tolerance.md b/docs/content/latest/explore/docker/fault-tolerance.md similarity index 100% rename from docs/content/latest/explore/cloud-native/docker/fault-tolerance.md rename to docs/content/latest/explore/docker/fault-tolerance.md diff --git a/docs/content/latest/explore/cloud-native/docker/linear-scalability.md b/docs/content/latest/explore/docker/linear-scalability.md similarity index 100% rename from docs/content/latest/explore/cloud-native/docker/linear-scalability.md rename to docs/content/latest/explore/docker/linear-scalability.md diff --git a/docs/content/latest/explore/cloud-native/docker/observability.md b/docs/content/latest/explore/docker/observability.md similarity index 100% rename from docs/content/latest/explore/cloud-native/docker/observability.md rename to docs/content/latest/explore/docker/observability.md diff --git a/docs/content/latest/explore/high-performance/docker/tunable-reads.md b/docs/content/latest/explore/docker/tunable-reads.md similarity index 100% rename from docs/content/latest/explore/high-performance/docker/tunable-reads.md rename to docs/content/latest/explore/docker/tunable-reads.md diff --git a/docs/content/latest/explore/cloud-native/fault-tolerance.md b/docs/content/latest/explore/fault-tolerance.md similarity index 76% rename from docs/content/latest/explore/cloud-native/fault-tolerance.md rename to docs/content/latest/explore/fault-tolerance.md index a70325b0709..0da277d1547 100644 --- a/docs/content/latest/explore/cloud-native/fault-tolerance.md +++ b/docs/content/latest/explore/fault-tolerance.md @@ -5,17 +5,21 @@ description: Fault Tolerance aliases: - /explore/fault-tolerance/ - /latest/explore/fault-tolerance/ + - /latest/explore/cloud-native/fault-tolerance/ + - /latest/explore/postgresql/fault-tolerance/ menu: latest: identifier: fault-tolerance - parent: explore-cloud-native + parent: explore weight: 215 --- -YugaByte DB can automatically handle failures and therefore provides [high availability](../../../architecture/core-functions/high-availability/) for both Redis as well as Cassandra tables. In this tutorial, we will look at how fault tolerance is achieved for Cassandra, but the same steps would work for Redis tables as well. Except for the Kubernetes example, we will create these tables with a replication factor = 5 that allows a [fault tolerance](../../../architecture/concepts/replication/) of 2. We will then insert some data through one of the nodes, and query the data from another node. We will then simulate two node failures (one by one) and make sure we are able to successfully query and write data after each of these failures. +YugaByte DB can automatically handle failures and therefore provides [high availability](../../../architecture/core-functions/high-availability/) for YSQL tables. We will create these tables with a replication factor = 3 that allows a [fault tolerance](../../../architecture/concepts/docdb/replication/) of 1. This means the cluster will remain available for both reads and writes even if one node fails. However, if another node fails bringing the number of failures to 2, then writes will become unavailable on the cluster in order to preserve data consistency. + If you haven't installed YugaByte DB yet, do so first by following the [Quick Start](../../../quick-start/install/) guide. +
    - {{% includeMarkdown "cassandra/backing-up-data.md" /%}} + {{% includeMarkdown "ycql/backing-up-data.md" /%}}
    diff --git a/docs/content/latest/manage/backup-restore/restoring-data.md b/docs/content/latest/manage/backup-restore/restoring-data.md index 2ff73dd04a2..a288c7785fe 100644 --- a/docs/content/latest/manage/backup-restore/restoring-data.md +++ b/docs/content/latest/manage/backup-restore/restoring-data.md @@ -19,14 +19,14 @@ This page covers how to restore data from a backup. In order to create a backup,
  • - Cassandra + YCQL
  • - {{% includeMarkdown "cassandra/restoring-data.md" /%}} + {{% includeMarkdown "ycql/restoring-data.md" /%}}
    diff --git a/docs/content/latest/manage/backup-restore/cassandra/backing-up-data.md b/docs/content/latest/manage/backup-restore/ycql/backing-up-data.md similarity index 100% rename from docs/content/latest/manage/backup-restore/cassandra/backing-up-data.md rename to docs/content/latest/manage/backup-restore/ycql/backing-up-data.md diff --git a/docs/content/latest/manage/backup-restore/cassandra/restoring-data.md b/docs/content/latest/manage/backup-restore/ycql/restoring-data.md similarity index 100% rename from docs/content/latest/manage/backup-restore/cassandra/restoring-data.md rename to docs/content/latest/manage/backup-restore/ycql/restoring-data.md diff --git a/docs/content/latest/quick-start/_index.md b/docs/content/latest/quick-start/_index.md index ae7fd91d2ce..67545223b82 100644 --- a/docs/content/latest/quick-start/_index.md +++ b/docs/content/latest/quick-start/_index.md @@ -46,38 +46,14 @@ We do not recommend a local multi-node cluster setup on a single host for produc
    - - - - @@ -86,7 +62,7 @@ We do not recommend a local multi-node cluster setup on a single host for produc
    -
    6. Run Sample Apps
    +
    4. Run Sample Apps
    Run pre-packaged sample apps. diff --git a/docs/content/latest/quick-start/binary/create-local-cluster.md b/docs/content/latest/quick-start/binary/create-local-cluster.md index 326353cba23..9153f28a2dd 100644 --- a/docs/content/latest/quick-start/binary/create-local-cluster.md +++ b/docs/content/latest/quick-start/binary/create-local-cluster.md @@ -3,10 +3,9 @@ We will use the [`yb-ctl`](../../admin/yb-ctl/) utility located in the `bin` directory of the YugaByte DB package to create and administer a local cluster. The default data directory used is `/tmp/yugabyte-local-cluster`. You can change this directory with the `--data_dir` option. Detailed output for the *create* command is available in [yb-ctl Reference](../../admin/yb-ctl/#create-cluster). ```sh -$ ./bin/yb-ctl create +$ ./bin/yb-ctl create --enable_postgres ``` - You can now check `/tmp/yugabyte-local-cluster` to see `node-i` directories created where `i` represents the `node_id` of the node. Inside each such directory, there will be 2 disks `disk1` and `disk2` to highlight the fact that YugaByte DB can work with multiple disks at the same time. Note that the IP address of `node-i` is by default set to `127.0.0.i`. ## 2. Check cluster status with yb-ctl @@ -18,12 +17,12 @@ $ ./bin/yb-ctl status ``` ```sh -2019-01-29 20:42:43,425 INFO: Server is running: type=master, node_id=1, PID=13668, admin service=http://127.0.0.1:7000 -2019-01-29 20:42:43,432 INFO: Server is running: type=master, node_id=2, PID=13671, admin service=http://127.0.0.2:7000 -2019-01-29 20:42:43,439 INFO: Server is running: type=master, node_id=3, PID=13674, admin service=http://127.0.0.3:7000 -2019-01-29 20:42:43,446 INFO: Server is running: type=tserver, node_id=1, PID=13677, admin service=http://127.0.0.1:9000, cql service=127.0.0.1:9042, redis service=127.0.0.1:6379 -2019-01-29 20:42:43,453 INFO: Server is running: type=tserver, node_id=2, PID=13680, admin service=http://127.0.0.2:9000, cql service=127.0.0.2:9042, redis service=127.0.0.2:6379 -2019-01-29 20:42:43,460 INFO: Server is running: type=tserver, node_id=3, PID=13687, admin service=http://127.0.0.3:9000, cql service=127.0.0.3:9042, redis service=127.0.0.3:6379 +2019-01-15 22:18:40,387 INFO: Server is running: type=master, node_id=1, PID=12818, admin service=http://127.0.0.1:7000 +2019-01-15 22:18:40,394 INFO: Server is running: type=master, node_id=2, PID=12821, admin service=http://127.0.0.2:7000 +2019-01-15 22:18:40,401 INFO: Server is running: type=master, node_id=3, PID=12824, admin service=http://127.0.0.3:7000 +2019-01-15 22:18:40,408 INFO: Server is running: type=tserver, node_id=1, PID=12827, admin service=http://127.0.0.1:9000, cql service=127.0.0.1:9042, redis service=127.0.0.1:6379, pgsql service=127.0.0.1:5433 +2019-01-15 22:18:40,415 INFO: Server is running: type=tserver, node_id=2, PID=12830, admin service=http://127.0.0.2:9000, cql service=127.0.0.2:9042, redis service=127.0.0.2:6379, pgsql service=127.0.0.2:5433 +2019-01-15 22:18:40,422 INFO: Server is running: type=tserver, node_id=3, PID=12833, admin service=http://127.0.0.3:9000, cql service=127.0.0.3:9042, redis service=127.0.0.3:6379, pgsql service=127.0.0.3:5433 ``` ## 3. Check cluster status with Admin UI diff --git a/docs/content/latest/quick-start/binary/test-cassandra.md b/docs/content/latest/quick-start/binary/test-cassandra.md deleted file mode 100644 index e3f016523f7..00000000000 --- a/docs/content/latest/quick-start/binary/test-cassandra.md +++ /dev/null @@ -1,29 +0,0 @@ ---- ---- - -- Run cqlsh to connect to the service. - -You can do this as shown below. - -```sh -$ ./bin/cqlsh localhost -``` - -``` -Connected to local cluster at 127.0.0.1:9042. -[cqlsh 5.0.1 | Cassandra 3.9-SNAPSHOT | CQL spec 3.4.2 | Native protocol v4] -Use HELP for help. -cqlsh> -``` - -- Run a cql command to verify it is working. - -```sql -cqlsh> describe keyspaces; -``` - -``` -system_schema system_auth system - -cqlsh> -``` diff --git a/docs/content/latest/quick-start/binary/test-postgresql.md b/docs/content/latest/quick-start/binary/test-postgresql.md deleted file mode 100644 index 254d1ea8509..00000000000 --- a/docs/content/latest/quick-start/binary/test-postgresql.md +++ /dev/null @@ -1,47 +0,0 @@ ---- ---- - - -- Destroy any existing cluster. - -```sh -$ ./bin/yb-ctl destroy -``` - -- Create a new cluster with YSQL API enabled. Note the additional option `enable_postgres` passed to the create cluster command. - -You can do this as shown below. -```sh -$ ./bin/yb-ctl create --enable_postgres -``` - - -- Check status of the cluster and confirm that the special `postgres` node is now running. This is the node we will connect postgres clients to. Internally, this node will use the various tserver nodes to distribute the data across the entire cluster. - -```sh -$ ./bin/yb-ctl status -``` - -``` -2019-01-15 22:18:40,387 INFO: Server is running: type=master, node_id=1, PID=12818, admin service=http://127.0.0.1:7000 -2019-01-15 22:18:40,394 INFO: Server is running: type=master, node_id=2, PID=12821, admin service=http://127.0.0.2:7000 -2019-01-15 22:18:40,401 INFO: Server is running: type=master, node_id=3, PID=12824, admin service=http://127.0.0.3:7000 -2019-01-15 22:18:40,408 INFO: Server is running: type=tserver, node_id=1, PID=12827, admin service=http://127.0.0.1:9000, cql service=127.0.0.1:9042, redis service=127.0.0.1:6379, pgsql service=127.0.0.1:5433 -2019-01-15 22:18:40,415 INFO: Server is running: type=tserver, node_id=2, PID=12830, admin service=http://127.0.0.2:9000, cql service=127.0.0.2:9042, redis service=127.0.0.2:6379, pgsql service=127.0.0.2:5433 -2019-01-15 22:18:40,422 INFO: Server is running: type=tserver, node_id=3, PID=12833, admin service=http://127.0.0.3:9000, cql service=127.0.0.3:9042, redis service=127.0.0.3:6379, pgsql service=127.0.0.3:5433 -``` - -- Run psql to connect to the service. - -You can do this as shown below. - -```sh -$ ./bin/psql -h 127.0.0.1 -p 5433 -U postgres -``` - -``` -psql (10.3, server 10.4) -Type "help" for help. - -postgres=# -``` diff --git a/docs/content/latest/quick-start/binary/test-ysql.md b/docs/content/latest/quick-start/binary/test-ysql.md new file mode 100644 index 00000000000..cee1d012d47 --- /dev/null +++ b/docs/content/latest/quick-start/binary/test-ysql.md @@ -0,0 +1,15 @@ +--- +--- + +Run psql to connect to the service. + +```sh +$ ./bin/psql -h 127.0.0.1 -p 5433 -U postgres +``` + +``` +psql (10.3, server 10.4) +Type "help" for help. + +postgres=# +``` diff --git a/docs/content/latest/quick-start/docker/create-local-cluster.md b/docs/content/latest/quick-start/docker/create-local-cluster.md index 9a1c7370616..2df7466b66b 100644 --- a/docs/content/latest/quick-start/docker/create-local-cluster.md +++ b/docs/content/latest/quick-start/docker/create-local-cluster.md @@ -3,7 +3,7 @@ We will use the [`yb-docker-ctl`](../../admin/yb-docker-ctl/) utility downloaded in the previous step to create and administer a containerized local cluster. Detailed output for the *create* command is available in [yb-docker-ctl Reference](../../admin/yb-docker-ctl/#create-cluster). ```sh -$ ./yb-docker-ctl create +$ ./yb-docker-ctl create --enable_postgres ``` Clients can now connect to YugaByte DB's Cassandra-compatible YCQL API at `localhost:9042` and to the Redis-compatible YEDIS API at `localhost:6379`. @@ -17,13 +17,13 @@ $ ./yb-docker-ctl status ``` ``` -PID Type Node URL Status Started At -26132 tserver n3 http://172.18.0.7:9000 Running 2017-10-20T17:54:54.99459154Z -25965 tserver n2 http://172.18.0.6:9000 Running 2017-10-20T17:54:54.412377451Z -25846 tserver n1 http://172.18.0.5:9000 Running 2017-10-20T17:54:53.806993683Z -25660 master n3 http://172.18.0.4:7000 Running 2017-10-20T17:54:53.197652566Z -25549 master n2 http://172.18.0.3:7000 Running 2017-10-20T17:54:52.640188158Z -25438 master n1 http://172.18.0.2:7000 Running 2017-10-20T17:54:52.084772289Z +ID PID Type Node URL Status Started At +ca16705b20bd 5861 tserver yb-tserver-n3 http://192.168.64.7:9000 Running 2018-10-18T22:02:52.12697026Z +0a7deab4e4db 5681 tserver yb-tserver-n2 http://192.168.64.6:9000 Running 2018-10-18T22:02:51.181289786Z +921494a8058d 5547 tserver yb-tserver-n1 http://192.168.64.5:9000 Running 2018-10-18T22:02:50.187976253Z +0d7dc9436033 5345 master yb-master-n3 http://192.168.64.4:7000 Running 2018-10-18T22:02:49.105792573Z +0b25dd24aea3 5191 master yb-master-n2 http://192.168.64.3:7000 Running 2018-10-18T22:02:48.162506832Z +feea0823209a 5039 master yb-master-n1 http://192.168.64.2:7000 Running 2018-10-18T22:02:47.163244578Z ``` ## 3. Check cluster status with Admin UI diff --git a/docs/content/latest/quick-start/docker/test-cassandra.md b/docs/content/latest/quick-start/docker/test-cassandra.md deleted file mode 100644 index 004319b9ffd..00000000000 --- a/docs/content/latest/quick-start/docker/test-cassandra.md +++ /dev/null @@ -1,29 +0,0 @@ ---- ---- - -- Run cqlsh to connect to the service. - -You can do this as shown below. - -```sh -$ docker exec -it yb-tserver-n3 /home/yugabyte/bin/cqlsh -``` - -``` -Connected to local cluster at 127.0.0.1:9042. -[cqlsh 5.0.1 | Cassandra 3.9-SNAPSHOT | CQL spec 3.4.2 | Native protocol v4] -Use HELP for help. -cqlsh> -``` - -- Run a cql command to verify it is working. - -```sql -cqlsh> describe keyspaces; -``` - -``` -system_schema system_auth system - -cqlsh> -``` diff --git a/docs/content/latest/quick-start/docker/test-postgresql.md b/docs/content/latest/quick-start/docker/test-postgresql.md deleted file mode 100644 index 82ebb80b609..00000000000 --- a/docs/content/latest/quick-start/docker/test-postgresql.md +++ /dev/null @@ -1,44 +0,0 @@ -## 1. Create a new cluster -- Destroy any existing cluster. - -```sh -$ ./yb-docker-ctl destroy -``` - - -- Create a new cluster with YSQL API enabled. Note the additional option `enable_postgres` passed to the create cluster command. Also note that this requires at least version `1.1.2.0-b10` of YugaByte DB. - -```sh -$ ./yb-docker-ctl create --enable_postgres -``` - -- Check status of the cluster - -```sh -$ ./yb-docker-ctl status -``` - -``` -ID PID Type Node URL Status Started At -ca16705b20bd 5861 tserver yb-tserver-n3 http://192.168.64.7:9000 Running 2018-10-18T22:02:52.12697026Z -0a7deab4e4db 5681 tserver yb-tserver-n2 http://192.168.64.6:9000 Running 2018-10-18T22:02:51.181289786Z -921494a8058d 5547 tserver yb-tserver-n1 http://192.168.64.5:9000 Running 2018-10-18T22:02:50.187976253Z -0d7dc9436033 5345 master yb-master-n3 http://192.168.64.4:7000 Running 2018-10-18T22:02:49.105792573Z -0b25dd24aea3 5191 master yb-master-n2 http://192.168.64.3:7000 Running 2018-10-18T22:02:48.162506832Z -feea0823209a 5039 master yb-master-n1 http://192.168.64.2:7000 Running 2018-10-18T22:02:47.163244578Z -``` - -- Run psql to connect to the service. - -You can do this as shown below. - -```sh -$ docker exec -it yb-tserver-n1 /home/yugabyte/postgres/bin/psql -h yb-tserver-n1 -p 5433 -U postgres -``` - -``` -psql (10.4) -Type "help" for help. - -postgres=# -``` diff --git a/docs/content/latest/quick-start/docker/test-ysql.md b/docs/content/latest/quick-start/docker/test-ysql.md new file mode 100644 index 00000000000..310916e44cd --- /dev/null +++ b/docs/content/latest/quick-start/docker/test-ysql.md @@ -0,0 +1,14 @@ +--- +--- +Run psql to connect to the service. + +```sh +$ docker exec -it yb-tserver-n1 /home/yugabyte/postgres/bin/psql -h yb-tserver-n1 -p 5433 -U postgres +``` + +``` +psql (10.4) +Type "help" for help. + +postgres=# +``` diff --git a/docs/content/latest/quick-start/kubernetes/create-local-cluster.md b/docs/content/latest/quick-start/kubernetes/create-local-cluster.md index 8b98101352f..d5c57f2eab7 100644 --- a/docs/content/latest/quick-start/kubernetes/create-local-cluster.md +++ b/docs/content/latest/quick-start/kubernetes/create-local-cluster.md @@ -1,5 +1,12 @@ ## 1. Create a 3 node cluster with replication factor 3 +First uncomment the following flags in the YAML file. +``` + # To support postgres functionality, uncomment the following flags. + # - "--start_pgsql_proxy" + # - "--pgsql_proxy_bind_address=$(POD_IP):5433" +``` + Run the following command to create the cluster. ```sh @@ -47,21 +54,13 @@ yb-tserver-1 1/1 Running 1 12s yb-tserver-2 1/1 Running 1 12s ``` -## 3. Initialize the Redis-compatible YEDIS API - -Initialize Redis-compatible YEDIS API in the YugaByte DB Universe we just setup by running the following `yb-admin` command. +## 3. Initialize the YSQL API ```sh -$ kubectl exec -it yb-master-0 /home/yugabyte/bin/yb-admin -- --master_addresses yb-master-0.yb-masters.default.svc.cluster.local:7100,yb-master-1.yb-masters.default.svc.cluster.local:7100,yb-master-2.yb-masters.default.svc.cluster.local:7100 setup_redis_table -``` - -``` -... -I0127 19:38:10.358551 115 client.cc:1292] Created table system_redis.redis of type REDIS_TABLE_TYPE -I0127 19:38:10.358872 115 yb-admin_client.cc:400] Table 'system_redis.redis' created. +$ kubectl exec -it yb-tserver-0 bash -- -c "YB_ENABLED_IN_POSTGRES=1 FLAGS_pggate_master_addresses=yb-master-0.yb-masters.default.svc.cluster.local:7100,yb-master-1.yb-masters.default.svc.cluster.local:7100,yb-master-2.yb-masters.default.svc.cluster.local:7100 /home/yugabyte/postgres/bin/initdb -D /tmp/yb_pg_initdb_tmp_data_dir -U postgres" ``` -Clients can now connect to this YugaByte DB universe using Cassandra and Redis APIs on the 9042 and 6379 ports respectively. +Clients can now connect to this YugaByte DB universe using YSQL and YCQL APIs on the 5433 and 9042 ports respectively. ## 4. Check cluster status via Kubernetes diff --git a/docs/content/latest/quick-start/kubernetes/test-cassandra.md b/docs/content/latest/quick-start/kubernetes/test-cassandra.md deleted file mode 100644 index 9bee39875ae..00000000000 --- a/docs/content/latest/quick-start/kubernetes/test-cassandra.md +++ /dev/null @@ -1,27 +0,0 @@ ---- ---- - -- Run cqlsh to connect to the service. - -```sh -$ kubectl exec -it yb-tserver-0 /home/yugabyte/bin/cqlsh -``` - -``` -Connected to local cluster at 127.0.0.1:9042. -[cqlsh 5.0.1 | Cassandra 3.9-SNAPSHOT | CQL spec 3.4.2 | Native protocol v4] -Use HELP for help. -cqlsh> -``` - -- Run a cql command to verify it is working. - -```sql -cqlsh> describe keyspaces; -``` - -``` -system_schema system_auth system - -cqlsh> -``` diff --git a/docs/content/latest/quick-start/kubernetes/test-postgresql.md b/docs/content/latest/quick-start/kubernetes/test-postgresql.md deleted file mode 100644 index 6c57e3e8c14..00000000000 --- a/docs/content/latest/quick-start/kubernetes/test-postgresql.md +++ /dev/null @@ -1,75 +0,0 @@ - ## 1. Create a new cluster - -- Destroy any existing cluster. - -```sh -$ kubectl delete -f yugabyte-statefulset.yaml -``` - - -- Create a new cluster with YSQL API enabled. - -First uncomment the following flags in the YAML file. -``` - # To support postgres functionality, uncomment the following flags. - # - "--start_pgsql_proxy" - # - "--pgsql_proxy_bind_address=$(POD_IP):5433" -``` -Recreate the cluster. - -```sh -$ kubectl apply -f yugabyte-statefulset.yaml -``` - - -- Check cluster status - -Run the command below to see that we now have two services with 3 pods each - 3 `yb-master` pods (yb-master-1,yb-master-2,yb-master-3) and 3 `yb-tserver` pods (yb-tserver-1,yb-tserver-2,yb-tserver-3) running. Roles played by these pods in a YugaByte DB cluster (aka Universe) is explained in detail [here](../../architecture/concepts/universe/). - -```sh -$ kubectl get pods -``` - -``` -NAME READY STATUS RESTARTS AGE -yb-master-0 0/1 ContainerCreating 0 5s -yb-master-1 0/1 ContainerCreating 0 5s -yb-master-2 1/1 Running 0 5s -yb-tserver-0 0/1 ContainerCreating 0 4s -yb-tserver-1 0/1 ContainerCreating 0 4s -yb-tserver-2 0/1 ContainerCreating 0 4s -``` - -Eventually all the pods will have the `Running` state. - -```sh -$ kubectl get pods -``` - -``` -NAME READY STATUS RESTARTS AGE -yb-master-0 1/1 Running 0 13s -yb-master-1 1/1 Running 0 13s -yb-master-2 1/1 Running 0 13s -yb-tserver-0 1/1 Running 1 12s -yb-tserver-1 1/1 Running 1 12s -yb-tserver-2 1/1 Running 1 12s -``` -- Initialize the YSQL API - -```sh -$ kubectl exec -it yb-tserver-0 bash -- -c "YB_ENABLED_IN_POSTGRES=1 FLAGS_pggate_master_addresses=yb-master-0.yb-masters.default.svc.cluster.local:7100,yb-master-1.yb-masters.default.svc.cluster.local:7100,yb-master-2.yb-masters.default.svc.cluster.local:7100 /home/yugabyte/postgres/bin/initdb -D /tmp/yb_pg_initdb_tmp_data_dir -U postgres" -``` - -- Run psql to connect to the service. - -```sh -$ kubectl exec -it yb-tserver-0 /home/yugabyte/postgres/bin/psql -- -U postgres -d postgres -h yb-tserver-0 -p 5433 -``` - -``` -psql (10.4) -Type "help" for help. - -postgres=# -``` diff --git a/docs/content/latest/quick-start/kubernetes/test-redis.md b/docs/content/latest/quick-start/kubernetes/test-redis.md deleted file mode 100644 index 43f473142f1..00000000000 --- a/docs/content/latest/quick-start/kubernetes/test-redis.md +++ /dev/null @@ -1,24 +0,0 @@ ---- ---- - -- Run redis-cli to connect to the service. - -You can do this as shown below. - -```sh -$ kubectl exec -it yb-tserver-0 /home/yugabyte/bin/redis-cli -``` - -``` -127.0.0.1:6379> -``` - -- Run a Redis command to verify it is working. - -```sql -127.0.0.1:6379> PING -``` - -``` -"PONG" -``` diff --git a/docs/content/latest/quick-start/kubernetes/test-ysql.md b/docs/content/latest/quick-start/kubernetes/test-ysql.md new file mode 100644 index 00000000000..331fad32b6b --- /dev/null +++ b/docs/content/latest/quick-start/kubernetes/test-ysql.md @@ -0,0 +1,14 @@ +--- +--- +Run psql to connect to the service. + +```sh +$ kubectl exec -it yb-tserver-0 /home/yugabyte/postgres/bin/psql -- -U postgres -d postgres -h yb-tserver-0 -p 5433 +``` + +``` +psql (10.4) +Type "help" for help. + +postgres=# +``` diff --git a/docs/content/latest/quick-start/run-sample-apps.md b/docs/content/latest/quick-start/run-sample-apps.md index c531152d2c3..2ad6852ffb3 100644 --- a/docs/content/latest/quick-start/run-sample-apps.md +++ b/docs/content/latest/quick-start/run-sample-apps.md @@ -1,6 +1,6 @@ --- -title: 6. Run Sample Apps -linkTitle: 6. Run Sample Apps +title: 4. Run Sample Apps +linkTitle: 4. Run Sample Apps description: Run Sample Apps aliases: - /quick-start/run-sample-apps/ @@ -8,9 +8,11 @@ menu: latest: parent: quick-start weight: 150 +isTocNested: false +showAsideToc: true --- -After [creating a local cluster](../create-local-cluster/), follow the instructions below to run [Yugastore](https://github.com/YugaByte/yugastore), one of simplest sample apps we have created for YugaByte DB. Yugastore is a fully open source, online bookstore app built using React, Express, NodeJS and is powered by the YCQL and YEDIS APIs of YugaByte DB. Enhancements to add YSQL API access from Yugastore is currently in the works. You can review Yugastore's architecture and data model [here](../../develop/realworld-apps/ecommerce-app/). +After [creating a local cluster](../create-local-cluster/), follow the instructions below to run [Yugastore](https://github.com/YugaByte/yugastore), one of simplest sample apps we have created for YugaByte DB. Yugastore is a fully open source, online bookstore app built using React, Express, NodeJS and is powered by the YSQL and YCQL APIs of YugaByte DB. You can review Yugastore's architecture and data model [here](../../develop/realworld-apps/ecommerce-app/). After running Yugastore, we recommend running the [IoT Fleet Management](../../develop/realworld-apps/iot-spark-kafka-ksql/) app. This app is built on top of YugaByte DB as the database (using the YCQL API), Confluent Kafka as the message broker, KSQL or Apache Spark Streaming for real-time analytics and Spring Boot as the application framework. diff --git a/docs/content/latest/quick-start/test-ycql.md b/docs/content/latest/quick-start/test-ycql.md deleted file mode 100644 index b77c5fa4065..00000000000 --- a/docs/content/latest/quick-start/test-ycql.md +++ /dev/null @@ -1,138 +0,0 @@ ---- -title: 3. Test YCQL API -linkTitle: 3. Test YCQL API -description: Test YugaByte Cloud QL (YCQL) API -aliases: - - /quick-start/test-cassandra/ - - /latest/quick-start/test-cassandra/ - - /latest/quick-start/test-ycql/ -menu: - latest: - parent: quick-start - weight: 130 -type: page ---- - -After [creating a local cluster](../create-local-cluster/), follow the instructions below to test YugaByte DB's Cassandra-compatible [YCQL](../../api/ycql/) API. - -[**cqlsh**](http://cassandra.apache.org/doc/latest/tools/cqlsh.html) is a command line shell for interacting with Apache Cassandra through [CQL (the Cassandra Query Language)](http://cassandra.apache.org/doc/latest/cql/index.html). It uses the Python CQL driver, and connects to the single node specified on the command line. For ease of use, YugaByte DB ships with the 3.10 version of cqlsh in its bin directory. - -## 1. Connect with cqlsh - - - -
    -
    - {{% includeMarkdown "binary/test-cassandra.md" /%}} -
    -
    - {{% includeMarkdown "binary/test-cassandra.md" /%}} -
    -
    - {{% includeMarkdown "docker/test-cassandra.md" /%}} -
    -
    - {{% includeMarkdown "kubernetes/test-cassandra.md" /%}} -
    -
    - - -## 2. Create a table - -Create a keyspace called 'myapp'. - -```sql -cqlsh> CREATE KEYSPACE myapp; -``` - - -Create a table named 'stock_market' which can store stock prices at various timestamps for different stock ticker symbols. - -```sql -cqlsh> CREATE TABLE myapp.stock_market ( - stock_symbol text, - ts text, - current_price float, - PRIMARY KEY (stock_symbol, ts) -); -``` - - -## 3. Insert data - -Let us insert some data for a few stock symbols into our newly created 'stock_market' table. You can copy-paste these values directly into your cqlsh shell. - -```sql -cqlsh> INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('AAPL','2017-10-26 09:00:00',157.41); -INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('AAPL','2017-10-26 10:00:00',157); -``` - -```sql -cqlsh> INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('FB','2017-10-26 09:00:00',170.63); -INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('FB','2017-10-26 10:00:00',170.1); -``` - -```sql -cqlsh> INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('GOOG','2017-10-26 09:00:00',972.56); -INSERT INTO myapp.stock_market (stock_symbol,ts,current_price) VALUES ('GOOG','2017-10-26 10:00:00',971.91); -``` - -## 4. Query the table - -Query all the values we have inserted into the database for the stock symbol 'AAPL' as follows. - -```sql -cqlsh> SELECT * FROM myapp.stock_market WHERE stock_symbol = 'AAPL'; -``` - -``` - stock_symbol | ts | current_price ---------------+---------------------+--------------- - AAPL | 2017-10-26 09:00:00 | 157.41 - AAPL | 2017-10-26 10:00:00 | 157 - -(2 rows) -``` - - -Query all the values for 'FB' and 'GOOG' as follows. - -```sql -cqlsh> SELECT * FROM myapp.stock_market WHERE stock_symbol in ('FB', 'GOOG'); -``` - -``` - stock_symbol | ts | current_price ---------------+---------------------+--------------- - FB | 2017-10-26 09:00:00 | 170.63 - FB | 2017-10-26 10:00:00 | 170.10001 - GOOG | 2017-10-26 09:00:00 | 972.56 - GOOG | 2017-10-26 10:00:00 | 971.90997 - -(4 rows) -``` diff --git a/docs/content/latest/quick-start/test-ysql.md b/docs/content/latest/quick-start/test-ysql.md index ede5dc9a007..68cd66fb8fb 100644 --- a/docs/content/latest/quick-start/test-ysql.md +++ b/docs/content/latest/quick-start/test-ysql.md @@ -1,17 +1,25 @@ --- -title: 5. Test YSQL API -linkTitle: 5. Test YSQL API +title: 3. Test YSQL API +linkTitle: 3. Test YSQL API description: Test YugaByte SQL (YSQL) API -beta: /faq/product/#what-is-the-definition-of-the-beta-feature-tag aliases: - /quick-start/test-postgresql/ - /latest/quick-start/test-postgresql/ - /latest/quick-start/test-ysql/ + - /quick-start/test-cassandra/ + - /latest/quick-start/test-cassandra/ + - /latest/quick-start/test-ycql/ + - /latest/explore/postgresql/joins/ + - /latest/explore/postgresql/aggregations/ + - /latest/explore/postgresql/expressions/ + - /latest/explore/postgresql/views/ menu: latest: parent: quick-start - weight: 145 + weight: 130 type: page +isTocNested: false +showAsideToc: true --- Follow the instructions below to test YugaByte DB's PostgreSQL-compatible [YSQL](../../api/ysql/) API. @@ -19,9 +27,36 @@ Follow the instructions below to test YugaByte DB's PostgreSQL-compatible [YSQL] [**psql**](https://www.postgresql.org/docs/9.3/static/app-psql.html) is a command line shell for interacting with PostgreSQL. For ease of use, YugaByte DB ships with a version of psql in its bin directory. -## 1. Create a new cluster +## 1. Load Data -