Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Пишу небольшой поисковик по фтп ресурсам

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Хочу советов и контроля :)
odmin4eg
Отправлено: 16 Апреля, 2008 - 08:14:02
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Апр. 2008  


Помог: 0 раз(а)




Доброго времени суток.
Взялся я писать для себя, ни за деньги ни за курсовой сёрч инжинее. на пхп

Тут буду выкладывать свои идеи и наработки.
Буду рад вашей критике или советам по оптимизации.

и так первый этап это проэктировании БД.

CODE (text):
скопировать код в буфер обмена
  1. -- phpMyAdmin SQL Dump
  2. -- version 2.10.3deb1ubuntu0.2
  3. -- http://www.phpmyadmin.net
  4. --
  5. -- Хост: localhost
  6. -- Время создания: Апр 16 2008 г., 12:48
  7. -- Версия сервера: 5.0.45
  8. -- Версия PHP: 5.2.3-1ubuntu6.3
  9.  
  10. SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
  11.  
  12. --
  13. -- База данных: `poisk`
  14. --
  15.  
  16. -- --------------------------------------------------------
  17.  
  18. --
  19. -- Структура таблицы `files`
  20. --
  21.  
  22. CREATE TABLE IF NOT EXISTS `files` (
  23.   `name` varchar(999) character set cp1251 NOT NULL,
  24.   `id_dir` int(11) NOT NULL,
  25.   `size` varchar(20) character set cp1251 NOT NULL,
  26.   `date1` date NOT NULL,
  27.   `id_server` int(11) NOT NULL,
  28.   PRIMARY KEY  (`id_dir`,`id_server`)
  29. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  30.  
  31. --
  32. -- Дамп данных таблицы `files`
  33. --
  34.  
  35.  
  36. -- --------------------------------------------------------
  37.  
  38. --
  39. -- Структура таблицы `folders`
  40. --
  41.  
  42. CREATE TABLE IF NOT EXISTS `folders` (
  43.   `id_dir` int(11) NOT NULL,
  44.   `path` varchar(999) character set cp1251 NOT NULL,
  45.   PRIMARY KEY  (`id_dir`)
  46. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  47.  
  48. --
  49. -- Дамп данных таблицы `folders`
  50. --
  51.  
  52.  
  53. -- --------------------------------------------------------
  54.  
  55. --
  56. -- Структура таблицы `servers`
  57. --
  58.  
  59. CREATE TABLE IF NOT EXISTS `servers` (
  60.   `id_server` int(11) NOT NULL auto_increment,
  61.   `adress` varchar(999) NOT NULL,
  62.   `date_index` date NOT NULL,
  63.   `id_traf` int(11) NOT NULL,
  64.   `id_status` int(11) NOT NULL,
  65.   PRIMARY KEY  (`id_server`),
  66.   UNIQUE KEY `adress_2` (`adress`),
  67.   KEY `adress` (`adress`)
  68. ) ENGINE=MyISAM  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
  69.  
  70. --
  71. -- Дамп данных таблицы `servers`
  72. --
  73.  
  74. INSERT INTO `servers` (`id_server`, `adress`, `date_index`, `id_traf`, `id_status`) VALUES
  75. (1, 'localhost', '0000-00-00', 1, 1);
  76.  
  77. -- --------------------------------------------------------
  78.  
  79. --
  80. -- Структура таблицы `status`
  81. --
  82.  
  83. CREATE TABLE IF NOT EXISTS `status` (
  84.   `id_status` int(11) NOT NULL,
  85.   `name_status` varchar(999) NOT NULL,
  86.   PRIMARY KEY  (`id_status`)
  87. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  88.  
  89. --
  90. -- Дамп данных таблицы `status`
  91. --
  92.  
  93.  
  94. -- --------------------------------------------------------
  95.  
  96. --
  97. -- Структура таблицы `trafic`
  98. --
  99.  
  100. CREATE TABLE IF NOT EXISTS `trafic` (
  101.   `id_traf` int(11) NOT NULL,
  102.   `name_traf` varchar(999) character set cp1251 NOT NULL,
  103.   PRIMARY KEY  (`id_traf`)
  104. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  105.  
  106. --
  107. -- Дамп данных таблицы `trafic`
  108. --


В кратце о чём тут.
Таблица
files - для хранения файлов
folders - для хранения путей к файлам
servers - для хранения списка серверов
trafic - вид трафика до ресурса /город/инет/локальный
status статус серверов онлайн или оффлайн


собственно критику и советы можно начинать, что будет быстро, что медленно.
PS число записей в таблице файлов думаю будет до 10 милионов
щас пишу индексатор.
 
 Top
philimon
Отправлено: 16 Апреля, 2008 - 17:48:05
Post Id


Новичок


Покинул форум
Сообщений всего: 61
Дата рег-ции: Окт. 2007  
Откуда: Моск. обл.


Помог: 2 раз(а)




Зачем для названий файлов и каталогов создавать 2 таблицы, по-моему, проще будет все это хранить в одной. Поле path в таблице folders лучше сделайте побольше размером или вообще типом text, т.к. путь до файла может быть больше чем 999 символов.

(Отредактировано автором: 16 Апреля, 2008 - 17:57:38)

 
 Top
odmin4eg
Отправлено: 17 Апреля, 2008 - 04:13:05
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Апр. 2008  


Помог: 0 раз(а)




разносил для уменьшения избыточности данных.
хочу чтоб в каталогах не было повторений, что по моим расчётам это сократит обьём данных и следовательно выборки из БД
 
 Top
philimon
Отправлено: 17 Апреля, 2008 - 11:27:54
Post Id


Новичок


Покинул форум
Сообщений всего: 61
Дата рег-ции: Окт. 2007  
Откуда: Моск. обл.


Помог: 2 раз(а)




Посмотрите таблицу files. Разве может быть поле, которое имеет повторяющиеся значения первичным ключем?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB