/
dimamir
/
rill
Обзор
Документация
Войти
/
dimamir
/
rill
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
runtime/drivers/sql_store.go
34 строки
1 KB
Anshul Khandelwal
Runtime : Snowflake connector for clickhouse (#5294)
24 июл 2024, 11:48
Не верифицирован
24 июл 2024, 11:48
a294650
Код
Авторство
О чём код?
package drivers import ( "context" "database/sql/driver" "errors" runtimev1 "github.com/rilldata/rill/proto/gen/rill/runtime/v1" ) var ErrIteratorDone = errors.New("empty iterator") var ErrNoRows = errors.New("no rows found for the query") // SQLStore is implemented by drivers capable of running sql queries and generating an iterator to consume results. // In future the results can be produced in other formats like arrow as well. // May be call it DataWarehouse to differentiate from OLAP or postgres? type SQLStore interface { // Query returns driver.RowIterator to iterate over results row by row Query(ctx context.Context, props map[string]any) (RowIterator, error) } // RowIterator returns an iterator to iterate over result of a sql query type RowIterator interface { // Schema of the underlying data Schema(ctx context.Context) (*runtimev1.StructType, error) // Next fetches next row Next(ctx context.Context) ([]driver.Value, error) // Close closes the iterator and frees resources Close() error // Size returns total size of data downloaded in unit. // Returns 0,false if not able to compute size in given unit Size(unit ProgressUnit) (uint64, bool) }