powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
25 сообщений из 94, страница 1 из 4
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356720
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...продолжение оффтопика, начатого в обсуждении Postgres в роли национальной СУБД.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356736
Bazist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FVMas покрывает здесь все наши потребности
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356742
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Базист, не в бровь, а в глаз, но все-таки... Можно бриф "о чем эта СУБД вообще", ее ключевые фичи и, раз уж вы являетесь разрабом, пару камней в свой огород, это, зачастую, дает гораздо больший положительный эффект.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356744
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruИз "чужого, но виртуозного" могу посоветовать services.data.gov/sparql как "правительственный" пример, kegg.bio2rdf.org/sparql и chebi.bio2rdf.org/sparql для биологов, linkedgeodata.org/sparql с геоданными, а ещё проще гуглить по словам из "умолчательной" страницы .../sparql .О, вот spatial data очень интересны! Только как с геоданными работать? Скажем, поиск ближайших в заданных окрестностях, притом если данные в разных системах координат?..С геоданными долгое время был "застой", по нескольким причинам. Во-первых, разные крупные активные пользователи требовали совершенно разную функциональность, но при этом одновременно просили обеспечить им совместимость друг с другом. Во-вторых, многим крупным поставщикам была нужна бОльшая, чем доступная ранее, масштабируемость. В третьих, объединение в одном запросе пространственной и семантической фильтрации --- большая исследовательская задача на стыке семантических и классических реляционных технологий, там есть малозаметные "снаружи", но все равно очень серьёзные проблемы построения плана исполнения.
Сейчас я буду писать для Virtuoso что-то вроде постгресовой гисовской функциональности, но с заделами 1) на поддержку всех типов ESRI в будущем, 2) на поддержку 12-квадратных координат и 3) на opengl-friendly поиск с сортировкой по полю зрения.

Для обмена, так уж повелось, используется только вэгээс.

В доступных версиях Virtuoso есть только точки и bounding box-ы :| Ну и двухкоординатный индекс для этих боксов.

MBGРасскажите, что у вас (и в SPARQL в общем) с поддержкой полнотекстового поиска?Виртуозовский Free Text Search :) Сейчас добавится индекс для regex.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356763
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> В идеале - выкладывать для тестового железа результат стандартных тестов (архиватор, кодирование видео/звука, скорость работу эскулайт и т.п.). Тогда можно тест запустить на любом оборудовании/ОС и учесть поправочный коэффициент по стандартным тестам.

Поправочных коэффициентов не бывает. Есть только два действительно надёжных способа выжать максимум. Можно после "авторского" прогона бенчмарки отправить результат разработчику, и если ему интересно, то дать логин и пусть настраивает подопытную машину сам. Либо "наоборот" --- пусть разработчик делает всё сам на своей машине, сообщает результат, и на какой-то срок оставляет машину доступной для желающих, а автор бенчмарки перед публикацией результата делает аудит.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356764
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruВо-первых, разные крупные активные пользователи требовали совершенно разную функциональность, но при этом одновременно просили обеспечить им совместимость друг с другом. Во-вторых, многим крупным поставщикам была нужна бОльшая, чем доступная ранее, масштабируемость. В третьих, объединение в одном запросе пространственной и семантической фильтрации --- большая исследовательская задача на стыке семантических и классических реляционных технологий

1) А спецификация опенгис консорциума чем не устраивает? Ее все равно надо делать.
2) И впридачу поддержка распределенных данных, т.к. геоданные имеют такие объемы, что на одном сервере хранить и обрабатывать нереально (технически возможно метаинформацию хранить отдельно, но практически очень неудобно и приводит к ошибкам).
3) Так вот оно и интересно.

iv_an_ruДля обмена, так уж повелось, используется только вэгээс.
Где повелось? :) Опять же, WGS84 бывает в градусах и в метрах... Кстати, если уж у вас везде WGS84, то дистанцию на сфероиде ну просто грешно не реализовать ;)

iv_an_ruMBGРасскажите, что у вас (и в SPARQL в общем) с поддержкой полнотекстового поиска?Виртуозовский Free Text Search :) Сейчас добавится индекс для regex.

Вижу чистейший SQL - как это использовать в sparql?
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356775
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruЕсть только два действительно надёжных способа выжать максимум. Можно после "авторского" прогона бенчмарки отправить результат разработчику, и если ему интересно, то дать логин и пусть настраивает подопытную машину сам. Либо "наоборот" --- пусть разработчик делает всё сам на своей машине, сообщает результат, и на какой-то срок оставляет машину доступной для желающих, а автор бенчмарки перед публикацией результата делает аудит.

