eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingProlog i hierarchiczna baza faktówProlog i hierarchiczna baza faktów
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!.POSTED!not-for-mail
    From: Sebastian Biały <h...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Prolog i hierarchiczna baza faktów
    Date: Thu, 22 May 2014 21:48:04 +0200
    Organization: ATMAN - ATM S.A.
    Lines: 49
    Message-ID: <lllk9q$lfi$1@node1.news.atman.pl>
    NNTP-Posting-Host: 193.0.194.227
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node1.news.atman.pl 1400788090 22002 193.0.194.227 (22 May 2014 19:48:10
    GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Thu, 22 May 2014 19:48:10 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
    Xref: news-archive.icm.edu.pl pl.comp.programming:205799
    [ ukryj nagłówki ]

    Mam takie zagadnienie abstrakcyjne.

    Jest baza faktów. Ma ona budowę bardziej hierarchiczną niż typowe
    tabelki. Obrazowo mogę ją mniej więcej przedstawić tak:

    a) Są domy
    b) W domach siedzą ludzie w róznych ilościach
    c) Ludzie mają znajomych ludzi (relacje jeden-do-wielu)
    d) Ludzie siedzą u siebie, u znajomych, na ulicy
    e) Ludzie mają różne dobra
    f) Ludzie czasem są rodzinami, mają przodków, dzieci itd
    g) Ludzie współdzielą dobra w rodzinie i nie tylko
    h) Dobra naleą do wielu kategorii
    ....
    Można tak dużo pisać. Baza ba bardzo wiele ukrytych relacji
    hierachicznych typu "dziadek sąsiada co ma telewizor pacujący z moją
    matką ma na imię Heniek".

    Potrzebuje przekopać taką bazę pod kontem zapytań w stylu:
    "Ilu moich sąsiadów ma tostery?"
    "Kim jest ten koleś co ma psa i pracuje z moją ciotką?"
    "Kto był wczoraj na imprezie łysego w okularach?"
    "Czy którykolwiek z informatyków ma dziewczynę?"
    "Czy ta dziewczyna z domu obok pracowała z moim kolegą ze studiów?"

    Bazę mam w postaci zywych struktur w pamięci i mogę je zserializować
    praktycznie do dowolnej postaci. Pomyślałem: może prolog? W zasadzie
    powinien móc mi tą bazę przekopać w sposób sprawniejszy niż SQL badź
    jakieś rękodzieło. Zaznaczam że pomimo że w prologu trochę pisałem,
    jestem technicznie zerem.

    Pytanie: jaką literaturę mam przeczytać, aby rzucić światło na
    rozwiązania tego typu problemów w Prologu? Wydaje mi się że wszelkie
    ogólne ksiązki Prologowe jakoś niespecjalnie zajmują się tego typu
    tematyką, przynajmniej w tych do których mam obecnie dostęp nie znajduje
    odpowiedzi na pytanie jak taki temat ugryźć. Danych jest bardzo dużo,
    relacje są skomplikowane i robienie tego bez wskazówek kogoś
    doświadczonego raczej nie jest dobrym pomysłem.

    Dlaczego Prolog? Nie wiem, to jeden z eksperymentów. I co ważne: to nie
    jest problem akademicki: jeśli Prolog ułatwi mi życie to zostanie
    zaembedowany w aplikacji. I nie, baza nie zawiera *takich* danych, ale
    myślę że podobne, na tyle by róznice nie wpływały istotnie na sens
    problemu. Na szczęscie dane są ścisłe, czyli nie interesuje mnie obraz
    statystyczny tylko *fakty*.

    Dlaczego nazywam to hierarchiczną bazą danych? Też nie jestem pewny tej
    nazwy, wydaje mi się że dane są uporządkowane bardziej "kto jest czyim
    wlascicielem" przy czym na róznych płaszczyznach. Byc może jestem w błędzie.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: