فرمت و ساختار داده ی فایل های گرافی یا مدل داده گراف (Graph Data Structure)

به منظور فرایند گراف کاوی در تحلیل شبکه های اجتماعی میبایست گراف ها را در ساختار مناسب ذخیره کنیم. ساختار داده گراف یا مدل داده گراف دارای عناصر متفاوتی است که برای نگهداری اطلاعات گراف استفاده میشود. بنابراین ساختار فایل های گراف باید به گونه ای باشد که بتواند اطلاعات زیر را در خود نگهداری کند:

  • گره ها یا نودهای گراف (یا شبکه) میتوانند انواع مختلفی داشته باشند.
  • گره ها میتوانند نیز شامل اطلاعات باشند.
  • ارتباطات گراف که در اصل یال ها یا لبه های گراف هستند
  • یال ها میتوانند جهت دار یا بدون جهت باشند.
  • یال ها میتوانند وزن داشته باشند
  • یال ها میتوانند برچسب متنی خورده باشندیا دارای علامت باشند (مثلا علامت مثبت و منفی)

 

ساختار فایل های گراف

 

ساختار فایل های گراف باید به گونه ای باشد که بتواند تمام اطلاعات یک گراف حتی بعد از تحلیل و بصری سازی را در خود حفظ کند

ساختارهای داده‌ای معمول برای نگهداری گراف عبارت است از:

  • لیست مجاورت (adjacency list)
  • ماتریس مجاورت (adjacency matrix)
  • ماتریس برخورد
  • تک جدول
  • دو جدولی
دو جدولی
دو جدولی

 

جهت ذخیره و بازیابی اطلاعات گراف بر روی فایل، فرمت های و ساختار های مختلفی وجود دارد که معروفترین آنها در ذیل آمده است:

  • Graph Markup Language (GML)
  • Graph Data File (GDF)
  • Network Format (NET)
  • MATLAB format (MAT)
  • Comma Separated Value (CSV)
  • Graph Exchange XML Format (GEXF)
  • و قالبهای دیگری که به فراخور کاربرد و نرم افزار ممکن است مورد استفاده قرار گیرد.

وقتی در حال تحلیلِ شبکه های اجتماع هستیم باید بدانیم که ساختار یک شبکه ممکن است در طول زمان تغییر کند. از این رو نرم افزار بازنمایی شبکه باید بتواند اطلاعات زمانی را نیز در شبکه ذخیره کند. نودها و یالها ممکن است است حاوی اطلاعاتی باشند که در تحلیل شبکه موثر واقع شوند. نگهداری این اطلاعات همراه نودها و یالها خود میتواند از جمله قابلیتهای مهم در ذخیره سازی گراف باشد. چرا که تمامی این اطلاعات برای فرایند گراف کاوی استفاده خواهد شد.

در زیر نمونه هایی از فایل گراف با فرمت GEXF یا (Graph Exchange XML Format) آورده شده است.

<?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" version="1.2">
    <meta lastmodifieddate="2009-03-20">
        <creator>Gexf.net</creator>
        <description>A hello world! file</description>
    </meta>
    <graph mode="static" defaultedgetype="directed">
        <nodes>
            <node id="0" label="Hello" />
            <node id="1" label="Word" />
        </nodes>
        <edges>
            <edge id="0" source="0" target="1" />
        </edges>
    </graph>
</gexf>

در ادامه نمونه ای دیگر از قالب GEXF با جزئیات بیشتر آورده شده است:

<?xml version="1.0" encoding="UTF-8"?>
<gexf xmlns="http://www.gexf.net/1.2draft" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gexf.net/1.2draft http://www.gexf.net/1.2draft/gexf.xsd" version="1.2">
    <meta lastmodifieddate="2009-03-20">
        <creator>Gephi.org</creator>
        <description>A Web network</description>
    </meta>
    <graph defaultedgetype="directed">
        <attributes class="node">
            <attribute id="0" title="url" type="string"/>
            <attribute id="1" title="indegree" type="float"/>
            <attribute id="2" title="frog" type="boolean">
                <default>true</default>
            </attribute>
        </attributes>
        <nodes>
            <node id="0" label="Gephi">
                <attvalues>
                    <attvalue for="0" value="http://gephi.org"/>
                    <attvalue for="1" value="1"/>
                </attvalues>
            </node>
            <node id="1" label="Webatlas">
                <attvalues>
                    <attvalue for="0" value="http://webatlas.fr"/>
                    <attvalue for="1" value="2"/>
                </attvalues>
            </node>
            <node id="2" label="RTGI">
                <attvalues>
                    <attvalue for="0" value="http://rtgi.fr"/>
                    <attvalue for="1" value="1"/>
                </attvalues>
            </node>
            <node id="3" label="BarabasiLab">
                <attvalues>
                    <attvalue for="0" value="http://barabasilab.com"/>
                    <attvalue for="1" value="1"/>
                    <attvalue for="2" value="false"/>
                </attvalues>
            </node>
        </nodes>
        <edges>
            <edge id="0" source="0" target="1"/>
            <edge id="1" source="0" target="2"/>
            <edge id="2" source="1" target="0"/>
            <edge id="3" source="2" target="1"/>
            <edge id="4" source="0" target="3"/>
        </edges>
    </graph>
</gexf>

آدرس کانال تلگرام سایت بیگ دیتا:

t.me/bigdata_channel

آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel

جهت دیدن سرفصل های دوره های آموزشی بر روی اینجا کلیک کنید.

Visits: 2258

همچنین ببینید

مدل داده ای ستون گرا در کسندرا

مدل داده ای ستون گرا و تعریف شِمای مبتنی بر ستون در کاساندرا

پایگاه داده های ستون گرا به طور بالقوه می توانند به عنوان یک انبار داده …

تشخیص رویداد

بیش ازصد موجودت اسمی برای تشخیص رویداد (Event Detection)

تشخیص رویداد: رصد شبکه های اجتماعی، رویدادهای دنیای واقعی را نشان میدهد و اطلاعات ارزشمندی …

دیدگاهتان را بنویسید