Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.astrotop.ru/astro.htm
Дата изменения: Fri Dec 19 11:51:13 2003 Дата индексирования: Mon Oct 1 19:24:30 2012 Кодировка: koi8-r Поисковые слова: earth's atmosphere |
Общие положения.
Создаваемый рейтинговый каталог интернет-ресурсов должен:
Данные хранятся в базе данных проекта (Postgresql), которая разделяется на:
Таблицы.
Примечания:
красным цветом - то, чего реально
нет, но может появиться (либо остается под вопросом, надо ли вводить)
желтым цветом - то, что совершенно
точно нужно еще доделать и ввести
розовым цветом - уточнения и примечания,
либо неуверенность в необходимости осуществления (но реально уже сделано,
тем не менее)
коричневым цветом - только названия
уже введенных и сформированных таблиц
синим цветом - так было раньше,
до создания базы данных
Общая
таблица свойств астротопа (его статистика) base_param
.
Поле | Name | Тип | Наличие | Пример заполнения |
Статус данной строки таблицы свойств Астротопа | status | bool | обязательно,
создается автоматически, =0 - уже устаревшая информация =1 - последняя запись |
0 |
Дата "снимка" свойств Астротопа | date | timestamp | обязательно,
создается автоматически - для старых записей (до начала текущего месяца), например - на конец каждого месяца (или вообще в любой мормент очередного изменения информации), для текущего месяца - для каждого дня |
2003-01-15 15:00:00 |
Всего ресурсов (всех, в том числе принадлежащих тестовой группе) - практически готовый конечный номер ID (после прибавления единицы) для вновь вносимого ресурса | num_sites | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1023 |
Всего участников-ресурсов ("живых" (т.е. незаблокированных для участия в данной группе рейтинга), "правильных") во всех группах со status из таблицы ресурсов = 1,2 | num_sites_live | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
762 |
Всего участников-ресурсов ("живых", т.е. незаблокированных для участия в данной группе рейтинга) последовательно во всех группах со status из таблицы ресурсов = 1,2 | site_in_group_mv | массив integer ,
сумма его равна num_sites_live |
необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
(35,45,132,...) |
Всего групп | num_groups | уникальное (порядковое) integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
253 |
Всего основных групп (status=1, 2 из таблицы group) | num_base_groups | уникальное (порядковое) integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
23 |
Для скольких групп приводится статистика просмотров | num_group_stat | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 Больше нуля - число групп, по которым буд приведены данные в следующих 2-х столбцах |
2 |
Массив номеров групп, по которым приведена статистика просмотров (в следующем столбце) | num_group_stat_mv | массив integer | необязательно | (5,9) |
Массив чисел просмотров группы на данную дату | group_stat_mv | массив integer | необязательно | (2033,9545) |
Всего голосований | num_votes | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
12 |
Всего действующих в данный момент голосований | num_votes_live | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1 |
Всего юзеров | num_users | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1 |
Всего юзеров, поставивших оценки | num_users_estim | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1 |
Всего юзеров, внесших новые сайты | num_users_addsite | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1 |
Всего юзеров, участвовавших в голосованиях | num_users_vote | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
1 |
Всего просмотров всех групп | num_count_all_group | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
43000 |
Всего просмотров основных групп (status=1, 2 из таблицы group) | num_count_base_group | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
42567 |
Всего всех оценок во всех группах - любых, фактически это полное число записей в базе данных оценок ресурсам за все время | num_estimate_total | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 Важное примечание: данный параметр обязателен и обновляется автоматически для status=true !!! |
13447 |
Всего оценок во всех группах - только в незаблокированных сайтах (которые не находятся в черном списке, т.е. рейтингуются) | num_estimate_all_group | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
11175 |
Всего оценок в основных группах
(status=1, 2 из таблицы group) - только в незаблокированных сайтах (которые не находятся в черном списке, т.е. рейтингуются) |
num_estimate_base_group | integer | необязательно,
но часто создается автоматически, при этом если нет информации = -1 |
11115 |
Паспорт Интернет-ресурса table_sites
в таблице паспортов ресурсов.
Поле | Name | Тип | Наличие | Пример заполнения |
ID ресурса | num_sites | integer (уникальное целое положительное число) | Обязательно,
создается при заведении или редактировании паспорта |
1 |
Код соответствия тематике каталога АстроТоп-100 | status | smallint | Обязательно
Проверяется и редактируется автоматизированно (существование страницы) и членами команды проекта Новые ресурсы вносятся и участвуют на общих основаниях, но им соответствует
код-
=1 - страница проверена и соответствует проекту (тут же посылается
автоматическое письмо автору (при наличии е-мэйла) ресурса с кодом и паролем
для редактирования) - если можно это вообще делать для данной страницы
(например, авторам каталогов посылать такие письма полностью нецелесообразно)
=2 - зарубежная астро-космостраница, т.е. не подпадающая под Конституцию проекта, но пригодная для поиска астрокосмической информации (в базе поиска Астронета) =10 - тестовая страница - на правах "живых", участвуют только в тестовых темах, в рубрикатор и в статистику базы данных не вносятся = -1 - страница существовала ранее, но сейчас умерла (возможно разблокирование при "оживлении") = -2 - страница существует, но дублирует ранее введенную страницу, поэтому заблокирована в списке Астротопа = -10 (было -2) (страница вычеркивается из всех списков проверки и поиска - при несоответствии теме проекта). Но! В частности, могли быть внесены и зарубежные астространицы! То есть из этой корзины еще может что-то пригодится. = -100 (было -2) - страница вычеркивается из всех списков проверки и поиска - при полном несоответствии теме проекта. Пример - порносайты. |
1 |
Наличие в каталоге Астронета | astronet_cod | BOOL | обязательно,
проверяется и редактируется членами команды проекта |
1 |
Расположение в Сети (линк сайта) | url | VARCHAR(256) | обязательно,
проверяется и редактируется автором и/или членами команды проекта |
http://www.sai.msu.su |
Запасная, нередактируемая копия линка сайта | url_hard_copy | VARCHAR(256) | обязательно,
вносится автоматически как копия url при занесении сайта в каталог и после этого никем не редактируется! Сделано во избежание случайной/вредительской порчи url |
http://www.sai.msu.su |
Тип интернет-ресурса | type_url | smallint | обязательно,
проверяется и редактируется автором (???) и/или членами команды проекта. Автоматически генерируется =10. Типы: =1 Один документ (например, статья) в одном html-файле (одностраничный документ) =2 Один документ (например, статья) в нескольких html-файлах (многостраничный документ) =3 Раздел сайта, домашней страницы и т.п. (подразумевается, что все обычно лежит в одной и той же директории внутри сайта) =4 - Сайт отдельного проекта, персональная домашняя страница - т.е. функционально уже полностью самостоятельный единичный сайт-страница =5 сайт лаборатории, отдела, www-страница сообщества (астроклуб, например), организации, ... =6 WWW-сервер - главный сервер для целого ряда сайтов (обычно организации) - домашних страничек, подразделений данной организации (в свою очередь могущих иметь внутри себя персональные страницы) и т.п. =7 Каталог линков/сайтов/имен серверов =10 - еще не редактировался (генерируется автоматически при начальном вводе нового сайта) |
6 |
Частью какого ресурса из данной таблицы является этот ресурс | id_base_url_mv | массив integer (массив ID вышестоящих сайтов (подразделений и серверов) ) | Необязательно,
вносится (редактированием командой проекта) лишь для тех ресурсов, которые являются частью целого ресурса , т.е. type_url = 1 .. 3 и даже 4,5 (по отношению к вышестоящим сайтам) |
|
Наличие русской версии страницы | rus | bool | обязательно,
генерируется автоматически, по умолчанию=1 |
0 |
Наличие английской версии страницы | eng | bool | обязательно,
генерируется автоматически, по умолчанию=0 |
1 |
Описание Интернет-ресурса (от автора) | referat | VARCHAR(2048) | необязательно,
проверяется и редактируется автором и/или членами команды проекта |
ГАИШ - мое любимое место работы... |
Описание Интернет-ресурса (от команды проекта) | referat_astrotop | VARCHAR(2048) | необязательно,
проверяется и редактируется членами команды проекта |
ГАИШ - одно из старейших астрономических и учебных учреждений России. Область специализации ... |
Название Интернет-ресурса | name | VARCHAR(256) | обязательно | ГАИШ МГУ |
Имя автора www-ресурса | author | VARCHAR(256) | обязательно
(при отсутствии в случае начального ввода генерируется шаблон ??? по умолчанию), проверяется и редактируется автором и/или членами команды проекта |
Бартунов Олег |
E-mail автора www-ресурса | VARCHAR(80) | необязательно
(но крайне желательно, поскольку именно по e-mail -ам авторов будут вестись автоматизированные рассылки проекта), проверяется и редактируется автором (после начальной рассылки информации о коде его страницы в проекте и пароле на редактирование) и/или членами команды проекта |
oleg@sai.msu.su | |
Разрешено ли высвечивать е-мэйл в публичных описаниях страницы | email_viewing | BOOL | обязательно,
генерируется автоматически (по умолчанию = FALSE) |
FALSE |
Пароль редактирования ресурса для автора | password | VARCHAR(12) | обязательно,
генерируется автоматически (при вводе ресурса), редактируется автором ресурса |
Netu |
Разрешено ли автору сайта редактировать данные своего сайта в базе данных Астротопа | permit_red_from_author | bool | обязательно,
1 - разрешено 0 - нет |
true |
Разрешено ли делать рассылки проекта данному автору | subscribe | smallint | обязательно,
по умолчанию ставится: -10 - начальное значение после создания базы данных или начального вброса нового сайта в базу данных, а также после начального ввода е-мэйла членами команды -3 (полное запрещение рассылок) -2 (только специальные сообщения, например, о голосованиях Сайт года) -1 (разрешено, только раз в год), 0 (разрешено, раз в три месяца после выпусков - стандарт), 1 (разрешено, подписка на рассылки раз в месяц) 2 (разрешено, подписка на рассылки раз в неделю) 3 (разрешено, подписка на рассылки раз в три дня) 4 (разрешено, подписка на рассылки раз в день) 5 (разрешено, подписка на рассылки при внесении каждого нового сайта) Редактируется автором ресурса и/или членами команды проекта |
0 |
Сколько e-mail послано данному автору | num_email | smallint - сколько e-mail послано | обязательно,
по умолчанию ставится 0, что при заполнении поля e-mail автора и при subscribe>-3 приводит к автоматической генерации е-мэйла с паролем на редактирование ресурса - автору, после чего число е-мэйлов увеличивается на 1, и так происходит и далее |
1 |
Сколько e-mail послано данному автору каждого сорта | num_email_mv | массив smallint - сколько e-mail послано в каждой категории - рассылки, персональные уведомления и т.п. | обязательно, по умолчанию ставится (0,0,0,0,0...)
где 1-е число первая посылка, персональные уведомления 2-е - число стандартных рассылок раз в три месяца 3- число специальных рассылок с извещениями о чем либо (голосованиях) 4 - пока пусто 5 - пока пусто 6 - пока пусто |
(1,0,0,0,0,0) |
Характеристика вида авторства | author_type | smallint | Обязательно
Автоматически ставится=1 =0 - автор неизвестен
|
1 |
Число наград от проекта | num_awards | smallint | Обязательно
=0 - наград нет (ставится автоматически) |
0 |
Список наград ресурса от проекта (???и не только ???) | awards_mv | массив smallint - ID награды
Сделать таблицу наград (ID награды, имя награды, ID ресурса, дата присвоения, порядковый номер данной награды...) |
Необязательно
Редактируется Координатором проекта |
--- (наград нет) |
В скольких группах рейтинга участвует ресурс (роспись массива групп см. ниже) | num_groups | smallint | обязательно | 1 (чаще всего, но допускается участие во многих группах рейтинга) |
Список тематических рейтинговых групп, в которых участвует ресурс | groups_mv | smallint[]
Массив структур вида (или неограниченное число, с прицелом на разрешение юзерам создавать собственные группы) : ID группы (описания - в отдельной таблице) --
|
Не-обязательно
(ресурс ведь может умереть, при этом список групп не будет иметь никакого смысла) |
(3,1,...)
- примечание - 3-я группа внутри астротопа - см. таблицу групп...;... |
Список мест, которые занимает сайт в соответствующих тематических рейтинговых группах (см. выше) | groups_n_in_top | smallint[]
Массив целых - места в соответствующих группах |
Не-обязательно
(ресурс ведь может умереть, при этом место в групп/е/ах не будет иметь никакого смысла) |
(10,23,...) |
Список оценок, которые имеет сайт в соответствующих тематических рейтинговых группах (см. выше) | groups_estimates_mv | float4[]
Массив коротких вещественных - места в соответствующих группах |
Не-обязательно | (5.434, 6.200,....) |
Усредненная по всем группам оценка ресурса | groups_estimate_total | float4 | Не-обязательно | 6.245 |
В скольких группах рейтинга запрещено участвовать ресурсу (роспись массива групп см. ниже) | num_blok_groups | smallint | обязательно | 0 (чаще всего, но иногда больше - запрещается участвовать в некоторых группах рейтинга) |
Список тематических рейтинговых групп, в которых запрещено участвовать ресурсу | blok_groups_mv | smallint[]
Массив структур вида (или неограниченное число, с прицелом на разрешение юзерам создавать собственные группы) : ID группы |
необязательно | () |
Число рецензий на данный сайт в таблице рецензий | num_notes | smallint | обязательно,
создается автоматически при создании паспорта |
0 |
Разделы рубрикатора (~ГРНТИ) | rubricator_mv | integer[]
список идентификаторов разделов рубрикатора - в формате массива из N параметров - ID строки рубрикатора (integer) |
необязательно,
проверяется и редактируется автором и/или членами команды проекта |
... |
Ключевые слова | key_words | VARCHAR(512)
-слова через разделитель-запятую |
необязательно
проверяется и редактируется автором и/или членами команды проекта |
астрономия, телескопы, студенты, абитуриенты, студенты, МГУ, кафедра , обучение |
Дата занесения в каталог | date_input | timestamp | обязательно,
создается автоматически при создании паспорта |
1998-08-24 |
Дата последнего редактирования паспорта | date_last_red | timestamp | обязательно,
создается автоматически при редактировании паспорта |
2001-06-15 |
Дата создания ресурса | date_create | timestamp | необязательно
проверяется и редактируется автором и/или членами команды проекта |
1994-10-01 |
Дата последнего обновления ресурса | date_last_up | timestamp | необязательно
автоматический опрос раз в N дней, и автоматический update |
2002-10-01 |
Автор внесения ресурса в каталог (пользователь проекта АстроТоп) | user_input | integer
идентификатор автора первой редакции паспорта |
обязательное поле,
формируемое при внесении ресурса в каталог |
ID пользователя проекта АстроТоп (в том числе - Guest) |
Автор последней редакции информации | user_last | integer
идентификатор автора последней редакции паспорта |
обязательное поле,
формируемое при последней редакции (в том числе при создании) |
ID пользователя проекта АстроТоп (во время создания базы данных - Admin) |
Редактировался ли (и сколько раз) паспорт автором сайта | num_red | integer | обязательное поле, редактируемое при последней редакции паспорта автором сайта (до этого =0) | 1 |
Редактировался ли (и сколько раз) паспорт членами команды астротопа | num_red_base_user | integer | обязательное поле, редактируемое при последней редакции паспорта членами команды (до этого =0) | 2 |
Имеет ли ресурс право на установку счетчика Астротопа | permition_count | bool | обязательное поле,
редактируемое при последней редакции паспорта членами команды (до этого =1 , кроме некоторых групп рейтинга) |
1 |
Код счетчика посещений ресурса | id_count | integer | необязательно | ID счетчика в таблице счетчиков |
Количество дополнительных рубрикаторов | массив имен таблиц дополнительных рубрикаторов | необязательно | (rubrikator_add_1, rubrikator_add_2) | |
???? - возможно, проще все указать в предыдущем
поле???
Запасное поле номер 1 для возможного дополнительного рубрикатора 1 |
список идентификаторов разделов дополнительного
рубрикатора номер 1-
в формате массива из N параметров - ???скорее всего, параметры=строки, или - целые числа, или - список ID в таблице рубрикатора ??? |
необязательно | .... | |
???см. примечание выше???
Запасное поле номер 2 для возможного дополнительного рубрикатора 2 |
.... | .... | .... | |
.... | .... | ..... | .... |
Красным цветом подписаны те поля. которые
еще не готовы к осуществлению и работе (и даже, возможно, не заработают
вовсе),
желтым - то, что обязательно надо
будет сделать в дальнейшем,
розовым - уточнения и примечания, либо
неуверенность в необходимости осуществления
На 100 записей в таблице необходимо порядка 150 кбт (из тестов).
Таблица в ближайшие 2 года вряд ли превысит 10 тыс. записей.--> 15
Мгбт
Перекрестные
идентификаторы Интернет-ресурсов в каталогах астронета и астротопа - таблица
sites
.
Поле | Name | Тип | Наличие | Пример заполнения |
Id записи | id | integer (уникальное целое положительное число) | Обязательно | 1 |
ID ресурса в каталоге Астронета | id_astronet | integer (уникальное целое положительное число) | обязательно
=0 - если нет =чему-то - повтор числа из базы данных астронета |
1181803 |
ID ресурса в каталоге АстроТопа | id_astrotop | integer (уникальное целое положительное число) | обязательно
=0 - если нет =num_sites - повтор числа из table_sites базы данных астротопа |
0 |
Наличие в каталоге Астронета ресурса с данным url | astronet_cod | smallint | обязательно,
проверяется и редактируется членами команды проекта =0 - нет, =1 - есть =2 - есть ресурс вышележащего уровня (то конкретно данной части сайта нет в астронете, но есть сайт полностью) =3 - есть ресурс того же уровня (то конкретно данной части сайта нет в астронете, но есть другая часть сайта) =4 - есть ниже лежащая по уровню часть ресурса, хотя сам ресурс не внесен Для случаев 2,3,4 - все же приводится id_astronet номер-ID ресурса в каталоге Астронета похожего ресурса |
1 |
Наличие в каталоге Астротопа ресурса с данным url | astrotop_cod | smallint | обязательно,
проверяется и редактируется членами команды проекта =0 - нет, =1 - есть =2 - есть ресурс вышележащего уровня (то конкретно данной части сайта нет в астро топе, но есть сайт полностью) =3 - есть ресурс того же уровня (то конкретно данной части сайта нет в астро топе, но есть другая часть сайта) =4 - есть ниже лежащая по уровню часть реурса, хотя сам ресурс не внесен Для случаев 2,3,4 - все же приводится в id_astrotop номер ID ресурса в каталоге АстроТопа похожего ресурса |
0 |
Расположение в Сети (линк сайта) | url | VARCHAR(256) | обязательно,
проверяется и редактируется автором и/или членами команды проекта |
http://www.sai.msu.su |
Таблица групп
рейтинга Астротопа groups
Поле | Name | Тип | Наличие | Пример заполнения |
ID группы | id | integer | обязательно | 3 |
Название группы | name | строка<100 | обязательно | Сайты официальных астрономических учреждений |
Код значимости группы (участвует ли в главной рейтинге Астротопа, или...) | status | integer | обязательнo
=1 - да, обычная группа
|
1 |
Дата образования группы | data_create | timestamp | обязательно,
создается автоматически при заведении группы |
1998-08-24 12:00:00 |
Дата последнего оценки-голосования по одному из сайтов группы | data_last_estimate | timestamp | обязательно,
создается автоматически при заведении группы |
1998-08-24 12:00:00 |
Число ресурсов в группе, введенных за все времена - нужно ли, не устарел ли аргумент этот? | number_all | integer | обязательно,
обновляется автоматически при заведении группы, внесении ресурсов, редактировании группы |
38 (всего было насчитано за все время существования группы), и следующий ID будет, соответственно = 39 ( но он ведь не используется!) |
Реальное число "живых" (т.е. незаблокированных для участия в данной группе рейтинга) ресурсов в группе в текущий момент | number_live | integer | обязательно,
обновляется автоматически при заведении группы, внесении ресурсов, редактировании группы |
25 |
Число ресурсов в группе, введенных за все времена, роспись по категориям и сортам | number_type_mv | массив integer | обязательно,
обновляется автоматически при заведении группы, внесении ресурсов, редактировании группы |
38 (всего рейтингуется в данный момент), 25 (живых), 5 (новых), 6 (мало оцениваемых), 3 (с наградами) ..... |
Число просмотров таблиц данной группы | count_all | integer | обязательно | 1967 |
Число просмотров таблиц данной группы в последнем месяце - по дням | count_day | массив integer | необязательно | 11,11,10,9... |
Число просмотров таблиц данной группы по месяцам | count_month | массив integer | необязательно | 110,110,100,90... |
На одну запись в таблице необходимо порядка 200 - 500 байт. Вряд ли в таблице будет более 1000 записей (даже с введенными пользователями группами, целесообразность введения которых - под сомнением)
Таблица свойств
групп рейтинга Астротопа на определенную дату groups_list
Поле | Name | Тип | Наличие | Пример заполнения |
id записи | id | integer | обязательно | 3 |
Статус записи (редко исползуется, подразумевается, актуальна данная запсись или нет - например, если сущзествует несколько архивных копий одного выпуска одной темы, данная опция задействуется) | status | smallint | обязательно | 1 (по умолчанию) |
ID группы | id_group | integer | обязательно | 1 |
Дата снимка свойств группы | date | timestamp | обязательно | 1998-08-24 12:00:00 |
Номер выпуска Астротопа | N_astrotop_archiv | integer | обязательно | 4 |
Архивный это выпуск (на 22.03. и тп.) или текущий на данную дату? | archiv_or_not | bool | обязательно | true |
Реальное число "живых" (т.е. незаблокированных для участия в данной группе рейтинга) ресурсов в группе в текущий момент | number_all | integer | обязательно,
обновляется автоматически при заведении группы, внесении ресурсов, редактировании группы |
25 |
Массив номеров сайтов в порядке их расположения в списке | site_mv | массив integer[] | обязательно,
обновляется автоматически |
1,11,15,9... |
Массив оценок сайтов в порядке их расположения в списке | estimate_mv | float[] | обязательно,
обновляется автоматически |
7.25,7.11,6.58... |
Число всех оценок сайтов в порядке их расположения в списке | nn_estimates_mv | integer[] | обязательно,
обновляется автоматически |
30,41,5,7,9... |
Число оценок сайтов в стеке, в порядке расположения сайтов в списке | estimates_in_stack | integer[] | обязательно,
обновляется автоматически |
25,25,5,7,9... |
Число просмотров таблиц данной группы | count_all | integer | необязательно | 1967 |
Таблица оценок
ресурсов estimates в рейтинге Астротопа
Поле | Name | Тип | Наличие | Пример заполнения |
ID оценки | id | уникальное (порядковое) integer | обязательно,
необходимо для прямой ссылки на данную оценку |
25343 |
В какой группе рейтинга выставлена | num_group | integer | обязательнo,
создается автоматически |
3 |
Тип оценки | type | smallint | обязательнo,
создается автоматически =0 - обычная, очередная оценка =1 - первая оценка =2 - оценка, раз-блокирующая ресурс для нового участия в данной группе = -1 - блокировочная оценка (после этого данный ресурс автоматически исключается из данной группы рейтинга) |
0 |
Статус оценки - последняя или устаревшая | status | bool | обязательнo,
=true - последняя =false - устаревшая создается и редактируется автоматически (при внесении новой оценки оценка, бывшая последней, делается устаревшей!) |
true |
Значение оценки | estim_input | 0<=integer<=10,
smallint |
обязательно,
создается автоматически юзером |
5 |
Вес оценки | estim_weight | 1<=float4<=8 | обязательно,
Ранее было: категория=1 - "прохожий" =2 - интересуюсь =3 - знаток =4 - эксперт, и при оценке вес равнялся двойке в степени категория-1 Теперь записываем непосредственно ВЕС оценки, который,
например, для "эксперта" равен 8. Такое применено с целью возможного введения
гибкого взвешивания голосов пользователей.
|
2 (=интересуюсь) |
Дата | date | timestamp | обязательно,
создается автоматически |
2003-01-10 12:30:00 |
Кем поставлена, ID | user_id | integer | обязательнo
ID юзера из таблицы пользователей (у старых оценок =1, это пользователь Guest) |
3 |
Кем поставлена, логин (не высвечивается для всеобщего просмотра!) | user_login | VARCHAR(15) | обязательнo
(у старых оценок = guest ) |
Sam |
Кем поставлена - на вывод для всеобщего обозрения (ФИО, псевдоним или логин - по текущему выбору пользователя) | user_name | VARCHAR(50) | обязательнo
(у старых оценок и у новых при отсутствии генерируется автоматически - Инкогнито или Неизвестный) |
Самодуров Владимир |
Кем поставлена, IP | ip_address | inet | обязательнo
создается автоматически |
194.149.67.241 |
Чему поставлена , ID ресурса | id_site | integer | обязательнo
создается автоматически |
1 |
Расчетная текущая оценка (для указанной группы!) | estimate_current | float | обязательно,
создается автоматически |
5.438 |
Место в рейтинге группы после выставления данной оценки | num_site_in_group | integer | необязательно,
создается автоматически или заполняется (автоматически) позже |
17 |
Всего в группе на текущий момент ресурсов | nn_all_site_in_group | integer | необязательно,
создается автоматически или заполняется (автоматически) позже |
38 |
Всего оценок данному ресурсу в данной группе при текущем выставлении оценки | nn_all_estimate | integer | обязательно,
создается автоматически |
37 |
всего оценок в стеке на текущий момент | num_estimate_in_stack | integer | обязательно,
создается автоматически |
25 |
Дата оценки, стоящей последней в стеке (т.е. готовой из него выпасть) | date_old_in_stack | timestamp | обязательно,
создается автоматически |
2002-01-10 12:30:00 |
Дата самой первой оценки сайту в данной группе | date_first | timestamp | обязательно,
создается автоматически |
1999-01-10 12:30:00 |
Дата появления сайта в Астротопе (в любой группе, а не только в той, которой ставится данная оценка) | date_input_site | timestamp | обязательно,
создается автоматически |
1999-01-10 12:30:00 |
Длина записи - порядка 200-300 байт. Сейчас оценок - 13 тыс. Будет 100 тыс не ранее чем через 2 года.
Таблица пользователей
рейтинга Астротопа users
Поле | Имя | Тип | Наличие | Пример заполнения |
ID пользователя | id | integer | обязательно | 1 |
Логин | login | VARCHAR(15) | обязательно | Sam |
Пароль | password | VARCHAR(15) | обязательнo | ne_skazhu |
Статус пользователя | status | smallint | обязательнo,
= -2 - удален = -1 - запрещен до времени разблокирования =0 - обычный пользователь-новичок =1...99 - маститый >=500 - член команды Астротопа, Причем: >=700 - разрешено администрировать сайты (редактировать информацию о них в базе данных) поодиночке >=800 - разрешено администрировать сайты (редактировать информацию о них в базе данных) группами =998 - экс-Координатор =999 - Координатор >=1000 - программист создается автоматически при заведении пользователя
|
1000 |
Время действия статуса пользователя (только для наказанных пользователей) | time_block | timestamp | необязательно | |
VARCHAR(80) | обязательнo ,
именно по e-mail высылается пароль и ведутся рассылки |
sam@prao.psn.ru | ||
Сколько E-mail послано юзеру | number_email | integer | обязательнo ,
=0 - емэйл еще не посылался (в том числе и с сообщением, что юзер введен в базу данных с соответствующим паролем и ником...) |
1 |
Профиль подписки на сообщения от Астротопа | subscribe_mv | bool[]
массив boole - список кодов на получение определенных сортов информации |
обязательно, по умолчанию ставится (0,0,0,0,0...)
где 1-е число - информировать о внесении каждой новой оценки 2-е - информировать о внесении каждого нового сайта 3- специальная рассылка с основной инфой Астротопа раз в три дня 4- специальная рассылка с основной инфой Астротопа раз в неделю 5- специальная рассылка с основной инфой Астротопа раз в месяц 6 - специальная рассылка с основной инфой Астротопа раз в три месяца |
(1,1,1,1,1,1) |
ФИО юзера | fio | VARCHAR(128) | обязательно | Самодуров Владимир |
Пол | man_woman | bool | необязательно
=0 (false) - женский =1 (true) - мужской |
1 |
Псевдоним | psevdoname | VARCHAR(128) | обязательно
(автоматически генерируется "Инкогнито") |
Сам |
Отношение к астрономии/космонавтике/космосу | param_mv | smallint[] | необязательно | |
Сколько ip-адресов, с которых чаще всего голосуете/голосовали (роспись в следующей строке таблицы) | numer_user_ip | smallint | обязательно,
автоматически обновляется после последней редакции юзером массива ip-адресов, в самом начале =0 Возможно, сделать ограничение в 3 ... 10 адресов |
2 |
Массив ip-адресов, с которых чаще всего голосуете/голосовали | user_ip_mv | inet[] | необязательно,
редактируется юзером (учет старых IP, с которых голосовали ранее, позволит автоматически восстановить-присвоить старые голосования данному пользователю) |
194.149.67.241 , .... |
Выводить юзера при показе списка оценок под псевдонимом, логином или своей фамилией? | synonim_status | smallint | обязательно,
0- под логином, 1- выводить под своим именем (ФИО), 2- под псевдонимом (так обычно) Примечание - верно для оценок, а голосования-опросы всегда подписываются ФИО юзера (или подписью "вебмастер сайта такого-то") |
1 (кстати, это будет всех членов команды касаться ;) ) |
Страна (сделан жесткий выбор из списка стран!) | land | VARCHAR(50) | необязательно | Россия |
Город, населенный пункт проживания | city | VARCHAR(50) | необязательно | Пущино |
Дата регистрации пользователя | date_input | timestamp | обязательно,
создается автоматически при заведении пользователя |
2003-01-10 |
Является ли членом команды Астротопа | astrotop_admin | bool | обязательно,
создается автоматически при заведении пользователя (как false), редактируется - Координатором и программистом проекта |
true |
Права администрирования | admin_mv |
bool[] массив bool - список кодов на администрирование соответствующих функций проекта |
обязательно
1-е - ставить оценки 2-е - вводить новые сайты 3-е - участвовать в голосованиях-опросах 4-е - редактировать сайты 5-е - редактировать данные юзеров 6-е - редактировать старые группы (названия и т.п.) 7-е - вводить новые группы 8-е - редактировать голосования-опросы 9-е - создавать новые голосования-опросы 10-е - редактировать-присваивать сайту награды |
(1,1,1,1,1,0,1,1,1,0) |
Сколько создано групп рейтинга Астротопа данным пользователем | number_groups | integer | необязательно | 18 |
Список созданных групп рейтинга Астротопа | input_groups | integer[] | необязательно | (1,2,... 18) |
Дата найденной первой оценки от пользователя | date_first_using | timestamp | необязательно,
создается автоматически при заведении пользователем всех своих синонимов и старых ip-адресов |
1998-08-24 |
Дата последней оценки от пользователя | date_last_using | timestamp | необязательно | 2003-01-10 |
Всего оценок от пользователя | number_estimates | integer | обязательно | 3543 |
Всего введено ресурсов (сайтов) пользователем в каталог | number_sites | integer | обязательно | 435 |
Количество голосований-опросов, в которых принял участие юзер | number_votes | integer | обязательно | 8 |
Звание (шутливое) юзера в системе Астротопа | rang_user | VARCHAR(30) | необязательно | Генерал Астротопа :-) |
Статистический индекс объективности пользователя | ind_stat | float | необязательно, расчитывается автоматически раз в сутки | 7.543 |
Длина записи в таблице - порядка 300-600 байт. Вряд ли пользователей будет более 1000 в ближайший год-два.
Таблица названий
стран (вспомогательная таблица рейтинга Астротопа) lands
ID страны | id | integer | обязательно,
не редактируется! |
1 |
Название страны | name | VARCHAR(50) | обязательно,
не редактируется! |
Россия |
Краткое двухбуквенное обозначение | short_name | VARCHAR(2) | обязательнo,
не редактируется! |
RU |
Количество пользователей Астротопа с этой страны | number_users | integer | обязательнo,
редактируется автоматически |
53 |
Количество сайтов с этой страны в Астротопе | number_sites | integer | обязательнo,
редактируется автоматически |
653 |
Количество оценок от пользователей Астротопа с этой страны | number_estimates | integer | обязательнo,
редактируется автоматически |
10001 |
Количество участий в опросах-голосованиях от пользователей Астротопа с этой страны | number_votes | integer | обязательнo ,
редактируется автоматически |
1 |
Дата последнего изменения данных | date_last | timestamp | обязательнo ,
редактируется автоматически |
2003-01-10 |
Длина записи в таблице - порядка 60 байт. Всего стран - 242.
Таблица названий
городов (вспомогательная таблица рейтинга Астротопа) cities
ID города (населенного пункта) | id | integer | обязательно,
не редактируется! |
1 |
Название населенного пункта | name | VARCHAR(50) | обязательно,
редактируется только членами команды Астротопа. |
Пущино |
Количество пользователей Астротопа с этого города | number_users | integer | обязательнo,
редактируется автоматически |
53 |
Количество оценок от пользователей Астротопа с этого города | number_estimates | integer | обязательнo,
редактируется автоматически |
3000 |
Количество участий в опросах-голосованиях от пользователей Астротопа с этого города | number_votes | integer | обязательнo ,
редактируется автоматически |
1 |
Дата последнего изменения данных | date_last | timestamp | обязательнo ,
редактируется автоматически |
2003-01-10 |
Длина записи в таблице - порядка 300-600 байт. Вряд ли пользователей будет более 1000 в ближайший год-два.
Раздел рубрикатора
в таблице rubrikat_1 рубрикатора 1 (близко
к ГРНТИ и УДК) .
Поле | Имя | Тип | Наличие | Пример заполнения |
Номер раздела рубрикатора | id | INTEGER | обязательно | 1 |
Уровень рубрикатора | level | INTEGER | обязательно
1 - верхний уровень, на нем только - Астрономия и Космонавтика 2- более низкий под-уровень, (главные разделы Астрономии (или Космонавтики)) 3 - еще ниже.... |
1 |
Имя раздела рубрикатора | name | VARCHAR(256) | обязательно | Астрономия |
Идентификатор родителя раздела | parent | INTEGER | =0 - нет родителя
= nn - идентификатор id соответстивующего родителя |
0 |
список связанных разделов (синонимов) | synonim_list | INTEGER[]
(список идентификаторов разделов) |
необязательно | |
Возможное название в родственном классификаторе -1 (ГРНТИ) | comment_1 | VARCHAR(30) | необязательно | ГРНТИ 55.01.79 |
Возможное название в родственном классификаторе -2 (УДК?) | comment_2 | VARCHAR(25) | необязательно |
Журнал
рубрикатора-1 rubr_1_list . Смысл таблицы
в том, что для каждого сайта записываются все разделы рубрикатора
в этот журнал, под которые подпадает сайт. Из этой таблицы генерируются
выборки разделов рубрикаторов и списков сайтов в них.
Поле | Имя | Тип | Наличие | Пример заполнения |
Номер данной записи | id | INTEGER | обязательно | 123 |
Номер сайта из таблицы паспортов сайтов | num_sites | INTEGER | обязательно | 1 |
Номер раздела рубрикатора | id_rubr_1 | INTEGER | обязательно | 1 |
Статус состояния данной записи | status | bool | обязательно,
по нему определяется, актуальна ли данная запись, или принадлежит ныне умершему сайту (либо временно выведенному из списков). |
true |
Дата внесения сайта в Астротоп | date_input_site | timestamp | обязательно,
именно по нему сортируются списки сайтов в рубрикаторе при выводе их на страницу - Вначале думал, что НЕ НУЖНО, ТУ ЖЕ ФУНКЦИЮ МОЖНО СДЕЛАТЬ ПО num_sites, но затем - нет, начальные номера сайтов расставлены не по датам. Да и удобнее даты держать в этой же таблице... |
1998-08-24 |
Уточняющий Код 1 (запасной) | cod_1 | smallint | необязательно |
........................................................
Таблица описаний
голосований (опросов АстроТопа) votes_description
Ввести возможность уточняющих параметров для
голсования, чтобы можно было разделять итоги голосования по категориям
голосующих. Ввести не более 4-х уточняющих параметров.
Поле | Имя | Тип | Наличие | Пример заполнения |
ID данного голосования | id | уникальное (порядковое) integer | обязательно,
необходимо для прямой ссылки на данное голосование |
25343 |
Действующее голосование или уже закрытое? | live | bool | обязательно,
0 (false) - уже закрыто, 1 (true) - еще открыто |
0 |
Тип голосования | type | smallint | обязательно,
0 - строгий выбор одного из нескольких 1 - мягкий выбор сразу нескольких вариантов |
|
Модель голосования - |