Skip to content

Cloud-native search engine for log management & analytics

License

Notifications You must be signed in to change notification settings

arafat877/quickwit

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CI codecov Contributor Covenant License: AGPL V3 Twitter Follow Discord Rust



Quickwit Log Management & Analytics Quickwit Log Management & Analytics

Search more with less

The new way to manage your logs at any scale.


Quickwit 0.4 is now released. Check out our blog post to discover the new features.

Quickwit is a cloud-native search engine for log management & analytics written in Rust. It is designed to be very cost-effective, easy to operate, and scale to petabytes.



๐Ÿ’ก Features

  • Cloud-scale: K8s-native, decoupled compute & storage
  • Sub-second full-text search on object storage (AWS S3, Azure...)
  • Sleep like a log: all your indexed data is safely stored on object storage
  • Distributed search
  • Distributed indexing with Kafka
  • Schemaless or strict schema indexing
  • Multi-tenancy
  • Add and remove nodes in seconds
  • Index with exactly-once semantics with Kafka / Kinesis
  • Ingest & Aggregation API Elasticsearch compatible
  • Search stream API for full-text search in ClickHouse
  • Works out of the box with sensible defaults
  • Lightweight Embedded UI

๐Ÿ”ฎ Roadmap

  • Quickwit 0.5 - Q2 2023
    • Distributed and replicated ingestion queue
    • Tiered storage (local drive, block storage, object storage)
    • Native support for OpenTelemetry exporters (logs and traces)
    • Jaeger integration
    • Grafana data source
  • Long-term roadmap
    • Pipe-based query language
    • Security (TLS, authentication, RBAC)
    • Transforms
    • and more...

๐Ÿ”Ž Uses & Limitations

โœ… ย  When to use โŒ ย  When not to use
Your documents are immutable: application logs, system logs, access logs, user actions logs, audit trail (logs), etc. Your documents are mutable.
Your data has a time component. Quickwit includes optimizations and design choices specifically related to time. You need a low-latency search for e-commerce websites.
You want a full-text search in a multi-tenant environment. You provide a public-facing search with high QPS.
You want to index directly from Kafka / Kinesis. You want to re-score documents at query time.
You want to add full-text search to your ClickHouse cluster.
You ingest a tremendous amount of logs and don't want to pay huge bills.
You ingest a tremendous amount of data and you don't want to waste your precious time babysitting your cluster.

โšก Getting Started

Quickwit compiles to a single binary and we provide various ways to install it. The easiest is to run the command below from your preferred shell:

curl -L https://install.quickwit.io | sh

You can now move this executable directory wherever sensible for your environment and possibly add it to yourย PATHย environment.

Take a look at our Quick Start to do amazing things, like Creating your first index or Adding some documents, or take a glance at our full Installation guide!

๐Ÿ“š Tutorials

๐Ÿ™‹ FAQ

How can I switch from Elasticsearch to Quickwit?

In Quickwit 0.3, we released Elasticsearch compatible Ingest-API, so that you can change the configuration of your current log shipper (Vector, Fluent Bit, Syslog, ...) to send data to Quickwit. You can query the logs using the Quickwit Web UI or Search API. We also support ES compatible Aggregation-API.

How is Quickwit different from traditional search engines like Elasticsearch or Solr?

The core difference and advantage of Quickwit is its architecture that is built from the ground up for cloud and log management. Optimized IO paths make search on object storage sub-second and thanks to the true decoupled compute and storage, search instances are stateless, it is possible to add or remove search nodes within seconds. Last but not least, we implemented a highly-reliable distributed search and exactly-once semantics during indexing so that all engineers can sleep at night. All this slashes costs for log management.

How does Quickwit compare to Elastic in terms of cost?

We estimate that Quickwit can be up to 10x cheaper on average than Elastic. To understand how, check out our blog post about searching the web on AWS S3.

What license does Quickwit use?

Quickwit is open-source under the GNU Affero General Public License Version 3 - AGPLv3. Fundamentally, this means that you are free to use Quickwit for your project, as long as you don't modify Quickwit. If you do, you have to make the modifications public. We also provide a commercial license for enterprises to provide support and a voice on our roadmap.

Is it possible to setup Quickwit for a High Availability (HA)?

Not today, but HA is on our roadmap.

What is Quickwit's business model?

Our business model relies on our commercial license. There is no plan to become SaaS in the near future.

๐Ÿช„ Third-Party Integration

Store logs on AWS S3

๐Ÿ’ฌ Community

Chat with us in Discord | Follow us on Twitter

๐Ÿค Contribute and spread the word

We are always super happy to have contributions: code, documentation, issues, feedback, or even saying hello on discord! Here is how you can help us build the future of log management:

โœจ And to thank you for your contributions, claim your swag by emailing us at hello at quickwit.io.

๐Ÿ”— Reference

About

Cloud-native search engine for log management & analytics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 95.2%
  • TypeScript 3.2%
  • JavaScript 0.6%
  • Shell 0.5%
  • Dockerfile 0.2%
  • Makefile 0.1%
  • Other 0.2%