[Science-im] дипломная работа

Dmitry V. Makhotin dmitrymakhotin на gmail.com
Ср Ноя 26 16:41:18 MSK 2014


*Краткий отчет о том, что уже есть.*

1) Оксана настроила работу серверов, nginx успешно раздает статику,
грузится первая (урезанная) версия главной страницы;

2) Оксана реализовала регистрацию на сайте. Можно заполнять поля формы на
странице регистрации, в ближайшее время будет возможность добавления фото;

3) я закончил скрипт создания таблиц и заполнения ранее собранными данными
по странам, городам, ВУЗам, факультетам, кафедрам и школам. Индексов пока
нет (только у автоинкрементных полей), поскольку хотелось бы кое-что
обсудить. Подробнее - в вопросах ниже;

4) Полноценный тестовый проект описан в JSON (пока без картинок,
прилагаемых файлов и полного перечня ссылок) и успешно загружен в БД.
Источником данных выступила статья из Bioinformatics
<http://bioinformatics.oxfordjournals.org/content/28/12/i283.long> (Oxford
Journal). Организация подачи информации очень близка к нашей структуре в
таблице project (что на наш взгляд свидетельствует о том, что структура не
так уж и плоха). Хотим обратить внимание, что авторы не только поделились
подробным описанием алгоритма, но и выложили для скачивания уже
реализованную программу (в версиях для Linux, Mac и Windows).



*О том, что сейчас очень нужно.*

Направляем обновленную структуру БД.

Вопросы, которые хотелось бы обсудить:

1) хранение версий проекта на разных языках. Сейчас выбран путь составного
ключа, в который входит код языка. Это обеспечит хранение всех языковых
версий проекта на одном сервере в случае шардирования таблицы по id. Какие
вы видите недостатки такого подхода? Какие альтернативы можете предложиь?;

2) создание индексов для полей description_short, description_full таблицы
projects. Нужно ли будет очищать текст от тегов или нет ( текст
представляет собой html), как лучше организовать создание индексов для
разных языков)? Очистка текста потребует создания нового столбца с "чистым"
текстом, что увеличит размеры таблицы, но с другой стороны уменьшит индекс.
Создание индекса требует указания языка (как я понимаю, это необходимо для
нормализации слов). Есть идея заведения отдельного поля с наименованием
языка, значение которого будет использовано при построении индекса. Как вы
на это смотрите?;

3) индексирование полей participants и missed_participants. Нужно
учитывать, что в поле participants могут быть указаны имена людей, которые
не зарегистрированы в сервисе, но нам все равно нужно обеспечить
возможность быстрого поиска по ФИО. Нужен индекс или нет? Если да, то как
лучше это организовать? Признаться, в вопросе индексирования ФИО возник
небольшой тупик.

4) необходимость введения поля "тип проекта" и  классификация по этому
полю. Думали о том, чтобы ввести общее разбиение, например: "личный проект,
в составе группы, в рамках организации", потом думали указывать: "курсовая
работа, выпускная (квалификационная работа), кандидатская диссертация,
докторская диссертация, иное". Но в итоге пришли к выводу, что
пользователям, которые ищут информацию и возможность применить свои навыки,
неважно, какой это тип проекта. Единственное, что может иметь значение -
ассоциирован ли проект с какой-то организацией или нет. Здесь уже у
пользователя будет возможность указать конкретный ВУЗ и его структурное
подразделение или добавить иную организацию.

5) структура таблицы для хранения личных сообщений. Таблица пока не
приводится, поскольку сервис обмена сообщениями не стоит в первоочередных
задачах. Если успеем, напишем. Но все-таки хотелось бы обменяться идеями.


*О порядке работы и будущих вопросах.*

*Обмен информацией*

Анатолий Викторович, хотелось бы обсудить формы связи с вами. Работа не
позволяет нам приезжать на факультет раньше 18-30 (это удается, но очень
редко). Как мы понимаем, застать вас на месте довольно сложно. Как нам
лучше организовать обмен информацией, чтобы оперативно получать ваши
комментарии? Может, вы дадите нам отдельную почту для связи?

*Реализация слоя доступа к данным*

Хотелось бы в ближайшем будущем (после решения первоочередных вопросов)
обсудить организацию слоя доступа к данным. Приложение будет общаться с БД
не напрямую, а через этот слой. Его элементы уже частично реализованы (что
не мешает внесению изменений), но хочется услышать ваше мнение, как лучше
его построить. Структуру слоя полагаем описать в течение следующей недели.

С уважением,

Дмитрий и Оксана
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <https://lists.cs.msu.ru/pipermail/science-im/attachments/20141126/8be012c5/attachment.html>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <https://lists.cs.msu.ru/pipermail/science-im/attachments/20141126/8be012c5/attachment-0001.html>


Подробная информация о списке рассылки Science-im