Draft:GreptimeDB

{{AFC submission|d|nn|u=SUUam0319|ns=118|decliner=LunaEclipse|declinets=20250216014250|ts=20241216142724}}

{{AFC submission|d|nn|u=Dennis Zhuang|ns=118|reviewer=MolecularPilot|reviewts=20241120092212|decliner=MolecularPilot|declinets=20241120093654|small=yes|ts=20241120070022}}

{{AFC comment|1=All the references provided are only to sources that are created by the people who run Greptime - thus not WP:INDEPENDENT. The other sources don't mention Greptime at all (PromQL) or only in passing - not significant coverage (YCombiner). MolecularPilot 🧪️✈️ 09:36, 20 November 2024 (UTC)}}

----

{{Short description|Open-source time series database}}

{{Draft topics|software|computing|technology}}

{{AfC topic|product}}

{{Cleanup bare URLs|date=November 2024}}

{{Infobox software

| name = GreptimeDB

| logo =

| developer = Greptime Inc...https://greptime.com

| released = {{Start date and age|df=yes|2022|11|15}}

| latest release version = 0.9.5

| latest release date = {{release date and age|df=yes|2024|10|18}}{{cite web

| url = https://github.com/GreptimeTeam/greptimedb/releases/tag/v0.9.5

| title = GreptimeDB v0.9.5 release notes

| website = GitHub

| accessdate = 18 Oct 2024

}}

| latest preview version =

| latest preview date =

| repo = https://github.com/GreptimeTeam/greptimedb/

| programming language = Rust

| operating system = Cross-platform

| genre = Time series database

| license = Apache 2.0

| website = {{URL|https://www.greptime.com/|greptime.com}}

}}

GreptimeDB is an open-source, cloud-native time series database{{Cite journal |last1=Struckov |first1=Alexey |last2=Yufa |first2=Semen |last3=Visheratin |first3=Alexander A. |last4=Nasonov |first4=Denis |date=2019-01-01 |title=Evaluation of modern tools and techniques for storing time-series data |url=https://linkinghub.elsevier.com/retrieve/pii/S1877050919310439 |journal=Procedia Computer Science |series=8th International Young Scientists Conference on Computational Science, YSC2019, 24-28 June 2019, Heraklion, Greece |volume=156 |pages=19–28 |doi=10.1016/j.procs.2019.08.125 |issn=1877-0509}} designed to handle large-scale metrics, logs, and events. Developed by Greptime Inc., it is implemented in Rust and offers support for SQL and PromQL as its primary query languages.

GreptimeDB is compatible with widely used database protocols and APIs, such as InfluxDB, OpenTelemetry, Prometheus, Elasticsearch, and Loki. The database is mainly applied to time series data management{{Cite AV media |url=https://www.youtube.com/watch?v=VLAvZw0ZEwI&list=PLSE8ODhjZXjZc2AdXq_Lc1JS62R48UX2L&index=12 |title=GreptimeDB: Implement, Integrate and Extend a Query Engine (Ruihang Xia) |date=2024-12-10 |last=CMU Database Group |access-date=2025-01-15 |via=YouTube}} and analysis across diverse applications, including observability, IoT, and edge computing.

History

Greptime Inc.{{cite web | url=https://www.linkedin.com/company/greptime/ | title=Greptime Linkedin Profile}} was founded by Xiaodan Zhuang (CEO), Ning Sun (CTO), and Jiachun Feng. GreptimeDB was open-sourced on November 15, 2022{{Cite web |title=【技术科普】从Greptime聊时序数据库 {{!}} DevmoreWork |url=https://podcasts.apple.com/dk/podcast/%E6%8A%80%E6%9C%AF%E7%A7%91%E6%99%AE-%E4%BB%8Egreptime%E8%81%8A%E6%97%B6%E5%BA%8F%E6%95%B0%E6%8D%AE%E5%BA%93-devmorework/id1580924689?i=1000624629684 |access-date=2024-12-13 |website=Apple Podcasts |language=en-GB}}. It was specifically designed to address the challenges of managing large volumes of time-series data, particularly for IoT and observability applications{{Cite web |title=CNCF On demand webinar: Ingesting Data into GreptimeDB Using InfluxDB Line Protocol |url=https://community.cncf.io/events/details/cncf-cncf-online-programs-presents-cncf-on-demand-webinar-ingesting-data-into-greptimedb-using-influxdb-line-protocol/ |access-date=2024-12-13 |website=CNCF |language=en}}

GreptimeDB is available in both standalone (single-process) and cluster configurations, offering flexibility to users in different deployment environments. The open-source release has allowed the community to contribute to its ongoing development and adoption.

Technical Overview

GreptimeDB abstracts metrics and logs into events, organizing them through three column types: tags, fields, and timestamp. The database supports SQL in processing all types of time-series data (metrics, logs, and events). The architecture follows a storage-compute separation design, where data is stored in object storage to minimize storage costs.

Supported protocols

GreptimeDB can integrate with various protocols{{cite web | url=https://docs.greptime.com/getting-started/installation/overview |title=GreptimeDB Installation Guide}} for diverse time-series data ingestion{{Cite web |title=Ingest MQTT Data into GreptimeDB {{!}} EMQX Docs |url=https://docs.emqx.com/en/emqx/latest/data-integration/data-bridge-greptimedb.html |access-date=2024-12-13 |website=docs.emqx.com |language=en}} and query needs.

  • MySQL: interaction using MySQL clients or libraries
  • PostgreSQL: connecting via PostgreSQL tools and drivers
  • InfluxDB Line Protocol: data ingestion from systems using InfluxDB
  • OpenTelemetry: data collection and tracing using OpenTelemetry
  • [https://opentsdb.net/ OpenTSDB]: compatible with OpenTSDB
  • gRPC: RPC (Remote Procedure Call) capabilities for advanced integrations and custom application development
  • PromQL: native support for Prometheus Query Language (PromQL)
  • HTTP API: REST APIs for data ingestion and management

References

{{reflist}}