Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doc feedback rollup #254

Merged
merged 17 commits into from
Aug 25, 2017
16 changes: 7 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@
# ![KSQL rocket](ksq-lrocket.png) KSQL - Streaming SQL for Apache Kafka
# ![KSQL rocket](ksq-lrocket.png) KSQL - Streaming SQL for Apache Kafka

> *Important: This release is a **developer preview** and is free and open-source from Confluent under the Apache 2.0 license. Do not run KSQL against a production cluster.*

KSQL lowers the entry bar to the world of stream processing by providing you with a simple and completely interactive SQL interface with which you can process your data in Kafka most easily. No longer do you need to write code in a programming language such as Java or Python! KSQL is open-source (Apache 2.0 licensed), distributed, scalable, reliable, and real-time. It supports a wide range of powerful stream processing operations including aggregations, joins, windowing, sessionization, and much more.

- [Quick Start](#quick-start)
- [Documentation](#documentation)
- [Join the Community](#join-the-community)
- [Contributing](#contributing)
- [License](#license)
<!-- Add KSQL screencast link here -->

# Quick Start
If you are ready to see the power of KSQL, try the [KSQL Quick Start](/docs/quickstart#quick-start)!
It demonstrates a simple workflow using KSQL to write streaming queries against data in Kafka.
If you are ready to see the power of KSQL, try out these:

- [KSQL Quick Start](/docs/quickstart#quick-start), which demonstrates a simple workflow using KSQL to write streaming queries against data in Kafka.
- [Clickstream Analysis Demo](/ksql-clickstream-demo#clickstream-analysis), which shows how to build an application that performs real-time user analytics.

# Documentation
You can [find the KSQL documentation here](/docs/).
You can [find the KSQL documentation here](/docs#ksql-documentation).

# Join the Community
Whether you need help, want to contribute, or are just looking for the latest news, you can find out how to [connect with your fellow Confluent community members here](https://www.confluent.io/contact-us-thank-you/).
Expand Down
2 changes: 1 addition & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# KSQL Documentation

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|

> *Important: This release is a **developer preview** and is free and open-source from Confluent under the Apache 2.0 license. Do not run KSQL against a production cluster.*
Expand Down
16 changes: 8 additions & 8 deletions docs/concepts.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Concepts

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | Concepts | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | Concepts | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|


Expand Down Expand Up @@ -47,13 +47,13 @@ Here's an overview of running KSQL in standalone mode:
- Use with default settings:

```bash
.bin/ksql-cli local
./bin/ksql-cli local
```

- Use with custom settings:

```bash
.bin/ksql-cli local --properties-file foo/bar/ksql.properties
./bin/ksql-cli local --properties-file foo/bar/ksql.properties
```

## Client-server mode
Expand All @@ -67,18 +67,18 @@ Here's an overview of running KSQL in client-server mode:
- Use with default settings:

```bash
.bin/ksql-server-start
./bin/ksql-server-start
```

- Use with custom settings:

```bash
.bin/ksql-server-start --properties-file foo.properties
./bin/ksql-server-start --properties-file foo.properties
```
- Start any number of CLIs, specifying a server address as `remote` endpoint

```bash
.bin/ksql-cli remote http://server:8090
./bin/ksql-cli remote http://server:8090
```

- All engines share the work, for example, instances of the same KSQL apps. You can scale up or down without restarting.
Expand All @@ -94,12 +94,12 @@ Here's an overview of running KSQL in application mode:
- Start an engine instance and pass a file of KSQL statements to run, for example:

```bash
.bin/ksql-node --query-file=foo/bar.sql
./bin/ksql-node --query-file=foo/bar.sql
```
or

```bash
.bin/ksql-node --properties-file ksql.properties --query-file=foo/bar.sql
./bin/ksql-node --properties-file ksql.properties --query-file=foo/bar.sql
```
- This mode is ideal for streaming-ETL application deployment, for example, you can version-control your queries as code.
- All engines share the work, for example, instances of the same KSQL app. You can scale up or down without restarting.
Expand Down
4 changes: 2 additions & 2 deletions docs/demo.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Demo

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | Demo |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |Demo | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|



## Clickstream Analysis

This demo shows how to build an application that performs real-time analytics of users about which pages a website visitor visits and in what order.
This demo shows how to build an application that performs real-time user analytics about which pages they visit and in what order.

- [Get started now!](/ksql-examples/examples/clickstream-analysis#clickstream-analysis)
7 changes: 3 additions & 4 deletions docs/examples.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Examples

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | Examples | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | Examples | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|

**Table of Contents**
Expand Down Expand Up @@ -228,8 +228,7 @@ CREATE TABLE pageviews_per_region_per_session AS \

### Working with arrays and maps

The `interests` column in the `users` table is an `array` of strings with size two that represents the first
and second interest of each user. The `contact_info` column is a string-to-string `map` that represents the following
The `interests` column in the `users` table is an `array` of strings that represents the interest of each user. The `contact_info` column is a string-to-string `map` that represents the following
contact information for each user: phone, city, state, and zipcode.

The following query will create a new stream from `pageviews_enriched` that includes the first interest of each
Expand Down Expand Up @@ -278,4 +277,4 @@ Here are some of the common config properties that you might want to change from
SET 'commit.interval.ms'='5000';
```

- `cache.max.bytes.buffering`: The default value is `10485760` (10 MB);
- `cache.max.bytes.buffering`: The default value is `10485760` (10 MB);
30 changes: 29 additions & 1 deletion docs/faq.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Frequently Asked Questions

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | FAQ | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | FAQ | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|


Expand Down Expand Up @@ -49,3 +49,31 @@ _Support for Apache Avro is expected soon._
**Is KSQL fully compliant to ANSI SQL?**

KSQL is a dialect inspired by ANSI SQL. It has some differences because it is geared at processing streaming data. For example, ANSI SQL has no notion of “windowing” for use cases such as performing aggregations on data grouped into 5-minute windows, which is a commonly required functionality in the streaming world.

**How do I shutdown a KSQL environment?**

- To stop DataGen tasks that were started with the `-daemon` flag.

```
% jps | grep DataGen
25379 DataGen
% kill 25379
```

- Exit KSQL.

```
ksql> exit
```

- Stop confluent platform.

```
% confluent stop
```

- To remove all data, topics and streams by shutting down all processes.

```
% confluent destroy
```
9 changes: 7 additions & 2 deletions docs/quickstart/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Quick Start

| [Overview](/docs/) | Quick Start | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) | Quick Start | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|

Welcome to the quick start for KSQL!
Expand Down Expand Up @@ -116,6 +116,8 @@ This KSQL quick start shows examples querying data from Kafka topics called `pag

## Write Queries

**Note:** By default KSQL reads the topics for streams and tables from the latest offset.

1. Use `SELECT` to create a query that returns data from a STREAM. To stop viewing the data, press `<ctrl-c>`. You may optionally include the `LIMIT` keyword to limit the number of rows returned in the query result. Note that exact data output may vary because of the randomness of the data generation.

```bash
Expand Down Expand Up @@ -213,7 +215,7 @@ This KSQL quick start shows examples querying data from Kafka topics called `pag
1. From the output of `SHOW QUERIES;` identify a query ID you would like to terminate. For example, if you wish to terminate query ID `2`:

```bash
ksql> terminate 2;
ksql> TERMINATE 2;
```

2. To exit from KSQL, type 'exit'.
Expand All @@ -237,3 +239,6 @@ If you are running the Confluent Platform, you can stop it with this command.
```
confluent stop
```

## Next steps
Try the end-to-end [Clickstream Analysis demo](/ksql-examples/examples/clickstream-analysis#clickstream-analysis), which shows how to build an application that performs real-time user analytics.
2 changes: 1 addition & 1 deletion docs/quickstart/quickstart-docker.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Docker Setup for KSQL

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|

This part of the quick start will guide you through the steps to setup a Kafka cluster and start KSQL for Docker environments. After you complete these steps, you can start using KSQL to query the Kafka cluster.
Expand Down
2 changes: 1 addition & 1 deletion docs/quickstart/quickstart-non-docker.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Non-Docker Setup for KSQL

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | [Roadmap](/docs/roadmap.md#roadmap) |
|---|----|-----|----|----|----|----|----|

This part of the quick start will guide you through the steps to setup a Kafka cluster and start KSQL for non-Docker environments. After you complete these steps, you can return to the [main Quick Start](/docs/quickstart#quick-start) and use KSQL to query the Kafka cluster.
Expand Down
4 changes: 2 additions & 2 deletions docs/roadmap.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Roadmap

| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | Roadmap | [Demo](/ksql-clickstream-demo/) |
| [Overview](/docs/) |[Quick Start](/docs/quickstart#quick-start) | [Concepts](/docs/concepts.md#concepts) | [Syntax Reference](/docs/syntax-reference.md#syntax-reference) |[Demo](/ksql-clickstream-demo#clickstream-analysis) | [Examples](/docs/examples.md#examples) | [FAQ](/docs/faq.md#frequently-asked-questions) | Roadmap |
|---|----|-----|----|----|----|----|----|

* Improved quality, stability, and operations: We will continue to focus on refining the overall experience of working with KSQL. As such this will involve streamlining processes, further expand our testing efforts and improving visibility and feedback mechanisms.


* Support for ‘point-in-time’ SELECT. This feature will introduce the ability to retrieve a snapshot of the current state of a Table. In doing so making it possible to retrieve data snapshots at various times throughout the day. This would support the need for audits, adhoc requests, reference tables and other use-cases.
* Support for ‘point-in-time’ SELECT. This feature will introduce the ability to retrieve a snapshot of the current state of a Table. In doing so making it possible to retrieve data snapshots at various times throughout the day. This would support the need for audits, ad hoc requests, reference tables and other use-cases.


* Support INSERT into STREAM. Inserting data directly into Streams will continue to lower the barrier to entry and complete the data-in, data-out semantics.
Expand Down
Loading