Пожалуйста, смотрите обсуждение на https://www.semantic-mediawiki.org/wiki/Architecture_Tradeoffs
The viewd SMW_TRIPLES и SWM_TRIPLES_NS даст вам доступ к объекту, предикат, объект и тип троек, хранящихся в SQLStore3.
Способ, которым он работает, показывает вам, как общая структура базы данных SQLStore3 связывает элементы.
теперь вы специально просят таблицы smw_object_ids
, который имеет следующие столбцы:
Field Type Null Key Default Extra
smw_id int(8) unsigned NO PRI (null) auto_increment
smw_namespace int(11) NO (null)
smw_title varbinary(255) NO MUL (null)
smw_iw varbinary(32) NO (null)
smw_subobject varbinary(255) NO (null)
smw_sortkey varbinary(255) NO MUL (null)
smw_proptable_hash mediumblob YES (null)
, чтобы иметь возможность просматривать содержание varbinaries вы можете использовать бросок, например, как
select smw_id as id, cast(smw_subobject as char) as subobject,cast(smw_title as char)
as title
from smw_object_ids
where length(smw_subobject)>0
Теперь вы увидите, что субобъект имеет внутренний хэш-код, который добавляется к заголовку страницы, чтобы подобъекты идентифицировать в пределах страницы.
Вот пример страницы под названием «HammerUndSichel», который имеет четыре подобъектов:
id subobject title
91147 _0a12ff61e3b10c31478f2ff62b49e68e HammerUndSichel
91149 _52193085936ccfee4bc197ce37614073 HammerUndSichel
91207 _7fba483328e69e6aeb6dff0fc74447f4 HammerUndSichel
91148 _838fe1bff8f83dbfa40fb3314c47677b HammerUndSichel
Для внутренней памяти используются столбец «Идентификатор» и столбец подобъектов не вступают в игру еще. Беда начинается только тогда, когда вы хотите сделать какой-то обратный поиск. Например. подобъектом с идентификатором 91147 и подобъектом _0a12ff61e3b10c31478f2ff62b49e68e вы хотите узнать некоторое значение свойства, установленное в этом подобъекте. В запросе запроса вы делаете это с помощью hasSubObject в SQL Store, это становится более сложным.
В представлении SMW_TRIPLES_NS рассматривается проблема путем добавления пространства имен и подобъектов каждой теме в тройках. Это позволяет однозначно идентифицировать подобъектные тройки.
Для второй части вашего вопроса относительно хэша, пожалуйста, просмотрите некоторые другие ответы, которые кажутся более компетентными по этому вопросу, чем я.
Было мало полезно. Но теперь у меня есть еще один противоположный вопрос: – Velaro
Как хеши добавляются в упомянутую выше таблицу? Если быть точным, у меня есть страница, которая не отображает LastmodifiedBy smwproperty. После отладки я понял, что это не отображается, потому что свойство Lastmodified находится в smw_di_blob, которого нет в списке хэшей. – Velaro
@ Velaro Я считаю, что только создатель SMW знает все эти детали, поэтому я думаю, что было бы намного проще, если бы вы могли описать проблему, которую пытаетесь решить, возможно, для этого не нужно копать SQL. – wakalaka