bytedance / terarkdb

A RocksDB compatible KV storage engine with better performance
Apache License 2.0
2.04k stars 203 forks source link

question about delete column family. #255

Closed kolinfluence closed 1 year ago

kolinfluence commented 1 year ago

i have 3 column families

cf.a - 1tb size cf.b - 1tb size cf.c - 1tb size

  1. deletion is not immediate right? need to issue .Flush() command for it to be compacted correct?
  2. if i delete cf.a, will read and write be affected with b and c? cf.a wont be used during the "Flush" / compaction process but will this affect b and c performance etc?

i was wondering if it's better to create column families and delete the cf or create 3 databases instead and delete 1 of the database (whichever is better)

yapple commented 1 year ago
  1. manual compact will make the deletion to the bottommost level and free the space
yapple commented 1 year ago

if you needn't keep the transcation in your situation, you can create 3 databases

hiqsociety commented 1 year ago

@yapple

  1. manual compact will make the deletion to the bottommost level and free the space

how does this affect performance of currently running stuff on other cf? will the other cf, which is irrelevant to the deleting cf, be slowed down or paused during deletion of the isolated cf?

yapple commented 1 year ago

manual compact will affect performance of other cf. drop cf is a good idea if all data of the cf is abandoned.

hiqsociety commented 1 year ago

@yapple ok i can accept affecting the performance of other cf but is it like "paused" for other cf or intermittent interruptions? just curious

yapple commented 1 year ago

manual compact is running in the user threads, and dose not affect other front request

kolinfluence commented 1 year ago

ok. that's amazing. thx!