def test_auto(temp_db): table, uri = temp_db s = SQLSourceAutoPartition(uri, table, index='p', sql_kwargs=dict(npartitions=2)) assert s.discover()['npartitions'] == 2 assert s.to_dask().npartitions == 2 d2 = s.read() assert df.equals(d2)
def test_to_ibis(temp_db): table, uri = temp_db # Simple source s = SQLSource(uri, table) expr = s.to_ibis() d2 = expr.execute().set_index('p') assert df.equals(d2) # Auto-partition (to_ibis ignores partitioning) s = SQLSourceAutoPartition(uri, table, index='p', sql_kwargs=dict(npartitions=2)) expr = s.to_ibis() d2 = expr.execute().set_index('p') assert df.equals(d2)
def test_to_ibis(temp_db): pytest.importorskip("ibis") table, table_nopk, uri = temp_db # Simple source with primary key s = SQLSource(uri, table) expr = s.to_ibis() d2 = expr.execute().set_index('p') assert df.equals(d2) # Simple source without primary key s = SQLSource(uri, table_nopk) expr = s.to_ibis() d_nopk = expr.execute() assert df2.equals(d_nopk) # Auto-partition (to_ibis ignores partitioning) s = SQLSourceAutoPartition(uri, table, index='p', sql_kwargs=dict(npartitions=2)) expr = s.to_ibis() d2 = expr.execute().set_index('p') assert df.equals(d2)
'tools':['tap'] } } pg = SQLSourceManualPartition(uri='postgresql://[email protected]:5432/ddr', sql_expr='select * from agb.autorisation_ouvrage_eau', where_values=[[0,100],[100,"(SELECT count(*) FROM agb.autorisation_ouvrage_eau)"]], where_template='WHERE id >= {} AND id < {}') with open(r'vizApps/services/intake/catalog_manual_partitionning.yml', 'w') as file: yaml.dump(pg._yaml(with_plugin=True), file) agb1 = SQLSourceAutoPartition(uri='postgresql://[email protected]:5432/ddr', table='autorisation_ouvrage_eau', index='id', sql_kwargs={'schema':'agb'}) agb1.name ='autorisation_ouvrage_eau' agb1.description = 'Autorisation d\'ouvrage eau' #agb1.metadata['plot'] = {'datashade': True} agb1.metadata['plots'] = {'graphique_default': { 'kind':'scatter', 'x':"Type ouvrage", 'y':"Débit de prélèvement maximum autorisé m3/J", 'height': 600, 'width': 1400, 'tools':['tap'] } }