Is there the possibility of having a default value, when creating an array, that when I am trying to read from it and I haven’t actually written anything into the array, I still get back that default value.
Hi there. Yes, it is at the top of our list. A quick question: do you want to use a dense or a sparse array?
Addressed by this PR: https://github.com/TileDB-Inc/TileDB/pull/1666
I am using a sparse array.
For a sparse array, there is no notion of cells with default values. TileDB materializes on disk only non-empty cells in the sparse case by definition, and therefore also returns only non-empty cells when slicing. Therefore, if a sparse array is empty, TileDB should not return any cells.
Do you mean instead that you’d like TileDB to return the cells from a sparse arrays in dense form? That is, write on disk only non-empty cells, but when you slice the array you can get a dense representation, which will naturally have default values for the empty cells?
I have a similar need, and what you suggest is what the desired behavior would be - get a dense result out of a sparse array (in my case, with empty cells filled with a 0). Use case is displaying the interval - of course I can fill in a zero-filled numpy array with what I get from tiledb, but it would be nice if getting the output directly was supported.
Is this currently possible?
No it is not supported currently, but it is in our roadmap. We’ll hopefully have an update soon.
Cool thanks - easy to work around in the mean time - also, is there a public roadmap somewhere?
We have a feedback site: https://feedback.tiledb.com/
Would you like to suggest this feature there? We are planning on keeping that up-to-date.