Ничего, хватит знания того, насколько отличается полученный вами результат от оптимального. Например, вы получили, что виртуозо вдвое быстрее эскулайт, а я настроил эскулайт вдесятеро быстрее вашего результата, значит, виртуозо мне и ставить смысла нет :D Все цифры придуманы для иллюстрации, разумеется.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356776
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruВо-первых, разные крупные активные пользователи требовали совершенно разную функциональность, но при этом одновременно просили обеспечить им совместимость друг с другом. Во-вторых, многим крупным поставщикам была нужна бОльшая, чем доступная ранее, масштабируемость. В третьих, объединение в одном запросе пространственной и семантической фильтрации --- большая исследовательская задача на стыке семантических и классических реляционных технологий1) А спецификация опенгис консорциума чем не устраивает? Ее все равно надо делать.
2) И впридачу поддержка распределенных данных, т.к. геоданные имеют такие объемы, что на одном сервере хранить и обрабатывать нереально (технически возможно метаинформацию хранить отдельно, но практически очень неудобно и приводит к ошибкам).
3) Так вот оно и интересно.1) Меня всем устраивает, но речь-то про пользователей.
2) Это-то понятно. Там изначально векторное распараллеливание и поддержка кластера.
3) Тут мало быть интересным, надо ещё и обеспечить устойчивость всех компонент. Что такое выставить endpoint голым тухесом в Сеть? Это значит, что малолетние кулхакеры будут бомбардировать его мусорными запросами в надежде подвесить.

MBGiv_an_ruДля обмена, так уж повелось, используется только вэгээс.
Где повелось? :) Опять же, WGS84 бывает в градусах и в метрах... Кстати, если уж у вас везде WGS84, то дистанцию на сфероиде ну просто грешно не реализовать ;)Повелось у публикаторов. В основном градусы, но бывают и просто синтаксические ошибки :) И да, что такое хаверсинус мы знаем, даже "формулу жульнического хаверсинуса на эллипсоиде" знаем :)

MBGiv_an_ruпропущено...
Виртуозовский Free Text Search :) Сейчас добавится индекс для regex.
Вижу чистейший SQL - как это использовать в sparql?так и писать --- FILTER (contains (?document, "pattern" ...)). У нас всё просто: SPARQL можно использовать везде, где синтаксис разрешает SQL-запрос или подзапрос, SQL-ные данные и процедуры доступны из SPARQL, в XSLT тоже можно вставлять хоть SPARQL хоть SQL, равно как и звать XSLT из них и т.п.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356785
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruЕсть только два действительно надёжных способа выжать максимум. Можно после "авторского" прогона бенчмарки отправить результат разработчику, и если ему интересно, то дать логин и пусть настраивает подопытную машину сам. Либо "наоборот" --- пусть разработчик делает всё сам на своей машине, сообщает результат, и на какой-то срок оставляет машину доступной для желающих, а автор бенчмарки перед публикацией результата делает аудит.Ничего, хватит знания того, насколько отличается полученный вами результат от оптимального. Например, вы получили, что виртуозо вдвое быстрее эскулайт, а я настроил эскулайт вдесятеро быстрее вашего результата, значит, виртуозо мне и ставить смысла нет :D Все цифры придуманы для иллюстрации, разумеется.Для "домашнего" неофициального прогона проще всего скачать bsbm себе, прогнать, и если разница с ожидаемой скоростью менее чем двукратная, то и не греть голову :) Это не тот случай, когда двукратный разрыв означает покупку 200 серверов вместо 70 :)
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356803
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruИ да, что такое хаверсинус мы знаем, даже "формулу жульнического хаверсинуса на эллипсоиде" знаем :)

Господь с вами, вы где учились? :) Нынче геодезию не знают и профильные специалисты, не говоря уж про ИТ :D Жульнический - это про укороченное разложение в ряд?

iv_an_ruтак и писать --- FILTER (contains (?document, "pattern" ...)). У нас всё просто: SPARQL можно использовать везде, где синтаксис разрешает SQL-запрос или подзапрос, SQL-ные данные и процедуры доступны из SPARQL, в XSLT тоже можно вставлять хоть SPARQL хоть SQL, равно как и звать XSLT из них и т.п.

Стандартный Filter в SPARQL - только по точному совпадению/регекспу. А у вас как со стеммингом/морфологией/стопсловами/синонимами?
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356813
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruДля "домашнего" неофициального прогона проще всего скачать bsbm себе, прогнать, и если разница с ожидаемой скоростью менее чем двукратная, то и не греть голову :) Это не тот случай, когда двукратный разрыв означает покупку 200 серверов вместо 70 :)

