Właściwości dokumentu SQL Server z możliwością filetowania

9

Korzystam z programu SQL Server 2012 Filetable do przechowywania dokumentów i wyszukiwania za pomocą wyszukiwania semantycznego .

Zastanawiałem się, czy istnieje sposób na wyświetlenie listy wszystkich właściwości dokumentu (metadanych). Istnieje sposób na to, aby wyszukiwanie pełnotekstowe indeksowało i przeszukiwało właściwości dokumentu. Mogę zrobić listę indeksów SQL Server z następującą instrukcją:

 SELECT * FROM sys.registered_search_properties; 

Mogę również rozszerzyć tę listę za pomocą SQL lub programu .

To, czego nie znalazłem, to sposób na wyświetlenie faktycznych informacji. To, czego szukam, to lista taka jak:

  • Autor : Ruud van de Beeten
  • Tytuł : Dokument testowy
  • własność niestandardowa : wartość niestandardowa

Czy ktoś może skierować mnie we właściwym kierunku?

Edycja : Bob Beauchemin stworzył bilet opisujący mój problem. Ponieważ DMV nie podaje wartości właściwości, nie mogę użyć go w moim projekcie.

W końcu użyłem C # do wyświetlenia listy właściwości niestandardowych z obiektem OleDocumentProperties . Ten obiekt może odczytać właściwości z dokumentu Office. Będę obserwować to pytanie, mając nadzieję na lepsze rozwiązanie.

Ruud van de Beeten
źródło

Odpowiedzi:

10

Wygląda na to, że (w tej chwili) najlepsze, co możesz zrobić, to użyć słów kluczowych w nieruchomości, dołączyć je do dokumentu i trzymać kciuki, wystarczy.

SELECT
    keyword,
    display_term,
    column_id, document_id, property_id
FROM sys.dm_fts_index_keywords_by_property
(
    DB_ID('FileTableDB'), 
    OBJECT_ID('FileTableTb')
);

MSDN w tym DMV - http://msdn.microsoft.com/en-us/library/ee677646.aspx

Oto dyskusja z Bobem Beaucheminem i mną na ten temat: https://twitter.com/bobbeauch/status/275101491084292096

Bob powiedział mi o wspomnianym powyżej DMV i prawie potwierdził, że jest to najbardziej prawdopodobny sposób.

Oto bilet Connect Bob stworzony dla tego tematu: https://connect.microsoft.com/SQLServer/feedback/details/773212/provide-complete-fts-property-values-in-a-dmv-side-table

Kontynuujemy także rozmowę o tym, jak lepiej mieć preprocesora, który wyciągnie meta informacje, zapisze je (nie jestem pewien, czy znormalizujesz format swoich dokumentów, czy nie), a następnie przetworzysz ponownie, jeśli zostanie zmodyfikowany. Bob sugeruje, że być może uda się to zrobić za pomocą SQLCLR trigger / proc, co byłoby dość sprytnym rozwiązaniem i zabrudziłoby ręce.

Gator
źródło
dziękuję za poświęcenie czasu na odpowiedź na moje pytanie. Dowiedziałem się o dmv, ale nie mogę go użyć. Bilet stworzony przez Boba najlepiej opisuje mój problem.
Ruud van de Beeten,
To najlepsza (i jedyna) odpowiedź do tej pory. W końcu użyłem C # do wyświetlenia listy właściwości niestandardowych z obiektem OleDocumentProperties . Obejrzę to pytanie, mając nadzieję na rozwiązanie.
Ruud van de Beeten,
5

Znaleziono wersję beta produktu, który to robi, ponieważ zadano mi pytanie bezpośrednio. W żaden sposób nie jest powiązany z tą firmą. Zobacz „Jak zwrócić wartości właściwości dokumentu w wyszukiwaniu pełnotekstowym” na stronie : http://www.sqlskills.com/blogs/bobb/ .

Bob Beauchemin
źródło