powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python: хранение большого числа объектов
16 сообщений из 16, страница 1 из 1
Python: хранение большого числа объектов
    #38404167
друзья,
стоит такая задача: хранить список из большого (до 1 млн) количества объектов.
сначала реализовал двусвязный список из объектов, как описано здесь http://www.ibm.com/developerworks/ru/library/l-data_structures_02/
но поскольку двусвязный список из структур на Си СОВСЕМ НЕ то же самое что двусвязный список из объектов на Питон, то память дико жрется!
конечно такие вещи должны реализовываться на чистом си. но нужно именно на питоне.
пока есть идея использовать в качестве списка NUMpy array или что-то аналогичное из этой либы (пока не углублялся), а в качестве объекта использовать tuple с набором элементов (а именно несколько int , float, хеш-таблица)
как-то так
какие будут идеи?
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404417
Кот Чеширский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лет десять назад было что-то подобное, написано было на перле, хранилось тупо на диске в файлах. Т.е. от 4 т. файлов - число предприятий, у каждого своя папка в это папки хранилось по несколькую файлов - карточка предприятия, прайс предприятия и чтото еще. Работало очень быстро. А mysql или postgresql вам не подойдет в связке с питоном? Или у вас какая то учебная задача?
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404475
>>>стоит такая задача: хранить список из большого (до 1 млн) количества объектов
Где хранить?
>>>стоит такая задача:
Зачем?
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404503
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хранить во временной таблице субд, как вариант.
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404678
Кот Чеширский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сдается мне ТС = студент.
Двухсвязные списки - классический пример даже в книге по Турбо Си Ричарда Винера.
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404816
Кот Чеширский,

да, также реализовывал на базе. сначала sqlite, но поняв, что скорость никакая решил переделывать под mysql
однако требования изменились: на диске (флешка) свободного места 100 МБ, плюс постоянно писать/читать на нее крайне нежелательно (ресурс мал)
поэтому сейчас единственный вариант - озу
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404818
Кот Чеширский,

не совсем понял, про пример из книги?
еще раз повторю - реализовывать на списке питон-объектов оч затратно по объему памяти
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38404889
володька трынькинКот Чеширский,

да, также реализовывал на базе. сначала sqlite, но поняв, что скорость никакая решил переделывать под mysql
однако требования изменились: на диске (флешка) свободного места 100 МБ, плюс постоянно писать/читать на нее крайне нежелательно (ресурс мал)
поэтому сейчас единственный вариант - озу
Если надо хранить питонячьи объекты в базе, то смотри на ZODB
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38405026
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
володька трынькинКот Чеширский,

да, также реализовывал на базе. сначала sqlite, но поняв, что скорость никакая решил переделывать под mysql
однако требования изменились: на диске (флешка) свободного места 100 МБ, плюс постоянно писать/читать на нее крайне нежелательно (ресурс мал)
поэтому сейчас единственный вариант - озу

http://dev.mysql.com/doc/refman/5.0/en/memory-storage-engine.html
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38405028
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть еще всякие штуки типа мемкеша и т.п.
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38406558
Hett,

а как в плане объема занимаемого места? это все-таки главный вопрос
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38406565
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нуу, можно создать несколько таблиц.
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38406569
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38406573
Hett,

я имею ввиду в сравнении с простым хранением списка объектов в памяти.
может кто делал такие тесты?..
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38413750
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что такого-то?

а столько памяти должны жрать 1 млн объектов?
1 килобайт?


у меня dictionary c 4 901 403 элементами создается, вроде ничего страшного
полгигобайта гдето занимает

можно в качестве ключей словаря использовать hash( от чегого там )
я так 200 мегабайт в памяти съэкономил
...
Рейтинг: 0 / 0
Python: хранение большого числа объектов
    #38417725
demmsnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
володька трынькин,

А что тут тестировать. Ссылка на объект это 4 байта в 32-х битной архитектуре в CPython. Эффективности list самодельными структурами вам не достичь. Надо понимать что за объекты вы храните в памяти может это 1 млн целых чисел? Опять, же mmap и в путь.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python: хранение большого числа объектов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]