Мне лично хватило бы увидеть, во что "упирается" обработчик запроса при разных бэкендах - память/диски/процессор. Что же касается самих данных.. где бы найти внятное описание, как, например, написать схему N3 для логов вебсервера?
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37356829
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruИ да, что такое хаверсинус мы знаем, даже "формулу жульнического хаверсинуса на эллипсоиде" знаем :)Господь с вами, вы где учились? :) Нынче геодезию не знают и профильные специалисты, не говоря уж про ИТ :DМехмат НГУ. Но геодезию знаю в основном потому, что бегал за девочками из НИИГАиКа :)
MBG Жульнический - это про укороченное разложение в ряд?Это мега-лень такая --- в формулу для правильной сферы в зависимости от расположения концов подсовываем разный диаметр Земли --- малую ось, по экватору или нечто среднее :) Для демок хватает, а баллистические ракеты пока никто наводить не пробовал.
MBGiv_an_ruтак и писать --- FILTER (contains (?document, "pattern" ...)). У нас всё просто: SPARQL можно использовать везде, где синтаксис разрешает SQL-запрос или подзапрос, SQL-ные данные и процедуры доступны из SPARQL, в XSLT тоже можно вставлять хоть SPARQL хоть SQL, равно как и звать XSLT из них и т.п.Стандартный Filter в SPARQL - только по точному совпадению/регекспу. А у вас как со стеммингом/морфологией/стопсловами/синонимами?Есть возможность "втыкать" плагинами новые языки, но мало желающих эти самые плагины писать :) Язык "по умолчанию" знает категории символов UNICODE, поэтому умеет отличить слова из букв от разделителей и от тех иероглифов, которые каждый "сам себе однобуквенное слово", и умеет нормализовать эти слова по регистру --- вот этот язык народ в основном и юзает. Зато в языке запросов есть фразы, AND, OR, NEAR, AND NOT, и "слова без окончани*" .
Ещё есть полнотекстовая индексация XML вместе с элементами и атрибутами и акселерация XPath таким полнотекстовым индексом.
Ещё есть "подсветка аннотированных фраз". Скажем, если есть словарь всех заголовков страниц Википедии с соответствующими ссылками, то можно для данного (длинного) текста очень быстро найти все вхождения всех фраз из этого словаря. или из нескольких таких словарей. Можно, скажем, сделать прокси-сервер, распознающий проходящие через него документы и вставляющий дополнительные ссылки, скажем, рекламу или списки полезного чтива по темам :)
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357204
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruЯзык "по умолчанию" знает категории символов UNICODE, поэтому умеет отличить слова из букв от разделителей и от тех иероглифов, которые каждый "сам себе однобуквенное слово", и умеет нормализовать эти слова по регистру --- вот этот язык народ в основном и юзает.


Это вообще-то токенайзер (с библиотекой ICU, вероятно).

iv_an_ruЗато в языке запросов есть фразы, AND, OR, NEAR, AND NOT, и "слова без окончани*" .


Ага, ясно, в эскулайт апстримовский полнотекстовый поиск аналогичен. Ну а при желании элементарно добавляется поддержка стемминга/стопслов и проч.

iv_an_ruЕщё есть полнотекстовая индексация XML вместе с элементами и атрибутами и акселерация XPath таким полнотекстовым индексом.

Токенайзер для xml это полезно, сам думал для эскулайт написать, но мне не надо, а just for fun не добрался. А как разбор xml делаете - зовете внешнюю либу или вручную? И в каком виде plaintext получаете (интересует в плане запросов с NEAR)? И ускорение запросов XPath - каким образом?

iv_an_ruЕщё есть "подсветка аннотированных фраз". Скажем, если есть словарь всех заголовков страниц Википедии с соответствующими ссылками, то можно для данного (длинного) текста очень быстро найти все вхождения всех фраз из этого словаря. или из нескольких таких словарей. Можно, скажем, сделать прокси-сервер, распознающий проходящие через него документы и вставляющий дополнительные ссылки, скажем, рекламу или списки полезного чтива по темам :)

Заинтриговали - как это сделать "очень быстро"? :) Со вхождениями слов алгоритмически понятно, но с фразами...
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357419
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruЯзык "по умолчанию" знает категории символов UNICODE, поэтому умеет отличить слова из букв от разделителей и от тех иероглифов, которые каждый "сам себе однобуквенное слово", и умеет нормализовать эти слова по регистру --- вот этот язык народ в основном и юзает.
Это вообще-то токенайзер (с библиотекой ICU, вероятно).Самописка, с возможностью подгружать декларации всяких экзотических кодировок в фoрмате UCM.
MBGкак разбор xml делаете - зовете внешнюю либу или вручную? И в каком виде plaintext получаете (интересует в плане запросов с NEAR)? И ускорение запросов XPath - каким образом?Есть свой валидирующий парсер XML (он же "выпрямляющий" парсер "кривого" HTML). Поскольку слова в полнотекстовом индексе хранятся с позициями, а элементы, атрибуты и слова в значениях атрибутов тоже хранятся как "слова", и тоже с позициями, для XPATH выражения можно построить "фильтрующий" полнотекстовый запрос, и поиск в таблице всех XML-документов, содержащих фрагменты указанного вида, начнётся с полнотекста. Далее, полнотекстовый поиск вернёт не только id документов-"кандидатов", но и позиции "интересных" слов, элементов и т.п., а в каждой вершине XML-ного дерева хранятся диапазоны позиций "слов", в этом дереве. Стало быть, "неподходящие" поддеревья можно очень быстро пропускать, не залезая вглубь.
MBGiv_an_ruЕщё есть "подсветка аннотированных фраз". Скажем, если есть словарь всех заголовков страниц Википедии с соответствующими ссылками, то можно для данного (длинного) текста очень быстро найти все вхождения всех фраз из этого словаря. или из нескольких таких словарей. Можно, скажем, сделать прокси-сервер, распознающий проходящие через него документы и вставляющий дополнительные ссылки, скажем, рекламу или списки полезного чтива по темам :)Заинтриговали - как это сделать "очень быстро"? :) Со вхождениями слов алгоритмически понятно, но с фразами...Считаем контрольные суммы всех фраз текста, "просеиваем" через две битмаски, каждая из которых отвечает либо 0 ("нет, это точно не аннотированная фраза") либо 1 ("это аннотированная фраза или случайно модули сумм совпали"). Если две единички, что редко, то лезем в индекс.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357513
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruСчитаем контрольные суммы всех фраз текста, "просеиваем" через две битмаски, каждая из которых отвечает либо 0 ("нет, это точно не аннотированная фраза") либо 1 ("это аннотированная фраза или случайно модули сумм совпали"). Если две единички, что редко, то лезем в индекс.

Не понял - если в тексте N токенов, то имеем N вариантов первой фразы (содержит от 1 до N токенов), N-1 вариант второй фразы (от 1 до N-1 токенов),.. И для каждого варианта чексумму считать... это же безумно медленно будет!

Пример для текста из трех токенов "a b c":
фраза 1 = a b c| a b|a
фраза 2 = b c| b
фраза 3 = c

Для текста из миллиона токенов придется для первой фразы вычислить миллион чексум от полмиллиона токенов в среднем. А фраз тоже миллион - итого, нужно считать миллион раз по полмиллиона чексум от полмиллиона токенов в среднем. Ужас :)
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357576
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ruСчитаем контрольные суммы всех фраз текста, "просеиваем" через две битмаски, каждая из которых отвечает либо 0 ("нет, это точно не аннотированная фраза") либо 1 ("это аннотированная фраза или случайно модули сумм совпали"). Если две единички, что редко, то лезем в индекс.Не понял - если в тексте N токенов, то имеем N вариантов первой фразы (содержит от 1 до N токенов)Максимальная длина фразы в словаре алгоритму известна заранее ;) Так что имеем не N вариантов первой фразы (буква N --- большая), а m вариантов (буква m --- маленькая).
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357680
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruМаксимальная длина фразы в словаре алгоритму известна заранее ;) Так что имеем не N вариантов первой фразы (буква N --- большая), а m вариантов (буква m --- маленькая).

Понятно, что вряд ли вы когда столкнетесь с фразой в миллион токенов, но тем не менее подход с граблями. Потоковый токенайзер, сравнивающий токены текста со списком токенов сортированных искомых фраз, окажется куда как быстрее. Вероятно, даже оптимальным компромиссом может быть нахождение первого токена фразы и побайтовое сравнение с этого места со всей фразой (а если стопслова игнорировать, должно быть действительно очень быстро). Это будет N поисков по сортированному списку первых токенов фраз (просто, быстро и экономно по памяти) плюс строковые сравнения по числу найденных (от этой операции нам все равно не отвертеться, т.к. нужны точные совпадения) - и на миллионе токенов во фразе все отработает замечательно.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357744
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBG,

Он "потоковый", разумеется, никто список всех токенов в память не запихивает :)
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357754
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ru,

Побайтово сравнивать кусок текста и фразу нельзя --- нормализация же, оосбенно если в языке указани игнорировать какие-нибудь умляуты да тильды.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37357868
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ruПобайтово сравнивать кусок текста и фразу нельзя --- нормализация же, оосбенно если в языке указани игнорировать какие-нибудь умляуты да тильды.

