Add icebug mem impl#496
Conversation
|
I realize this is not ready for review. But thanks for sharing it early for feedback! Two high level concerns and details:
Recommendations:
|
Brand names tend to change far less frequently than technical details, wouldn’t you agree? Perhaps only on rare occasions. Also, if we were to name it
There is already a significant amount of redundant state and data in both the table and scan state classes due to inheritance from the native classes. For instance, if you look at Even with the
didn't get this part |
The Tag in this context is TRIPLES or CSR (feel free to rename). The status right now:
In the future there may be a legit use case for running cypher over a triple table stored in parquet (we support this for duckdb/sqlite/postgres). I'm thinking about how to implement this matrix with the most code reuse and maintainability. I agree that sometimes its necessary to duplicate code for clarity. Inheritance is not the best way to share code etc. But I'm not convinced that we should have 4 cases above * {node, rel} = 8 classes. |
69ff7fc to
42ecaa6
Compare
|
Also think about it from the perspective of someone reading the code. They already know what "Arrow" or "CSR" means. If not, it's probably 2 secs away in the browser. But searching for icemem? |
|
@adsharma could you PTAL? Couple of clarifications
|
|
python PR: LadybugDB/ladybug-python#17 |
|
@adsharma should we add support for optional |
9803e33 to
87b5945
Compare
The problem with providing both fwd and bwd direction in user facing APIs is that users can screw up and provide logically inconsistent data. This is why storing data in one direction (fwd) and then using However, as a lower level API (when processing For now, let's do only the logically consistent version and punt on the other option. Not clear we need to version these things, since everything is super well defined and has been around for many years in the industry. Arrow for 10 years and CSR for even longer. Example: https://github.com/tensorflow/community/blob/master/rfcs/20200519-csr-sparse-matrix.md |
I don't follow. Can you put these together in a issue/disc and discuss there? |
createArrowCsrRelTableis added toarrow_table_supportto support icebug-memory rel table creation. It takes indices, indptr arrow data, bundles them inArrowCsrRelDataand adds it incsrRegistryCloses: #329