Adding attributes to existing arrays

As far as I can tell, attributes have to be added before creating the schema and the array.

Would it be possible to allow the addition of other attributes to already existing arrays in the future or is this fundamentally not possible with the tileDB tech?

3 Likes

Yeap, it is in our backlog. Nothing fundamentally difficult. In fact, the opposite; TileDB stores the values of each attribute in separate files, so removing/adding attributes should be easy. There are a couple of nuances with respect to updating the array schema file (e.g., to work well with object stores and provide time traveling). We’ll try to add the functionality very soon. Thanks.

2 Likes

Is this feature implemented for now?
It would be cool to append columns to existing dataframes :slight_smile:

1 Like

Not yet but it is in our roadmap. Hopefully we will start working on it before the end of the year.

2 Likes

Looking forward! :+1:

This feature would be really useful. Have there been any updates on this front? @stavros

Looking forward to using this! If there’s help that needs to be done in terms of a PR, please let me know.

This PR sets us up for implementing full-fledged schema evolution. We are about to release 2.3 over the next couple of days, and the first schema evolution features (which will include adding/removing attributes) will be added in 2.4 in a few weeks.

We of course always welcome contributions, please feel free to contact us if you’d like to learn more about the design and participate in the implementation.

1 Like

We already implemented adding or dropping attributes to existing arrays. Please checkout the latest release(2.4).

Starting from release 2.4, we can add or drop attributes to the existing array. More implementation on array schema features will come soon

The doc updates are still in progress for Python, but please see usage example here (compatible with TileDB-Py 0.10):