![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| DimaSiK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 20.8.2006 Репутация: нет Всего: нет |
Работаю с Firebird. Как лучше работать с таким огромным количеством данных. Как организовывать выборку и навигацию по всем записям. ВЫбирать ли данные как-то странично?
-------------------- Мы не стараемся быть первыми, мы стараемся быть лучшими. |
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 7 Всего: 140 |
а нам откуда знать выбирать тебе постранично или нет! ты уж сам определись пожалуйста -------------------- Amazing |
|||
|
||||
| DimaSiK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 20.8.2006 Репутация: нет Всего: нет |
Если мне допустим нужно распечатать все 70.000 записей, то как быт ьв этом случае?
-------------------- Мы не стараемся быть первыми, мы стараемся быть лучшими. |
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 7 Всего: 140 |
вижу два пути
1. берем все данные и выводим 2. берем определенное кол-во данных, печатаем и т.д. пока не закончатся -------------------- Amazing |
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 5 Всего: 54 |
При работе с больщим количеством данных обращайте внимание на оптимальность выборки и количестве данных передаваемых по сети... Приемы оптимизации стандартные - выбирать и передавать только то, что нужно...
Вопрос в том, как вы собираетесь печатать... -------------------- ![]() |
|||
|
||||
| DimaSiK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 20.8.2006 Репутация: нет Всего: нет |
Мне иногда нужно выбрать 20.000, иногда все записи. Послеа этого как-то с ними работать, возможно запихнуть в сессию, а потом обратно их закинуть в БД. Все это нагружает приложения до безобразия и оно очень медлено работаетю Иногда вылетает ексепшин по переполнению памяти.
-------------------- Мы не стараемся быть первыми, мы стараемся быть лучшими. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 9 Всего: 315 |
вот хоть убей, не вижу в этом смысла. неужели во всех 20000 записях вносятся уникальные изменения, которые нельзя систематизировать и изменить с помощью нескольких управляющих значений?
|
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 5 Всего: 54 |
DimaSiK, Делайте постраничный вывод... Скажем по 50 записей...
-------------------- ![]() |
|||
|
||||
| Nigel |
|
|||
|
познаю мир ![]() ![]() Профиль Группа: Участник Сообщений: 515 Регистрация: 20.11.2007 Репутация: нет Всего: 19 |
А можно узнать задачу, где необходим вывод 20.000 записей сразу?
|
|||
|
||||
| krundetz |
|
|||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 1 Всего: 69 |
DimaSiK, упомянутая тобой СУБД может держать и несколько миллионов записей в базе данных и спокойно с ними работать.
Вопрос в ограничениях PHP. Он просто не предназначен для работы с таким обемом данных. Собственно для хранения данных и нужна СУБД, а скрипты нужны для управления работой СУБД, они должны сказать какие данные и как изменить, а уже изменять их можно при помощи СУБД. В общем думаю у тебя ошибка в области реализации задачи. Прежде всего определись а зачем извлекать сразу столько данных? |
|||
|
||||
| DimaSiK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 20.8.2006 Репутация: нет Всего: нет |
Допустим мне нужно вывести все данные из БД в файлик csv или xml формата для дальнейшего экспорта.
-------------------- Мы не стараемся быть первыми, мы стараемся быть лучшими. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 9 Всего: 315 |
||||
|
||||
| Nigel |
|
|||
|
познаю мир ![]() ![]() Профиль Группа: Участник Сообщений: 515 Регистрация: 20.11.2007 Репутация: нет Всего: 19 |
Экспорт в файл для дальнейшего экспорта? По-моему, бредово звучит.. Для записи данных из бд в файл используется SELECT ... INTO OUTFILE |
|||
|
||||
| krundetz |
|
|||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 1 Всего: 69 |
А в чем сдесь сложность? Берешь получаешь все данные и записываешь их все в файл в нужном тебе виде. Если боишся что возможна нехватка памяти возми и запиши данные в несколько приемов. Тоесть сначала записываешь допустим 5000 данных в файл потом еще 5000 и т.д. пока все данные не будут записаны в файл. Сложность возможна только в том случае если у тебя все операции не будут укладываться во время отведенное для работы скрипта по умолчанию(30 секунд) и не будет возможности это время увеличить. |
|||
|
||||
| DimaSiK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 390 Регистрация: 20.8.2006 Репутация: нет Всего: нет |
[QUOTE=krundetz,3.10.2008, 23:11]
Да именно в этом и есть сложность. Вермя увы увеличить нельзя. -------------------- Мы не стараемся быть первыми, мы стараемся быть лучшими. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |