Chess Position Evaluations

Примечание

Эта страница является частью раздела Импорт датасетов, где описаны примеры загрузки популярных наборов данных в YDB. Перед началом работы ознакомьтесь с общей информацией о требованиях и процессе импорта.

Датасет включает 513 миллионов оценок шахматных позиций, выполненных движком Stockfish для анализа на платформе Lichess.

Источник: Kaggle - Chess Position Evaluations

Размер: 59.66 GB

Пример загрузки

  1. Скачайте файл evals.csv с Kaggle

  2. Создайте таблицу в YDB одним из следующих способов:

Подробнее про Embedded UI.

CREATE TABLE `evals` (
    `fen` Text NOT NULL,
    `line` Text NOT NULL,
    `depth` Uint64,
    `knodes` Uint64,
    `cp` Double,
    `mate` Double,
    PRIMARY KEY (`fen`, `line`)
)
WITH (
    STORE = COLUMN,
    UNIFORM_PARTITIONS = 50
);
ydb sql -s \
'CREATE TABLE `evals` (
    `fen` Text NOT NULL,
    `line` Text NOT NULL,
    `depth` Uint64,
    `knodes` Uint64,
    `cp` Double,
    `mate` Double,
    PRIMARY KEY (`fen`, `line`)
)
WITH (
    STORE = COLUMN,
    UNIFORM_PARTITIONS = 50
);'
  1. Выполните команду импорта:
ydb import file csv --header --null-value "" --path evals evals.csv

Пример аналитического запроса

Определим позиции с наибольшим количеством ходов, проанализированных движком Stockfish:

SELECT
    fen,
    MAX(depth) AS max_depth,
    SUM(knodes) AS total_knodes
FROM evals
GROUP BY fen
ORDER BY max_depth DESC
LIMIT 10;
ydb sql -s \
'SELECT
    fen,
    MAX(depth) AS max_depth,
    SUM(knodes) AS total_knodes
FROM evals
GROUP BY fen
ORDER BY max_depth DESC
LIMIT 10;'

Этот запрос выполняет следующие действия:

  • Находит позиции (представленные в формате FEN) с максимальной глубиной анализа (depth).
  • Суммирует количество проанализированных узлов (knodes) для каждой позиции.
  • Сортирует результаты по максимальной глубине анализа в порядке убывания.
  • Выводит топ-10 позиций с наибольшей глубиной анализа.
Предыдущая
Следующая