Имхо нормализацию юникода логично сделать один раз заранее, нежели при каждом сравнении. Что касается диакритических знаков - как-то странно их игнорировать при поиске заголовков: "Лень, матушка" и "Лёнь, матушка!" - это что, одно и то же? :)
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37358012
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ru,

Попробовал примеры запустить... кажется что-то хреново в мире RDF со спецификациями. Беру пример с http://www.w3.org/2000/10/swap/Primer и создаю файл test.ttl
Код: plaintext
1.
2.
  [ <#name> "Pat"; <#age>  24 ;  <#eyecolor> "blue"  ].
  [ <#name> "Al" ; <#age>   3 ;  <#eyecolor> "green" ].
  [ <#name> "Jo" ; <#age>   5 ;  <#eyecolor> "green" ].

В итоге получаю ошибку вида:

Код: plaintext
1.
2.
$ roqet -qi sparql test.sparql -D test.ttl
URI file:///tmp/test.ttl: 1  raptor error - syntax error

Я что-то не так делаю или на стандарты все болт забили? Если данные с удаленных ресурсов надо предварительно переделывать, теряется весь смысл.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37358119
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBG,

Вы взяли пример в синтаксисе N3, а грузите его как TTL (небольшое но популярное подмножество N3).
Если нужен TTL, то

Код: plaintext
1.
2.
 []  <#name> "Pat"; <#age> 24;  <#eyecolor> "blue" .
 []  <#name> "Al" ; <#age>  3;  <#eyecolor> "green" .
 []  <#name> "Jo" ; <#age>  5;  <#eyecolor> "green" .
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37358331
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
iv_an_ru,

Благодарю за подсказку, почему-то в доках про определение типа контента по расширению не видел даже упоминаний.

Сконвертировал лог веб-сервера в нижеуказанный формат:
Код: plaintext
1.
2.
3.
4.
5.
6.
@prefix : <http://mobigroup.ru/ 2011 /ttl/example#> .
[] :host "localhost"; :prot "http"; :code  503 ; :length  12731 ;
 :url ""; :type ""; :version "" .
[] :host "localhost"; :prot "https"; :code  503 ; :length  12731 ;
 :url "/"; :type "GET"; :version "HTTP/1.1" .
...

И получил вот такой результат:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
$ wc -l test.ttl 
 52593  test.ttl

$ time rdfproc test.db parse test.ttl turtle -n
rdfproc: Parsing URI file:///tmp/test.ttl with turtle parser

real	1m35.248s
user	0m42.927s
sys	0m7.116s

$ stat --format="%n %s" test.db*
test.db-po2s.db  21569536 
test.db-so2p.db  79216640 
test.db-sp2o.db  62119936 

$ time rdfproc test.db query sparql - '
PREFIX : <http://mobigroup.ru/2011/ttl/example#>
SELECT  ?code ?url ?length 
WHERE   { ?x :code ?code . FILTER (?code=503) . ?x :url ?url . ?x :length ?length }
'>log
rdfproc: Query returned bindings results:
rdfproc: Query returned  1457  results

real	0m13.773s
user	0m13.569s
sys	0m0.132s

То есть 160 Мб нужно для хранения 8 Мб исходных данных (!), полторы минуты заняла их загрузка и 14 секунд - выборка. Для сравнения, обычный grep в 300 раз быстрее и без предварительной подготовки данных:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
$ time grep ":code 503;" test.ttl>/dev/null

real	0m0.046s
user	0m0.040s
sys	0m0.008s

$ grep ":code 503;" test.ttl|wc -l
 1457 

Боюсь и подумать, что получится, если попытаться выполнить более практичный запрос на реальных данных.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37358342
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGСконвертировал лог веб-сервера в нижеуказанный формат:
...
То есть 160 Мб нужно для хранения 8 Мб исходных данных (!), полторы минуты заняла их загрузка и 14 секунд - выборка. Для сравнения, обычный grep в 300 раз быстрее и без предварительной подготовки данных:
...
Боюсь и подумать, что получится, если попытаться выполнить более практичный запрос на реальных данных.Ну так это проблемы не технологии как таковой, а конкретного программного продукта.
...
Рейтинг: 0 / 0
OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
    #37358358
Метод Майорова
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGiv_an_ru,
... обычный grep в 300 раз быстрее ...
.

Нада не так, а вот так


...
Рейтинг: 0 / 0
25 сообщений из 94, страница 1 из 4
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / OpenLink Virtuoso и RDF --- надо ли это и это ли надо?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]