README.md 4.8 KB
Newer Older
V
Vlad Ilyushchenko 已提交
1
<h4 align="center">
V
Vlad Ilyushchenko 已提交
2
  <img src="https://raw.githubusercontent.com/questdb/questdb/master/core/src/main/resources/site/public/images/logo-readme.jpg"/>
V
Vlad Ilyushchenko 已提交
3
</h4>
V
Vlad Ilyushchenko 已提交
4

V
Vlad Ilyushchenko 已提交
5
<p align="center">
V
Vlad Ilyushchenko 已提交
6 7 8 9
  <a href="https://github.com/questdb/questdb/blob/master/LICENSE.txt"><img src="https://img.shields.io/github/license/questdb/questdb"></a>
  <a href="https://www.codacy.com/app/bluestreak/nfsdb"><img src="https://api.codacy.com/project/badge/grade/83c6250bd9fc45a98c12c191af710754"></a>
  <a href="https://circleci.com/gh/questdb/questdb"><img src="https://img.shields.io/circleci/build/github/questdb/questdb/master?token=c019f9fac8d84c0fa4896447d6073504a830e099"></a>
  <a href="https://serieux-saucisson-79115.herokuapp.com/"><img src="https://serieux-saucisson-79115.herokuapp.com/badge.svg"></a>
T
TheTanc 已提交
10
  <a href="https://github.com/questdb/questdb/releases/download/4.0.1/questdb-4.0.1-bin.tar.gz"><img src="https://img.shields.io/github/downloads/questdb/questdb/total"></a>
V
Vlad Ilyushchenko 已提交
11 12 13 14
  <a href="https://search.maven.org/search?q=g:org.questdb"><img src="https://img.shields.io/maven-central/v/org.questdb/core"></a>
</p
  
<p/>
V
Vlad Ilyushchenko 已提交
15 16

## What is QuestDB
V
Vlad Ilyushchenko 已提交
17

V
Vlad Ilyushchenko 已提交
18
QuestDB is a fast NewSQL database for Hybrid Transactional, Analytical and Time Series Processing workloads. QuestDB ingests 
T
Tancrede 已提交
19 20
data via HTTP, PostgresSQL wire protocol, Influx line protocol or directly from Java. Reading data is done using SQL via HTTP, 
PostgreSQL wire protocol or via Java API. The whole database and console fits in a 3.5Mb package.
21

V
Vlad Ilyushchenko 已提交
22
## Project goals
V
Vlad Ilyushchenko 已提交
23

J
j1897OS 已提交
24
- Treat time-series as first class citizen within a relational database framework.
V
Vlad Ilyushchenko 已提交
25

J
j1897OS 已提交
26
- Minimise hardware resources through software optimisation. Don’t waste CPU cycles, memory nor storage.
V
Vlad Ilyushchenko 已提交
27

T
Tancrede 已提交
28
- Be a reliable and trustworthy store of critical data.
V
Vlad Ilyushchenko 已提交
29

J
j1897OS 已提交
30
- Low friction operation. Empower developers with SQL. Simplify every database interaction.
V
Vlad Ilyushchenko 已提交
31

J
j1897OS 已提交
32
- Operate efficiently at both extremes: allow users to prioritise performance over data loss, and vice versa.
V
Vlad Ilyushchenko 已提交
33 34

- Be both embedded and standalone.
V
Vlad Ilyushchenko 已提交
35

T
Tancrede 已提交
36 37 38 39 40 41 42
## Getting Started

[Install](https://www.questdb.io/docs/install) and [run](https://www.questdb.io/docs/run) QuestDB.
Then, the easiest way to get started is to play with our
web [console](https://www.questdb.io/docs/console). This will allow you to import
and query data using an intuitive interface.

J
j1897OS 已提交
43
You may also take a look at our [storage model](https://www.questdb.io/docs/storagemodel). In short,
T
Tancrede 已提交
44 45 46 47 48 49 50 51
we are a column-oriented database, which partitions data by time intervals.

You can find more documentation [here](https://www.questdb.io/docs/documentation)

## Support / Contact

- [Slack Channel](https://join.slack.com/t/questdb/shared_invite/enQtNzk4Nzg4Mjc2MTE2LTEzZThjMzliMjUzMTBmYzVjYWNmM2UyNWJmNDdkMDYyZmE0ZDliZTQxN2EzNzk5MDE3Zjc1ZmJiZmFiZTIwMGY)

T
Tancrede 已提交
52
## Roadmap
T
Tancrede 已提交
53

T
Tancrede 已提交
54
Our roadmap is [here](https://www.questdb.io/docs/roadmap)
T
Tancrede 已提交
55

56 57 58 59
## Building from source

### Pre-requitites:

J
j1897OS 已提交
60
- Java 8 64-bit. We recommend Oracle Java 8, but OpenJDK8 will also work (although a little slower).
61 62 63 64 65
- Maven 3
- Compatible 64-bit Operating System: Windows, Linux, OSX or ARM Linux
- Configure JAVA_HOME environment variable
- Add Maven "bin" directory to PATH environment variable

V
Vlad Ilyushchenko 已提交
66
```
V
Vlad Ilyushchenko 已提交
67 68
Note: Java versions above 8 are not yet supported. It is possible to build QuestDB with Java 11,
but this requires backward incompatible source code changes.
V
Vlad Ilyushchenko 已提交
69 70
```

V
Vlad Ilyushchenko 已提交
71
### Building & Running
72 73

```
V
Vlad Ilyushchenko 已提交
74 75 76 77 78 79 80 81 82 83
git clone https://github.com/questdb/questdb.git
cd questdb

# check java version
# output should be similar to:
#
# java version "1.8.0_212"
# Java(TM) SE Runtime Environment (build 1.8.0_212-b10)
# Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
#
J
j1897OS 已提交
84
# if your java version is above 8 you can download & install JDK8 and use absolute
V
Vlad Ilyushchenko 已提交
85
# path to java executable instead of 'java'
86

V
Vlad Ilyushchenko 已提交
87
java -version
88

J
j1897OS 已提交
89
# remove 'skipTests' if you want to run all tests (3000+ unit tests, 3-5 mins)
V
Vlad Ilyushchenko 已提交
90
mvn clean package -DskipTests
91

J
j1897OS 已提交
92
# check contents of 'core/target' directory to find QuestDB's current version number
93

J
j1897OS 已提交
94
# create QuestDB root directory if one does not exist already
V
Vlad Ilyushchenko 已提交
95 96 97
# replace <root_dir> with actual directory name
mkdir <root_dir>

J
j1897OS 已提交
98 99
# <version> is QuestDB's current version from pom.xml
# <root_dir> is the root directory created at the previous step
V
Vlad Ilyushchenko 已提交
100 101
java -cp core/target/core-<version>.jar io.questdb.ServerMain -d <dir>
```
102

J
j1897OS 已提交
103
QuestDB will start the HTTP server on 0:9000, which you can visit from your browser: http://localhost:9000. HTTP server is constrained by directory specified as program argument (-d). Additionally QuestDB will start PostgreSQL's server on 0:8812, default login credentials are admin/quest. Both HTTP and PostresSQL server reference database in `<root_directory>/db`
104

V
Vlad Ilyushchenko 已提交
105

T
Tancrede 已提交
106
## Contribution
V
Vlad Ilyushchenko 已提交
107

T
TheTanc 已提交
108 109
Feel free to contribute to the project by forking the repository and submitting pull requests.
Please make sure you have read our [contributing guide](https://github.com/questdb/questdb/blob/master/CONTRIBUTING.md).