<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">mais</journal-id><journal-title-group><journal-title xml:lang="ru">Моделирование и анализ информационных систем</journal-title><trans-title-group xml:lang="en"><trans-title>Modeling and Analysis of Information Systems</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1818-1015</issn><issn pub-type="epub">2313-5417</issn><publisher><publisher-name>Yaroslavl State University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.18255/1818-1015-2016-6-777-783</article-id><article-id custom-type="elpub" pub-id-type="custom">mais-414</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Оригинальные статьи</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>Articles</subject></subj-group></article-categories><title-group><article-title>Генерация графа социальной сети с использованием Apache Spark</article-title><trans-title-group xml:lang="en"><trans-title>Generation of a Social Network Graph by Using Apache Spark</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-4221-6470</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Белов</surname><given-names>Ю. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Belov</surname><given-names>Y. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>канд. физ.-мат. наук, доцент, ул. Советская 14, г. Ярославль, 150003 Россия</p></bio><bio xml:lang="en"><p>PhD, 4 Sovetskaya ul., Yaroslavl 150003, Russia</p></bio><email xlink:type="simple">belov45@yandex.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-0535-5786</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Вовчок</surname><given-names>С. И.</given-names></name><name name-style="western" xml:lang="en"><surname>Vovchok</surname><given-names>S. I.</given-names></name></name-alternatives><bio xml:lang="ru"><p>аспирант, ул. Советская 14, г. Ярославль, 150003 Россия</p></bio><bio xml:lang="en"><p>graduate student, 14 Sovetskaya ul., Yaroslavl 150003, Russia</p></bio><email xlink:type="simple">vof4ok@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Ярославский государственный университет им. П.Г. Демидова</institution><country>Россия</country></aff><aff xml:lang="en"><institution>P.G. Demidov Yaroslavl State University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2016</year></pub-date><pub-date pub-type="epub"><day>20</day><month>12</month><year>2016</year></pub-date><volume>23</volume><issue>6</issue><fpage>777</fpage><lpage>783</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Белов Ю.А., Вовчок С.И., 2016</copyright-statement><copyright-year>2016</copyright-year><copyright-holder xml:lang="ru">Белов Ю.А., Вовчок С.И.</copyright-holder><copyright-holder xml:lang="en">Belov Y.A., Vovchok S.I.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.mais-journal.ru/jour/article/view/414">https://www.mais-journal.ru/jour/article/view/414</self-uri><abstract><p>Планируется создать метод кластеризации графа социальной сети. Для тестирования будущего метода возникла необходимость в генерации графа, по своей структуре схожего с лежащими в основе существующих социальных сетей. В статье представлен алгоритм для распределенной генерации такого графа. Учитываются основные свойства социальной сети: степенное распределение количества сообществ для пользователей, плотные пересечения сообществ и другие. В данном алгоритме учтены проблемы, присутствующие в подобных работах других авторов, например, проблема кратных ребер при генерации. Особенностью созданного алгоритма стала реализация, зависящая от такого параметра как количество сообществ, а не от количества пользователей, как это делается в других работах. Это связано с особенностью развития структуры реальной существующей социальной сети. В работе перечислены свойства ее графа. Описана таблица, содержащая необходимые для алгоритма переменные. Составлен пошаговый алгоритм генерации. Для него определены соответствующие математические параметры. Генерация происходит распределенно с помощью фреймворка Apache Spark. Подробно описано, каким образом происходит разделение задач с помощью данного фреймворка. В алгоритме используется модель Эрдеша–Реньи для случайных графов как наиболее подходящая и достаточно простая для реализации. Основными преимуществами созданного метода являются использование малого количества ресурсов, по сравнению с другими подобными генераторами, и скорость выполнения. Быстрота достигается за счет распределенной работы и того, что при распределенной работе алгоритма в любой момент пользователи сети имеют свои уникальные номера и упорядочены по этим номерам, поэтому не требуется их сортировка. Разработанный алгоритм будет способствовать не только созданию эффективного метода кластеризации. Он может быть полезен в других областях, связанных, например, с поисковыми системами социальных сетей.</p></abstract><trans-abstract xml:lang="en"><p>We plan to create a method of clustering a social network graph. For testing the method there is a need to generate a graph similar in structure to existing social networks. The article presents an algorithm for the graph distributed generation. We took into account basic properties such as power-law distribution of the users communities number, dense intersections of the social networks and others. This algorithm also considers the problems that are present in similar works of other authors, for example, the multiple edges problem in the generation process. A special feature of the created algorithm is the implementation depending on the communities number parameter rather than on the connected users number as it is done in other works. It is connected with a peculiarity of progressing the existing social network structure. There are properties of its graph in the paper. We described a table containing the variables needed for the algorithm. A step-by-step generation algorithm was compiled. Appropriate mathematical parameters were calculated for it. A generation is performed in a distributed way by Apache Spark framework. It was described in detail how the tasks division with the help of this framework runs. The Erdos-Renyi model for random graphs is used in the algorithm. It is the most suitable and easy one to implement. The main advantages of the created method are the small amount of resources in comparison with other similar generators and execution speed. Speed is achieved through distributed work and the fact that in any time network users have their own unique numbers and are ordered by these numbers, so there is no need to sort them out. The designed algorithm will promote not only the eﬃcient clustering method creation. It can be useful in other development areas connected, for example, with the social networks search engines.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>социальная сеть</kwd><kwd>генерация</kwd></kwd-group><kwd-group xml:lang="en"><kwd>social network</kwd><kwd>generation</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Чихрадзе К.К. и др., “Использование модели социальной сети с сообществами пользователей для распределенной генерации случайных социальных графов”, Машинное обучение и анализ данных, 1:8 (2014), 1027–1047.</mixed-citation><mixed-citation xml:lang="en">Chikhradze K. K. et al., “On a model of social network with user communities for distributed generation of random social graphs”, Machine Learning and Data Analysis, 1:8 (2014), 1027–1047, (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Yang J., Leskovec J., “Community-aﬃliation graph model for overlapping network community detection”, IEEE 12th Conference (International) on Data Mining, 2012.</mixed-citation><mixed-citation xml:lang="en">Yang J., Leskovec J., “Community-aﬃliation graph model for overlapping network community detection”, IEEE 12th Conference (International) on Data Mining, 2012.</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Raigorodskii A., “Models of Random Graphs and Their Applications to the Web-Graphs Analysis”, RUSSIR-2015, Lomonosov Moscow University, Moscow Istitute of Physics and Technology, Yandex, Moscow, Russia, 25–29 August, 2015.</mixed-citation><mixed-citation xml:lang="en">Raigorodskii A., “Models of Random Graphs and Their Applications to the Web-Graphs Analysis”, RUSSIR-2015, Lomonosov Moscow University, Moscow Istitute of Physics and Technology, Yandex, Moscow, Russia, 25–29 August, 2015.</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Erdos P., Renyi A., “On the evolution of random graphs”, Bull. Inst. Int. Statist. Tokyo, 38 (1961), 343–347.</mixed-citation><mixed-citation xml:lang="en">Erdos P., Renyi A., “On the evolution of random graphs”, Bull. Inst. Int. Statist. Tokyo, 38 (1961), 343–347.</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Aiello W., Chung F., Lu L., “On the evolution of random graphs”, A random graph model for power law graphs, http://people.math.sc.edu/lu/papers/power.pdf.</mixed-citation><mixed-citation xml:lang="en">Aiello W., Chung F., Lu L., “On the evolution of random graphs”, A random graph model for power law graphs, http://people.math.sc.edu/lu/papers/power.pdf.</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Карау Х., и др., Изучаем Spark: молниеносный анализ данных, ДМК Пресс, М., 2015, 304 с.</mixed-citation><mixed-citation xml:lang="en">Karau K. et al., Learning Spark: Lightning-Fast Data Analysis, DMK Press, Moscow, 2015, 304 pp., (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Вовчок С.И., “Создание метода кластеризации графа социальной сети”, Новые информационные технологии в науке: сборник статей Международной научно- практической конференции МЦИИ ОМЕГА САЙНС. Ч. 2, 2016, 34–36.</mixed-citation><mixed-citation xml:lang="en">Vovchok S.I., “Sozdanie metoda klasterizatsii grafa sotsialnoy seti”, Novye informatsionnye tekhnologii v  nauke: sbornik statey Mezhdunarodnoy nauchno-prakticheskoy konferentsii MTsII OMEGA SAYNS. Part 2, 2016, 34–36, (in Russian).</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
