Есть две таблицы размерностью 20 млн и 10 млн записей соответственно
Первая таблица содержит 5 полей, вторая 3 поля которые также содержит первая таблица
Есть ли какой-то вариант объединения таблиц в одну и с правильным соотношением полей ?
seven5674
и каждый раз обьединять "20 млн." с "10 млн"? Или оно накапливается?(в смысле сначала 20+10, потом 30+10, 40+10?)
Сколько времени приемлемо?30-60 минут подойдёт?
Эта миграция разве не разовая операция? Отчего это так важно?
К сожалению нет. Так уж построен процесс и фиг его поменяешь
Изначально БД формируется из csv фалов которые формируются с некой периодичностью . Так как структура файлов разная то и получается две таблицы
sqlite3 file.db "sql query..."
Увидел. Спасибо. Импорт из csv ей и делается.
Сейчас добавлю sql query посмотрим сколько будет занимать по времени
для импорта 10 М это не долго. В любом случае, импорт может занять столько, сколько ему нужно занять и на пользователя это никак не должно влиять, если делать правильно.
seven5674, импортируй из CSV (например, прайс-лист) в новую таблицу, а оттуда в общую таблицу.
все таки нативные приложения работаю быстрее
Дело не в этом.
библиотека SQLite выполняет
операции достаточно эффективно. Вопрос в том насколько эффективно хранятся данные в обеих таблицах из-за используемых типов данных и сколько самих данных. Ответа на вопросы пока не получил.
ну так импорт csv файлов происходит по схеме указанной выше
по итогам импорта они все поля "text"
создать предварительно таблицу не представляется возможным - так или иначе поля меняются практически постоянно. константа лишь только то что все поля из таблицы B есть в таблице А