Closed boetro closed 10 months ago
SG! I went ahead and assigned it to you, feel free to ask in questions in here or on discord!
Hi, @boetro! There are two options to proceed with:
Which option should I proceed with? I would like to hear your thoughts!
Great question!
Typically how we handle provisioning new resources is by using pulumi: https://www.pulumi.com
The BigQuery sink is a good example of this: https://github.com/launchflow/buildflow/blob/main/buildflow/io/gcp/bigquery_table.py this will actually provision a new bigquery table when the user runs buildflow apply
I think for now I would probably punt on this aspect and more focus on connecting to an existing click house database. Once that is done we can revisit what would be the best to provision a new database.
Great question!
Typically how we handle provisioning new resources is by using pulumi: https://www.pulumi.com
The BigQuery sink is a good example of this: https://github.com/launchflow/buildflow/blob/main/buildflow/io/gcp/bigquery_table.py this will actually provision a new bigquery table when the user runs
buildflow apply
I think for now I would probably punt on this aspect and more focus on connecting to an existing click house database. Once that is done we can revisit what would be the best to provision a new database.
Alright, I'll make the changes ASAP!
Hi @boetro! Apart from creating a table, I am done with all other implementations. I am not able to create a table with attributes (schema) dynamically from a dictionary or a df through clickhouse python client. The equivalent query I found in the DuckDB strategies is this, con.execute(f'CREATE TABLE "{self.table}" AS SELECT * FROM df')
.
I reached out to the clickhouse community (slack) with my query but didn't get help. Do you know any workaround?
I think it's fine if the table isn't dynamically created, and it assumes the user would have created it.
DuckDB is kind of the exception here, our other dataware house like sinks (snowflake and bigquery) assume the user has created it (but do provide the pulumi option for creating them).
Hi, @boetro! I would like to work on this issue! I would start with adding
io
for clickhouse and figuring out from there would make sense.