Golang пакет для работы с ClickHouse
github.com/ClickHouse/clickhouse-go
Этот пакет — официальный драйвер для ClickHouse, разработанный командой ClickHouse. Он хорошо поддерживается и используется во многих проектах.
- Особенности:
- Поддержка большинства функций ClickHouse.
- Высокая производительность и низкий уровень запросов.
- Подходит как для простых, так и для сложных запросов.
- Поддержка репликации и распределенных запросов.
- Установка:
12go get github.com/ClickHouse/clickhouse-go - Пример использования:
123456789101112131415161718192021222324252627282930313233343536package mainimport ("database/sql"_ "github.com/ClickHouse/clickhouse-go""fmt")func main() {dsn := "tcp://host:port?username=your_username&password=your_password&database=your_database"db, err := sql.Open("clickhouse", dsn)if err != nil {fmt.Println("Error:", err)return}defer db.Close()// Пример запросаrows, err := db.Query("SELECT * FROM your_table LIMIT 10")if err != nil {fmt.Println("Query error:", err)return}defer rows.Close()var column1 stringvar column2 intfor rows.Next() {if err := rows.Scan(&column1, &column2); err != nil {fmt.Println("Scan error:", err)return}fmt.Println(column1, column2)}}
Recommended Posts
Golang Sarama: настройка Partitioner
20.03.2024