ограничение по количеству папок/файлов

12
KU
На сайте с 17.07.2008
Offline
251
#11
AustinTX:
хотелось бы теоретически узнать, как например, facebook хранят фотки пользователей, ведь там вероятно не один миллион файлов то.

Фейсбук не на шаред хостинге.

Хостинг ( https://good-host.net ) / Linux VPS ( https://good-host.net/vps ) / Windows VPS ( https://good-host.net/windows-vps ) / Выделенные серверы ( https://good-host.net/dedicated ) 14 лет онлайн!
ZR
На сайте с 30.03.2008
Offline
51
#12
vedomir:
Что-то мне кажется, что это про FAT...

Проверяется элементарно:

Создаем пустой файл

[root@server3 123]# ls -l

total 0

-rw-r--r-- 1 root root 0 Jan 10 14:14 1.txt

[root@server3 123]# du -sh

4.0K

CENTOS 4.8 i686 32-bit

файловая система ext3

zahosti.ru (http://www.zahosti.ru) - надежный дешевый хостинг
[umka]
На сайте с 25.05.2008
Offline
456
#13

AustinTX, например, несколько серверов работают с несколькими файлохранилищами.

KM.UA +1 :D

[umka] добавил 10.01.2010 в 14:21

zahosti.ru, а теперь создайте в этой директории еще сотню пустых файлов. Её размер не увеличится :)

du показывает только актуальный размер файлов. Надо еще как-то смотреть )

У меня на FreeBSD 64-bit и ufs размер пустой директории и директории с сотней пустых файлов одинаков - 2 Кб

Лог в помощь!
[Удален]
#14
KM.UA:
Фейсбук не на шаред хостинге.

ну понятно что не на шареде, просто интересно было узнать теоретически как такое возможно. ☝

[umka]
На сайте с 25.05.2008
Offline
456
#15

О! надо было больше брать! )))

Следственный эксперимент показал, что директория с 10000 пустых файлов занимает 154 Кб!

Так что это должно нормально учитываться при квотировании.

(ufs)

Директория с 100 000 пустых файлов занимает 1584 кб.

Итого, выходит, на 1 файл ufs-ка тратит примерно 16-17 байт.

KU
На сайте с 17.07.2008
Offline
251
#16
AustinTX:
ну понятно что не на шареде, просто интересно было узнать теоретически как такое возможно. ☝

[root@serv /]# find . -type f|wc -l

714384

Почему нет? У меня на домашней машине счет идет на сотни тысяч.

[Удален]
#17

если например, миллион файлов разложить в папки, в каждую по 100. Получается 10.000 папок.

Такой вариант будет лучше для сервера чем, например, столько же файлов в одной папке.

[umka]
На сайте с 25.05.2008
Offline
456
#18
AustinTX:
если например, миллион файлов разложить в папки, в каждую по 100. Получается 10.000 папок.
Такой вариант будет лучше для сервера чем, например, столько же файлов в одной папке.

Делаем директорию images.

В ней делаем 100 директорий, в каждой из них делаем еще по 100 директорий, и в каждую из них кладём по 100 файлов.

Получается 1000000 файлов.

Еси локальная файловая система перестанет справляться, всё это дело разносится на несколько внешних.

ZR
На сайте с 30.03.2008
Offline
51
#19

zahosti.ru, а теперь создайте в этой директории еще сотню пустых файлов. Её размер не увеличится :)
du показывает только актуальный размер файлов. Надо еще как-то смотреть )

У меня на FreeBSD 64-bit и ufs размер пустой директории и директории с сотней пустых файлов одинаков - 2 Кб

Изменил условия эксперимента создал файл в 1 байт:

[root@server3 123]# ls -l

total 36

-rw-r--r-- 1 root root 1 Jan 10 14:44 1.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 2.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 3.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 4.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 5.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 6.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 7.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 8.txt

-rw-r--r-- 1 root root 1 Jan 10 14:45 9.txt

[root@server3 123]# du -sh

40K

Пустые файлы занимают inode, а не кластер. С ними эксперимент был не правильный.

zahosti.ru добавил 10.01.2010 в 14:59

AustinTX:
если например, миллион файлов разложить в папки, в каждую по 100. Получается 10.000 папок.
Такой вариант будет лучше для сервера чем, например, столько же файлов в одной папке.

Вариант с папками будет гораздо быстрее, и будет менее грузить файловую систему.

Именно поэтому exim не любит использовать одну папку, а делает так:

./ 2/ 6/ a/ c/ e/ g/ i/ k/ m/ o/ q/ s/ u/ w/ y/

../ 3/ 7/ A/ C/ E/ G/ I/ K/ M/ O/ Q/ S/ U/ W/ Y/

0/ 4/ 8/ b/ d/ f/ h/ j/ l/ n/ p/ r/ t/ v/ x/ z/

1/ 5/ 9/ B/ D/ F/ H/ J/ L/ N/ P/ R/ T/ V/ X/ Z/

zahosti.ru добавил 10.01.2010 в 14:59

KM.UA:
[root@serv /]# find . -type f|wc -l
714384

Почему нет? У меня на домашней машине счет идет на сотни тысяч.

На сервере забитом под завязку у нас: 1875703 файлов

[Удален]
#20
./ 2/ 6/ a/ c/ e/ g/ i/ k/ m/ o/ q/ s/ u/ w/ y/
../ 3/ 7/ A/ C/ E/ G/ I/ K/ M/ O/ Q/ S/ U/ W/ Y/
0/ 4/ 8/ b/ d/ f/ h/ j/ l/ n/ p/ r/ t/ v/ x/ z/
1/ 5/ 9/ B/ D/ F/ H/ J/ L/ N/ P/ R/ T/ V/ X/ Z/

спасибо, наверно так и буду разбивать по папкам, по алфавиту.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий