-
Notifications
You must be signed in to change notification settings - Fork 212
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
InMemory Catalog #293
Comments
Forwarding my comment here as well: #289 (comment) Maybe we should add this to the documentation of the SqlCatalog as well: def catalog_memory(warehouse: Path) -> Generator[SqlCatalog, None, None]:
props = {
"uri": "sqlite+pysqlite:///:memory:",
"warehouse": f"file://{warehouse}",
} iceberg-python/tests/catalog/test_sql.py Lines 69 to 73 in 1befad7
The |
@Fokko |
@Fokko Pulling out your comment in #289
I agree that we don't need 2 in-memory catalog implementations. Let me see if I can repurpose #289 |
Looks like there's also a |
@Fokko I took some time to think this over. I understand your concern regarding 2 in-memory catalog implementations. The 2 implementations are just 2 different ways to achieve the same outcome; using I'm leaning towards having I think there's value in storing the pure Python Object in memory and making it easily accessible. The |
@kevinjqliu Alright, that's fair, I just wanted to make sure that we considered the option before making the |
I must admit that I'm second-guessing the decision to add another catalog. This mostly comes from the recent discussions on the Java side where catalogs are being removed to avoid further proliferation. |
@Fokko thats fair. I'll see if there are features in the PR I can pull out. We can leave the |
Feature Request / Improvement
Feature Request: InMemory Catalog implementation for Python Iceberg. For testing, prototyping, and generally playing around with Iceberg.
It would be great to have a catalog implementation in-memory, and possibly write to local file system instead of s3. This would lower the barrier to entry to use the python iceberg library.
There's currently a
NoopCatalog
which is used for loadingStaticTable
There's also a
InMemoryCatalog
implementation already used for testing. We can use this as the basis for implementation.Inspired by Trino's Memory connector
The text was updated successfully, but these errors were encountered: