Release Notes.
- Support etcd client authentication.
- Implement Local file system.
- Add health check command for bydbctl.
- Implement Inverted Index for SeriesDatabase.
- Remove Block Level from TSDB.
- Remove primary index.
- Measure column-based storage:
- Data ingestion and retrieval.
- Flush memory data to disk.
- Merge memory data and disk data.
- Stream column-based storage:
- Data ingestion and retrieval.
- Flush memory data to disk.
- Merge memory data and disk data.
- Fix the bug that property merge new tags failed.
- Bump go to 1.21.
- Bump node to 20.9.
- Bump several tools.
- Bump all dependencies of Go and Node.
- Combine banyand and bydbctl Dockerfile.
- List all properties in a group.
- Implement Write-ahead Logging
- Document the clustering.
- Support multiple roles for banyand server.
- Support for recovery buffer using wal.
- Register the node role to the metadata registry.
- Implement the remote queue to spreading data to data nodes.
- Implement the distributed query engine.
- Add mod revision check to write requests.
- Add TTL to the property.
- Implement node selector (e.g. PickFirst Selector, Maglev Selector).
- Unified the buffers separated in blocks to a single buffer in the shard.
- BanyanDB ui unable to load icon.
- BanyanDB ui type error
- Fix timer not released
- BanyanDB ui misses fields when creating a group
- Fix data duplicate writing
- Syncing metadata change events from etcd instead of a local channel.
- Fix parse environment variables error
- Bump several dependencies and tools.
- Drop redundant "discovery" module from banyand. "metadata" module is enough to play the node and shard discovery role.
- Add TSDB concept document.
- [UI] Add YAML editor for inputting query criteria.
- Refactor TopN to support
NULL
group while keeping seriesID from the source measure. - Add a sharded buffer to TSDB to replace Badger's memtable. Badger KV only provides SST.
- Add a meter system to control the internal metrics.
- Add multiple metrics for measuring the storage subsystem.
- Refactor callback of TopNAggregation schema event to avoid deadlock and reload issue.
- Fix max ModRevision computation with inclusion of
TopNAggregation
- Enhance meter performance
- Reduce logger creation frequency
- Add units to memory flags
- Introduce TSTable to customize the block's structure
- Add
/system
endpoint to the monitoring server that displays a list of nodes' system information. - Enhance the
liaison
module by implementing access logging. - Add the Istio scenario stress test based on the data generated by the integration access log.
- Generalize the index's docID to uint64.
- Remove redundant ID tag type.
- Improve granularity of index in
measure
by leveling up from data point to series. - [UI] Add measure CRUD operations.
- [UI] Add indexRule CRUD operations.
- [UI] Add indexRuleBinding CRUD operations.
- Fix iterator leaks and ensure proper closure and introduce a closer to guarantee all iterators are closed
- Fix resource corrupts caused by update indexRule operation
- Set the maximum integer as the limit for aggregation or grouping operations when performing aggregation or grouping operations in a query plan.
- Bump go to 1.20.
- Set KV's minimum memtable size to 8MB
- [docs] Fix docs crud examples error
- Modified
TestGoVersion
to check for CPU architecture and Go Version - Bump node to 18.16
- Fix the broken of schema chain.
- Add a timeout to all go leaking checkers.
- Bump golang.org/x/net from 0.2.0 to 0.7.0.
- Support 64-bit float type.
- Web Application.
- Close components in tsdb gracefully.
- Add TLS for the HTTP server.
- Use the table builder to compress data.
- Open blocks concurrently.
- Sync index writing and shard closing.
- TimestampRange query throws an exception if no data in this time range.
- Fixes issues related to leaked goroutines.
- Add validations to APIs.
For more details by referring to milestone 0.3.0
- Command line tool: bydbctl.
- Retention controller.
- Full-text searching.
- TopN aggregation.
- Add RESTFul style APIs based on gRPC gateway.
- Add "exists" endpoints to the schema registry.
- Support tag-based CRUD of the property.
- Support index-only tags.
- Support logical operator(and & or) for the query.
- "metadata" syncing pipeline complains about an "unknown group".
- "having" semantic inconsistency.
- "tsdb" leaked goroutines.
- "tsdb" structure optimization.
- Merge the primary index into the LSM-based index
- Remove term metadata.
- Memory parameters optimization.
- Bump go to 1.19.
For more details by referring to milestone 0.2.0
- BanyanD is the server of BanyanDB
- TSDB module. It provides the primary time series database with a key-value data module.
- Stream module. It implements the stream data model's writing.
- Measure module. It implements the measure data model's writing.
- Metadata module. It implements resource registering and property CRUD.
- Query module. It handles the querying requests of stream and measure.
- Liaison module. It's the gateway to other modules and provides access endpoints to clients.
- gRPC based APIs
- Document
- API reference
- Installation instrument
- Basic concepts
- Testing
- UT
- E2E with Java Client and OAP