LibreOffice Calc и большой файл

Есть немаленький файлик, порядка 80 тысяч строк и что-то около 50 столбцов.
Изначально был сгенерен сторонней программой в текстовом виде (*.csv). Размер около 17 мегабайт.
Открывается минуты две. Попытка выделить и удалить столбец может длиться минут пять. Сохранение занимает минут 10-15!!!
И вот вопрос: куда копать? Настройки памяти в Либре попробовал поменять, виртуальную машину джаву отключил. Что еще можно в либре изменить, чтобы так не тормозила?

Система Кубунта 14.04.
PhenomII и 16 Гб оперативки.

0
adem4ik - 26 Ноябрь, 2014 - 00:20
Изображение пользователя adem4ik.

можно попробовать версию поновее:
sudo add-apt-repository ppa:libreoffice/ppa
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

а по хорошему ваш баг-репорт ой бы как помог разработчикам.

0
AlexBKost - 26 Ноябрь, 2014 - 23:43

Изначально был сгенерен сторонней программой в текстовом виде (*.csv). Размер около 17 мегабайт. Открывается минуты две. Попытка выделить и удалить столбец может длиться минут пять. Сохранение занимает минут 10-15!!! А у вас не возникало мысли, что так и должно быть с таким файдом? Не имея его на руках, трудно давать хоть какие-то рекомендации. Может просто изменить формат сохранения на родной *.odf? Или сравнить приведенные временные диапазоны в другой сторонней программе?

0
Master_Yoda - 27 Ноябрь, 2014 - 11:01

А почему именно Calc? Полноценная БД была бы более уместна, для работы с такими объёмами.

0
AlexMad - 27 Ноябрь, 2014 - 12:52

Для ускорения работы преобразовывал его в .ods , но это ничего особо не меняет.
Calc по простой причине. Этот файл - лог записи датчиков за день, сгенерил я его сам из нескольких логов устройств. Просто нужно было глазками посмотреть и удалить некоторые строки (когда машина стояла, данные, идущие в лог для анализа не нужны).
Думал, что будет проще это сделать в Calc, чем писать самому обработчик. Вижу, что быстрее будет написать.
У меня этот же файл загружается в таблицу, все данные хранятся в текстовом виде, я это все преобразовываю в числа, фильтрую, строю графики. И на все про все не больше минуты. А Calc меня разочаровал тем, что просто отредактировать таблицу больших размеров в нем не реально.

0
Condor - 27 Ноябрь, 2014 - 14:06
Изображение пользователя Condor.

Дык сам и обрабатывай, скриптом, будет быстрее.
80 тысяч строк обработать скриптом в консоли вообще не проблема, ну если какие-нибудь вложенные циклы не делать.
Есть несколько вариантов, скрипт на баше, питоне или том же php.
Я в теме php, по этому, я бы вместо csv, сгенерировал xml файл, а потом этот xml файл обработал бы в три-пять строк на simplexml.

0
AlexMad - 28 Ноябрь, 2014 - 21:40

Да я сам и обрабатываю. Я же написал, что хотел просто открыть и глазками выбрать ненужные строки. Скриптом не получится сложно определить, какие строки лишние, слишком много косвенных данных.

Вобщем, суть понятна - для больших файлов Calc не подходит. А со своим файликом я уж разберусь.
Всем спасибо.

0
Condor - 28 Ноябрь, 2014 - 22:41
Изображение пользователя Condor.

Ну, 80к записей просмотреть глазами тоже удовольствие ещё то, проще разработать алгоритм автоматического разбора.
А если работу надо будет повторить с другими данными?

0
AlexMad - 29 Ноябрь, 2014 - 15:06

Это уже диалектика. Сейчас так много данных, потому что собраны с разных источников, дублирующих друг-друга. Другие данные будут собираться уже после того, как станет понятно, какие датчики нужны, а какие нет.
А по поводу "глазами 80к" все просто. Есть журнал наблюдений. Согласно этому журналу, работы шли в XX часов, ХХ минут. В другой интервал времени машина стояла. Можно просто скриптом вырезать те строки, когда машина стояла (так и сделал), но было желание убедиться глазами, что путевой отметчик в эти временные интервалы стоит на месте.

+1
MacLeod - 28 Ноябрь, 2014 - 03:52
Изображение пользователя MacLeod.

Можно отправить разработчикам ссылки на видеокурсы по алгоритмам и структурам данных =)

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры