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)
Exemple #3
0
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)
Exemple #4
0
                                  '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']
                               }
                          }