|
|
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Всем программистам привет! Respect! В общем столкнулся с небольшой незадачей : необходимо на клиенте отображать неопределенное количество изображений( потенциально может быть больше 1000 ) формата JPEG( и ему подобных ). Как выясняется на этапе программинга, файлы картинок весят от одного мега на брата и вот изначально я решил делать несвязный доступ к базе данных, т е используя DataAdapter и DataSet, но позже понял, что если будет выбрано огромное количество картинок, то просто физически может не хватить места в оперативке компа, т е , как я понимаю, датасет размещается именно в кэше. Поэтому щас думаю, может отказаться( пока не поздно:) ) от несвязного уровня и перейти на связный, т е используя в конечном счете DataReader. Но, как я понимаю, датареадер только для однонаправленного чтения( причем быстрого чтения, т к будет считывать в запросе по одной записи ), а возможно, что в будущем потребуется расширение функционала, связанного с модификацией изображений, как тогда из положения выходить. Может есть какая нить возможность оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер. Подскажите как быть то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2007, 12:59 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Расскажите для начала, на кой клиенту понадобится сразу 1000 изображений? Не проще ли отдавать ему Thumbnail'ы в пару десятков килобайт каждый, а там уже решать, какие изображения и когда грузить целиком? И что вы вообще подразумеваете под "связным" и "несвязным"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2007, 23:00 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Нахлобуч И что вы вообще подразумеваете под "связным" и "несвязным"? это не я, это Эндрю Троелсен:). Связный -> sqlDataReader, несвязный -> DataSet( DataAdapter ). Что касается изображений, то их может быть гораздо более 1000 : 24 * 1 * 3600 * 24 * 365( максимальное количество картинок( кадров за год )( также возможно в будущем будем прокручивать и ролики ), который возможно понадобится отображать пользователю ). Хотим сделать отображение видеоряда в виде обыкновенных иконок( в базе данных сейчас сами тяжеловесные отображения( более мега на брата ) ), т е как то необходимо преобразовать данные в более легкие по памяти, как этого достичь неизвестно мне, пока:). Вы мне лучше растолкуйте, что значит Thumbnail'ы, буду признателен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 10:41 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
FasterHarderэто не я, это Эндрю Троелсен:). Связный -> sqlDataReader, несвязный -> DataSet( DataAdapter ). У меня в книге это читается как Disconnected, что не есть "несвязный", а скорее "рассоединенный". FasterHarder Что касается изображений, то их может быть гораздо более 1000 : 24 * 1 * 3600 * 24 * 365( максимальное количество картинок( кадров за год )( также возможно в будущем будем прокручивать и ролики ), который возможно понадобится отображать пользователю ). Клиент в каком виде выполняется? WebForms или WinForms? FasterHarderнеобходимо преобразовать данные в более легкие по памяти, как этого достичь неизвестно мне, пока:). Вы мне лучше растолкуйте, что значит Thumbnail'ы, буду признателен. Thumbnail ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 11:22 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Нахлобуч Клиент в каком виде выполняется? WebForms или WinForms? пока на Win, но 100% будет писаться софт и под веббинг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 13:27 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
FasterHarderпока на Win, но 100% будет писаться софт и под веббинг. На ум приходит, например, такой вариант. Миниатюры отдаются веб-сервисом через HTTP и отображаются на клиенте небольшими порциями. Плюсы подхода -- при умелом использовании If-Modified-Since, HTTP Status 304 и клиентского кэша можно добиться очень высокой производительности при минимальных усилиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 14:34 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext пока про веб не думаем( разрабатываем только общие библиотеки ). За ссылку спасибо( файл объемом 1.5 мега преобразовал в 40 Кб, используя пиктограмму картинки ), но возник вопрос, связанный с тем, что размер простой иконки примерно около 25 кб, а я программно вытаскиваю данные с sql_2005, затем помещаю в PictureBox и сохраняю в файл с расширением bmp и получаю очень странную картину, все файлы весят около 15 Кб( хотя простая иконка весит больше ). Плюс ко всему делаю еще одну проверку в коде : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. messagebox выдает типа 15890, т е как я понимаю это действительный размер файла, сохраненного в базе данных( и опять имею около 15 Кб ). Снимки были сделаны с камеры, в формате jpeg. Нестыковочка получается, что реальные кадры весят меньше чем какая то иконка или возможно, я неправильно определяю действительный размер картинки, сохраненной в базе данных( думал, что должны быть около 1 М :) ). Есть ли какая нить возможность, программно определить действительный размер файла, залитого в базу данных в виде изображения. Подскажите как быть то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 16:06 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
FasterHarder пока про веб не думаем( разрабатываем только общие библиотеки ). В таком стиле: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. FasterHarder messagebox выдает типа 15890, т е как я понимаю это действительный размер файла, сохраненного в базе данных( и опять имею около 15 Кб ). Снимки были сделаны с камеры, в формате jpeg. Нестыковочка получается, что реальные кадры весят меньше чем какая то иконка или возможно, я неправильно определяю действительный размер картинки, сохраненной в базе данных( думал, что должны быть около 1 М :) ). Так вы так думали или так и есть? Судя по коду (еще неизвестно, правда, какой там SELECT исполняется) все верно. FasterHarder Есть ли какая нить возможность, программно определить действительный размер файла, залитого в базу данных в виде изображения. Подскажите как быть то? Это самая насущная проблема что ли? Для SQL Server есть функция DATALENGTH ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 16:49 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext сейчас идет этап проектирования системы, так что на детали и реализацию не обращайте внимания( все привожу для абстракции ):). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 18:08 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
FasterHarderКак выясняется на этапе программинга, Так какой этап :) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 18:15 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext на самом деле очень много подводных камней( практически все будет связано с графикой ), поэтому сейчас я моделирую сложность процессов на простых примерах( программингом ), чтоб затем без проблем инкапсулировать куда надо:), т е в целом сейчас еще не сформировано проектирование, а идет этап выявления узких мест( проектирование + "легкий" код ) :). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 18:32 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
FasterHarderна самом деле очень много подводных камней Каких, если не секрет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 18:45 |
|
||
|
оставить несвязанный уровень, не погубив систему или однозначно придется юзать датареадер
|
|||
|---|---|---|---|
|
#18+
Код: plaintext Нахлобуч Каких, если не секрет? все же ведь относительно:), для кого то мои подводные камни покажутся детскими задачками, расщелкивающиеся как орешки( таких как Троелсен :)) ), так что...:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2007, 21:00 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=34662316&tid=1352699]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 386ms |

| 0 / 0 |
