С какими БД работал

«С какими БД работал» — вопрос из категории Базы данных, который задают на 41% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Работал с PostgreSQL, MySQL, MongoDB и Redis.

PostgreSQL/MySQL:
Использовал database/sql и ORM (GORM, sqlx) для работы с реляционными данными.

db, err := sql.Open("postgres", "connection_string")
if err != nil {
    log.Fatal(err)
}
defer db.Close()

MongoDB:
Через официальный драйвер go.mongodb.org/mongo-driver.

client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://localhost"))
if err != nil {
    log.Fatal(err)
}

Redis:
Использовал github.com/go-redis/redis для кеширования и очередей.

client := redis.NewClient(&redis.Options{Addr: "localhost:6379"})

Также есть опыт с ClickHouse и Elasticsearch в высоконагруженных проектах.

Видео-ответы