|
|
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Всех приветствую! Товарищи! Возникла проблема, связанная с обработкой формул, и их хранении в БД. Соответственно это необходимо для быстрого поиска и извлечения этих формул. У меня стоит выбор между преобразованием формулы в текст по определенным правилам (свой язык?), либо хранение формул «как они есть». Интересуют вопросы: Есть ли специальные БД для хранения формул (объектов), либо это можно делать в любой БД путём хранения формул в BLOB'ах? Не знаете ли вы существующих систем или методов для хранения в БД формул или объектов? Что вы можете посоветовать в этой сфере? Есть ли у кого-то опыт? Советы? Буду очень благодарен за ваши ответы и ссылки. Источники на англ. языке также приветствуются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2008, 14:55 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Я себе сделал хранение логических выражений для проверочных отчетов по базе в виде синтаксических деревьев. Оказалось удобно. Получилось что и редактировать можно в виде дерева с драг'н'дропом. Перед запуском проверки выполняется сборка SQL выражения. Добавлять новые операции и функции тоже оказалось можно без изменения кода и перебилдивания системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2008, 15:06 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
SLAVEУ меня стоит выбор между преобразованием формулы в текст по определенным правилам (свой язык?), либо хранение формул «как они есть».Обычно он даже не стоит, вообще-то. Про TeX слыхали? Особенно, если вам потом поиск по этим полям делать придется - искать по блобам как-то... некошерно, что ли. А конкретный тип поля уже выбирайте в зависимости от вашей СУБД и требований ТЗ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2008, 15:10 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
SLAVEЕсть ли специальные БД для хранения формул (объектов) Есть: oracle может исполнять свои pl/sql - тексты динамически. Остается только перадать в них параметры - тоже решаемо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2008, 17:12 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
SLAVEлибо хранение формул «как они есть» А как они есть? SLAVEЕсть ли специальные БД для хранения формул (объектов) Вряд ли это БД. Резонно смотреть в сторону математических систем. СУБД, в которой есть стандартный объект "формула"... а зачем, собственно? SLAVE либо это можно делать в любой БД путём хранения формул в BLOB'ах? Можно в блобах. Можно в объектах. Можно в XML. Можно еще как-нибудь. SLAVEНе знаете ли вы существующих систем или методов для хранения в БД формул или объектов? Надо плясать от задачи, но в самом общем случае можно было бы подумать об XML. Формулы естественно иерархичны, XML более-менее поддерживается БД, не только чтение-запись, существуют развитые средства поиска-преобразования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2008, 19:41 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Значит специальных БД для хранения / поиска формул не существует. Я в том плане, если бы формула хранилась как объект, состоящий из нестандартных символов, а не в виде преобразованного текста. Допустим, формулы будут создаваться, изменяться в LATEX, которые будет сохранять формулу в виде текста (используя свой собственный язык). Далее нужно эту формулу в виде текстовой строки поместить в БД, после чего можно будет воспользоваться поиском и т. д. Теперь возникает вопрос о производительности СУБД. Какую СУБД стоит использовать для этих целей, если формулы в виде текста не будут очень большими, но таких вот записей, содержащих формулы и комментарий к ним, будет очень большое количество. Важно осуществлять не только хранение, но и поиск/извлечение хранимой информации. Есть какие–то обзоры по данной теме, сравнение производительности, чтобы выбрать СУБД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2008, 14:33 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Заинтриговал: Чо за задача такая ? Зачем хранить в базе формулы, как их используют ? Что собираешься искать - в каких формулах встречается sin ? Расскажи чуть подробнее - может и советы будут более осмысленные ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2008, 15:15 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Это связано с диссертацией. Разрабатываю систему для системы образования (и для науки), где можно было бы хранить, искать и выводить формулы по их отдельным частям. Соответственно, требуется продумать как лучше хранить формулы, чтобы их было удобнее искать и т. д. Ничего мудрёного, короче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2008, 18:31 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
ORACLE Text позволяет эффективно выполнять запросы по слабоструктурированным данным. Так, например, формулу можно перекодировать в текстовое представление, затем из этого текста выделить лексемы и построить по ним индекс. После этого легко написать запрос, который найдёт все формулы, которые включают слово sin или т.п.. Для поиска в обычных текстах как правило достаточно найти записи, которые просто содержат искомые лексемы (слова) в любом порядке. Для формул этот подход вряд ли пригоден, поскольку слов в математике (названий функций, операторов и т.п.) гораздо меньше чем в естественном языке. Скорее всего потребуется как то кодировать взаимосвязи лексем, чтобы в поиске можно было отличать sin(x) от x*sin..., но не различать sin(x) и sin(y) в разных формулах, причём x и y в свою очередь могут быть выражениями. Напрашивается хранение формул в виде дерева синтаксического разбора, однако интегрировать этот подход с LATEX ом будет не очень просто. Кроме того метод вряд ли является чем то новым, поскольку на рынке существуе ряд математических программ, которые успешно находят известные формулы и применяют их для вывода новых формул. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2008, 03:51 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
mcureenabКроме того метод вряд ли является чем то новым, поскольку на рынке существуе ряд математических программ, которые успешно находят известные формулы и применяют их для вывода новых формул.Есть известные примеры? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 09:02 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
SLAVEЕсть известные примеры? ;) Достаточно много хорошо известных программ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 11:27 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
Программист-Любитель SLAVEЕсть известные примеры? ;) Достаточно много хорошо известных программ. Спросите любого студента математика и он вам назовёт несколько изделий и даже опишет основные преимущества и недостатки каждого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 04:48 |
|
||
|
Хранение формул (или объектов)
|
|||
|---|---|---|---|
|
#18+
S> Автор: SLAVE S> Это связано с диссертацией. Разрабатываю систему для системы S> образования (и для науки), где можно было бы хранить, искать и S> выводить формулы по их отдельным частям. Соответственно, требуется S> продумать как лучше хранить формулы, чтобы их было удобнее искать и S> т. д. Ничего мудрёного, короче. Советую обратиться к языкам символьной обработки данных. Например, в Лиспе уже лет 40 назад научились хранить формулы. Любая система программирования на Лиспе представляет собой базу данных в оперативной памяти. Так что СУБД может и не понадобиться :-) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 14:32 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=35117066&tid=1544041]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
170ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 476ms |

| 0 / 0 |
