HoraeDB is a high-performance, distributed, cloud native time-series database.
The transition from CeresDB to Apache HoraeDB introduces several breaking changes. To facilitate upgrading from older versions to v2.0.0, specific alterations are necessary.
export HORAEDB_DEFAULT_CATALOG=ceresdb
Etcd's root should be configured both in horaedb and horaemeta
For horaedb
[cluster_deployment.etcd_client]
server_addrs = ['127.0.0.1:2379']
root_path = "/rootPath"
For horaemeta
storage-root-path = "/rootPath"
Horaedb will throw following errors, which is expected
2024-01-23 14:37:57.726 ERRO [src/cluster/src/cluster_impl.rs:136] Send heartbeat to meta failed, err:Failed to send heartbeat, cluster:defaultCluster, err:status: Unimplemented, message: "unknown service meta_service.MetaRpcService", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc"} }
After all server upgraded, the cluster should be ready for read/write, and old data could be queried like before.
notifier::RequestNotifiers
instead of dedup_requests::RequestNotifiers
by @baojinri in https://github.com/apache/incubator-horaedb/pull/1249
get_ranges
by @ShiKaiWi in https://github.com/apache/incubator-horaedb/pull/1364
license-header.txt
's CeresDB to HoraeDB by @caicancai in https://github.com/apache/incubator-horaedb/pull/1336
Full Changelog: https://github.com/apache/incubator-horaedb/compare/v1.2.7...v2.0.0
not in
expr to in
#1236Resolver
in dist sql query by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1186
enable_others
default true for happy debugging by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1209
not in
expr to in
by @jiacai2050 in https://github.com/CeresDB/ceresdb/pull/1236
example.toml
in README-CN by @zuston in https://github.com/CeresDB/ceresdb/pull/1253
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.2.6...v1.2.7
BinaryExpr
to present regex filter by @tanruixiang in https://github.com/CeresDB/ceresdb/pull/1128
UnresolvedPartitionedScan
for partitioned table by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1148
QueryEngine
and wrap all things into it by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1160
TaskContext
when execute physical plan rather than holding it by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1163
Acknowledgements
by @tanruixiang in https://github.com/CeresDB/ceresdb/pull/1174
enable_partition_table_access
a config by @baojinri in https://github.com/CeresDB/ceresdb/pull/1182
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.2.5...v1.2.6
Cluster
and Shard
, and serialize operations of Shard
by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1056
is_dictionary
optional by @jiacai2050 in https://github.com/CeresDB/ceresdb/pull/1074
dict_id
by @jiacai2050 in https://github.com/CeresDB/ceresdb/pull/1068
TableData
to trigger snapshot by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1076
common_types
by @ShiKaiWi in https://github.com/CeresDB/ceresdb/pull/1084
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.2.4...v1.2.5
Support shard based recovery to improve performance #976
Improve the stability of Kafka based wal
Improve performance of query and write
Support more object store backends
Other new features
TableEngine
by @Rachelint in https://github.com/CeresDB/ceresdb/pull/954
get_batch
to implement get_range
by @MachaelLee in https://github.com/CeresDB/ceresdb/pull/971
dbg-macro
in clippy by @Rachelint in https://github.com/CeresDB/ceresdb/pull/983
rskafka
to support limited retry by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1005
test_suggest_duration_and_ranges()
occasional fail. by @zouxiang1993 in https://github.com/CeresDB/ceresdb/pull/1028
Cluster
and Shard
, and serialize operations of Shard
by @Rachelint in https://github.com/CeresDB/ceresdb/pull/1056
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.2.2...v1.2.4
CeresMeta
ahash
usage by @tanruixiang in https://github.com/CeresDB/ceresdb/pull/931
cargo clippy --fix
to Makefile by @tanruixiang in https://github.com/CeresDB/ceresdb/pull/937
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.2.0...v1.2.2
NOTE: this guide is only used for upgrading CeresDB v1.1.0 to CeresDB v1.2.0, ignore it if you want to deploy a brand new CeresDB cluster with v1.2.0.
In v1.2.0, some incompatible changes are contained, so it's important to upgrade carefully:
[analytic.compaction_config]
to [analytic.compaction]
if you use it;[cluster_deployment.etcd_client]
if your CeresDB cluster is in WithMeta
mode:[cluster_deployment.etcd_client]
server_addrs = ['127.0.0.1:2379']
root_path = "/rootPath"
NOTE: the root_path
must be /rootPath
if upgrade from v1.1.0.
4. After updating CeresDB config, start the CeresDB server;
influxdb_iox
;Heartfelt thanks for @zouxiang1993's effort in helping troubleshooting write performance issues.
TableOperator
to encasulate operation of tables by @Rachelint in https://github.com/CeresDB/ceresdb/pull/808
sql
to query_frontend
by @Rachelint in https://github.com/CeresDB/ceresdb/pull/849
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.1.0...v1.2.0
explain analyze [SQL]
statement is able to show the details of scan procedure.trace_metric
for collecting metrics in read procedure by @ShiKaiWi in https://github.com/CeresDB/ceresdb/pull/714
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.0.0...v1.1.0
in
sql expression in table partitionproto
to ceresdbproto
repo by @chunshao90 in https://github.com/CeresDB/ceresdb/pull/644
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.0.0-alpha02...v1.0.0
PartitionTable
to support query and write for partitioned tables.get_byte_ranges
for ObjectStoreReader.MergeIterator
to pull data concurrently.enable_tsid_primary_key
by @ShiKaiWi in https://github.com/CeresDB/ceresdb/pull/459
MergeIterator
concurrent by @Rachelint in https://github.com/CeresDB/ceresdb/pull/466
Full Changelog: https://github.com/CeresDB/ceresdb/compare/v1.0.0-alpha01...v1.0.0-alpha02