{"repo":"flowerinthenight/luna","free":true,"listed":false,"github":"https://github.com/flowerinthenight/luna","clone":"git clone https://github.com/flowerinthenight/luna.git","description":"In-memory OLAP SQL server for object storage data.","language":"Rust","stars":14,"topics":["apache-arrow","columnar-storage","duckdb","in-memory-database","rust","sql","olap","cache"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"[!IMPORTANT] This project is now on its own org at (https://github.com/luna-hq/luna/). --- Overview Luna is an in-memory , columnar (OLAP) SQL server for object storage data. Built on DuckDB and Apache Arrow, it supports several data sources (S3, GCS, Azure Blob Storage, local filesystem, etc.), and various data types (CSV, JSON, Parquet, Iceberg, Excel, etc.). It's in-memory by default but it supports spilling to disk for larger-than-memory workloads. [!NOTE] - Luna's development is supported (and funded) by Alphaus, Inc. as it's also being used internally. - At the moment, Luna is tested (and expected) to run on a single machine, although support for distributed clusters is part of the goal in the (near) future. API specs A Luna process maintains a single, in-memory database that can be configured through its TCP-based API which is exposed, by default, on port 7688 (can be changed through the --api-host-port flag). Requests use a variant of Redis' RESP spec, specifically, the Bulk strings representation. Responses, on the other hand, consist of a stream of RecordBatch messages, utilizing Arrow's IPC format. This also applies to error messages. [Request] Requests are encoded as follows (excluding AUTH ): - The dollar sign ( $ ) as the first byte. - One or more decimal digits (0..9) as the string's length, in bytes, as an unsigned, base-10 value. - The CRLF terminator. - The data. - A final CRLF . The section is further broken down into the following: - First 2 bytes - prefix","default_branch":null,"files":null,"tree":[],"storefront":"/r/flowerinthenight","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/flowerinthenight/luna/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}