1 つの postgreSQL テーブルと 1 つの CSV ファイルの 2 つのデータ ソースをマウントする blaze サーバーを実行したいのですが、blaze サーバーに複数のデータ ソースをマウントする方法がわかりません。
サーバー側に次のコードがあります。
engine = create_engine('postgresql://user:pass@localhost:5432/mydb')
with engine.connect() as conn:
metadata=MetaData()
metadata.bind=engine
t=Table('t', metadata, autoload=True, autoload_with=conn)
server=bz.Server(t)
server.run(host='0.0.0.0', port=6363)
そしてクライアント側では:
source =Data('blaze://localhost:6363/')
t=symbol('t', source.dshape)
expr=t[t.color=='K']
result=compute(expr, Data(source))
CSV ファイルなどの別のデータ ソースやデータベースの別のテーブルを同じ Blaze サーバーにマウントするにはどうすればよいですか? 例えば:
csv= Data('.\data.csv', sep=';', has_header=True)
アップデート:
データ ソースをディクショナリとしてサーバーに追加する必要がありましたが、
engine = create_engine('postgresql://qfsa:123@localhost:5433/mydb')
with engine.connect() as conn:
metadata=MetaData()
metadata.bind=engine
table1=Data(Table('tablename1', metadata, autoload=True, autoload_with=conn))
table2=Data(Table('tablename2', metadata, autoload=True, autoload_with=conn)
csvfile=Data('.\data.csv', sep=';', has_header=True)
resources={
'table1': table1,
'table2': table2,
'csvfile': csvfile
}