Уважаемые.
такая проблемка.. наша программа работает с файлами, сохраняет их на диске и путь к файлам хранит в базе данных. Дело в том, что этих файлов очень много.. десятки тысяч..и будет еще больше.. миллионы. Windows не очень любит когда столько файлов в одной папке хранится.
Может имеет смысл хранить файлы в базе данных (SLQ SERVER) ? Вроде там BLOB можно хранить..
Спасибо
хранить файлы в SQL server
-
- Уже с Приветом
- Posts: 9392
- Joined: 18 Mar 2004 15:11
- Location: New York -> FL
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: хранить файлы в SQL server
Можно. В свое время у MS даже был проект чтобы сделать на MS SQL файловую систему
Но получилось медленно (для общего случая).
В частном случае может и пройти. Каков avg размер файла? Что там? (компрессия? компрессия с вынесенным словарем если файлы похожи?)
Но все же мне кажется легче сделать тупой hash по папкам
\A0001110\B9339\D94944\porngirl.jpg
Но получилось медленно (для общего случая).
В частном случае может и пройти. Каков avg размер файла? Что там? (компрессия? компрессия с вынесенным словарем если файлы похожи?)
Но все же мне кажется легче сделать тупой hash по папкам
\A0001110\B9339\D94944\porngirl.jpg
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 9392
- Joined: 18 Mar 2004 15:11
- Location: New York -> FL
Re: хранить файлы в SQL server
Дима.. размер файлов примерно 11 мегабайт каждый Я вот тоже думал про отдельные папки.. типа каждый день пусть создаются разные папки и файлы на этот день хранятся там.Dmitry67 wrote: ↑19 Apr 2017 16:03 Можно. В свое время у MS даже был проект чтобы сделать на MS SQL файловую систему
Но получилось медленно (для общего случая).
В частном случае может и пройти. Каков avg размер файла? Что там? (компрессия? компрессия с вынесенным словарем если файлы похожи?)
Но все же мне кажется легче сделать тупой hash по папкам
\A0001110\B9339\D94944\porngirl.jpg
А почему хранить файлы в базе не есть очень хорошая идея?
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: хранить файлы в SQL server
Вы получите очень неповоротливую базу, очень большую по размеру --> проблемы с бэкапом
Вторая проблема - допустим вам надо удалить 1000000 файлов. Так как скорее всего у вас Full recovery, то контент всех удаленных файлов пойдет писаться в лог...
Вторая проблема - допустим вам надо удалить 1000000 файлов. Так как скорее всего у вас Full recovery, то контент всех удаленных файлов пойдет писаться в лог...
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: хранить файлы в SQL server
Судя по размеру - мультимедия, MP3 в хорошем качестве на 5 мин
А ну ка, доложите сюда, что у вас за бизнес идея? )))
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 9392
- Joined: 18 Mar 2004 15:11
- Location: New York -> FL
-
- Уже с Приветом
- Posts: 9392
- Joined: 18 Mar 2004 15:11
- Location: New York -> FL
Re: хранить файлы в SQL server
-
- Уже с Приветом
- Posts: 946
- Joined: 24 Sep 2013 05:58
- Location: US\GA
Re: хранить файлы в SQL server
У вас 10миллион * 11MB ~= 100GB , что есть совсем чуть-чуть. 1млн файликов есть на моём десктопе Не переживайте за Виндовс, пока нет проблем, ежедневно по новой папочке ГОД\МЕСЯЦ\ДЕНЬ и жить можно долго и счастливо.shadow7256 wrote: ↑19 Apr 2017 15:55 такая проблемка.. наша программа работает с файлами, сохраняет их на диске и путь к файлам хранит в базе данных. Дело в том, что этих файлов очень много.. десятки тысяч..и будет еще больше.. миллионы. Windows не очень любит когда столько файлов в одной папке хранится.
Ещё вот это посмотрите: https://msdn.microsoft.com/en-us/library/bb862195.aspx
-
- Уже с Приветом
- Posts: 28294
- Joined: 29 Aug 2000 09:01
- Location: SPB --> Gloucester, MA, US --> SPB --> Paris
Re: хранить файлы в SQL server
Что-то у вас с арифметикойmskmel wrote: ↑19 Apr 2017 19:58У вас 10миллион * 11MB ~= 100GB , что есть совсем чуть-чуть. 1млн файликов есть на моём десктопе Не переживайте за Виндовс, пока нет проблем, ежедневно по новой папочке ГОД\МЕСЯЦ\ДЕНЬ и жить можно долго и счастливо.shadow7256 wrote: ↑19 Apr 2017 15:55 такая проблемка.. наша программа работает с файлами, сохраняет их на диске и путь к файлам хранит в базе данных. Дело в том, что этих файлов очень много.. десятки тысяч..и будет еще больше.. миллионы. Windows не очень любит когда столько файлов в одной папке хранится.
Ещё вот это посмотрите: https://msdn.microsoft.com/en-us/library/bb862195.aspx
Терабайт, а не гигабайт
Зарегистрированный нацпредатель, удостоверение N 19719876044787 от 22.09.2014
-
- Уже с Приветом
- Posts: 946
- Joined: 24 Sep 2013 05:58
- Location: US\GA
Re: хранить файлы в SQL server
Согласен, надо было гуглом считать: 10E6 * 10MB = 100 terabytes
100TB блобов думаю что Oracle, что MS SQL поплохеет.
Тогда снести всё на NAS, на прошлом проекте как раз под медиафайлики, десятки миллионов, но размером поменьше, стоял https://www.emc.com/en-us/storage/isilon/index.htm
Метаданные были в сильно кастюмизированном Alfresco , потом переписали на своё.
-
- Уже с Приветом
- Posts: 9392
- Joined: 18 Mar 2004 15:11
- Location: New York -> FL
-
- Уже с Приветом
- Posts: 15311
- Joined: 30 Apr 2003 16:43
Re: хранить файлы в SQL server
передумал.