SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

17
SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA PADA MEDIA SOSIAL MENGGUNAKAN NEO4J APPLICATION OF GRAPH DATABASE FOR DATA ANALYSIS ON SOCIAL MEDIA USING NEO4J CHESSA PANDU ADITIRTA 155610037 PROGRAM STUDI SISTEM INFORMASI SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM YOGYAKARTA 2019

Transcript of SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

Page 1: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

SKRIPSI

PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA PADA

MEDIA SOSIAL MENGGUNAKAN NEO4J

APPLICATION OF GRAPH DATABASE FOR DATA ANALYSIS ON

SOCIAL MEDIA USING NEO4J

CHESSA PANDU ADITIRTA

155610037

PROGRAM STUDI SISTEM INFORMASI

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AKAKOM

YOGYAKARTA

2019

Page 2: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

i

SKRIPSI

PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA PADA

MEDIA SOSIAL MENGGUNAKAN NEO4J

APPLICATION OF GRAPH DATABASE FOR DATA ANALYSIS ON

SOCIAL MEDIA USING NEO4J

HALAMAN JUDUL

Diajukan sebagai salah satu syarat untuk menyelesaikan studi jenjang strata satu (S1)

Program Studi Sistem Informasi

Sekolah Tinggi Manajemen Informatika dan Komputer

AKAKOM

Yogyakarta

Disusun Oleh

CHESSA PANDU ADITIRTA

155610037

PROGRAM STUDI SISTEM INFORMASI

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM

YOGYAKARTA

2019

Page 3: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

ii

Page 4: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

iii

Page 5: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

iv

HALAMAN MOTTO

“Lakukan sesuatu selagi sempat. Sebelum Anda benar-benar tak punya

kesempatan untuk menyempatkan sesuatu itu.”

Page 6: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

v

HALAMAN PERSEMBAHAN

Allhamdulillahirobbil’alamin,

Puji syukur saya panjatkan kepada Allah SWT, karena telah memberikan

nikmat dan kemudahan dalam menyelesaikan Skripsi di STMIK AKAKOM

Yogyakarta.

Skripsi ini saya persembahkan untuk :

1. Bapak Slamet dan Ibu Trias Rijanarti

Sebagai Orang Tua dari saya yang telah mendukung dan mensupport

baik dari segi materi, motivasi maupun do’a agar terselesaikannya Skripsi

ini dan saya persembahkan Skripsi ini kepada Bapak dan Ibu, sebagai

penyelesaian Hak orang tua saya terhadap semua biaya pendidikan saya.

2. Bagas Adisurya

Sebagai adik yang telah menyemangati dan mendukung saya agar

menyelesaikan pembuatan Skripsi ini.

3. Teman – teman Angkatan 2015

Untuk seluruh teman - teman angkatan 2015 seperjuangan yang tidak

bisa saya sebutkan namanya satu persatu. Terima kasih sudah sering

mengingatkan dan memberi solusi ketika menemui masalah, sudah

memberikan semangat dan energi positif untuk segera menyelesaikan

Skripsi dan untuk wisuda bareng. Semangat juga bagi yang belum wisuda.

Tidak lupa saya ucapkan terima kasih banyak kepada Ibu Deborah

Kurniawati, S.Kom, M.Cs. sebagai dosen wali sekaligus dosen pembimbing

skripsi saya yang senantiasa mengingatkan serta mendorong dengan

motivasi-motivasi, Ibu Pulut Suryati, S.Kom, M.Cs. sebagai dosen penguji

yang telah melulusan skripsi saya ini. Kepada Ibu Deborah Kurniawati,

S.Kom., M.Cs. dan Bapak Edy Prayitno, S.Kom., M.Eng sebagai dosen

yang memberikan pengalaman dan ilmu di luar perkuliahan yang berupa

pengabdian masyarakat, serta Ibu Pulut Suryati, S.Si., M.Cs. sebagai dosen

yang selalu mendampingi saya saat mengikuti lomba dan Program

Page 7: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

vi

Kreatifitas Mahasiswa. Kepada Bapak Dr. Bambang Purnomosidi Dwi

Putranto, S.Kom., S.E., MMSI. selaku dosen yang mengampu mata kuliah

big data sehingga menjadi inspirasi penulis dalam mengambil topik graph

database. Kepada Bapak M. Agung Nugroho, S.Kom., M.Kom. sebagai

dosen yang memberikan bahan referensi berupa tutorial mengenai

penggunaan graph database neo4j sehingga memudahkan penulis untuk

dapat memahami penggunaan neo4j tersebut. Kepada Ibu Dini Fakta Sari,

S.T., M.T. dan Ibu Sri Redjeki, S. Si, M.Kom. sebagai dosen yang

memberikan kesempatan untuk mengikuti pelatihan mengenai big data

sehingga memperluas pengetahuan penulis mengenai penggunaan graph

database pada big data dalam lapangan. Dan untuk semua dosen STMIK

AKAKOM telah membagikan ilmu yang kalian miliki. Semoga ilmu yang

kalian berikan dapat bermanfaat.

Page 8: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

vii

DAFTAR ISI

HALAMAN JUDUL .............................................................................................. i

HALAMAN PENGESAHAN ............................................................................... ii

HALAMAN PERNYATAAN .............................................................................. iii

HALAMAN MOTTO .......................................................................................... iv

HALAMAN PERSEMBAHAN ........................................................................... v

DAFTAR ISI ........................................................................................................ vii

DAFTAR GAMBAR ............................................................................................ x

DAFTAR TABEL ............................................................................................... xii

KATA PENGANTAR ........................................................................................ xiii

ABSTRAK ........................................................................................................... xv

ABSTRACT ......................................................................................................... xvi

BAB I PENDAHULUAN ...................................................................................... 1

1.1. Latar Belakang Masalah .............................................................................. 1

1.2. Rumusan Masalah ........................................................................................ 4

1.3. Ruang Lingkup ............................................................................................ 4

1.4. Tujuan Penelitian ......................................................................................... 5

1.5. Manfaat Penelitian ....................................................................................... 5

1.6. Sistematika Penulisan .................................................................................. 6

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI .................................... 8

2.1. Tinjauan Pustaka .......................................................................................... 8

2.2. Dasar Teori ................................................................................................ 11

2.2.1. Teori Graf ...................................................................................... 11

2.2.2. Elemen-elemen dari Graf .............................................................. 11

2.2.3. Basis Data dan NoSQL .................................................................. 14

2.2.4. Graph Database ............................................................................ 15

2.2.5. Neo4j ............................................................................................. 16

Page 9: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

viii

2.2.6. CQL............................................................................................... 16

2.2.7. Pemodelan Data pada Neo4j ......................................................... 17

2.2.8. Bahasa Pemrograman Python ....................................................... 18

2.2.9. Neo4j Bolt Driver ......................................................................... 18

2.2.10. Tweepy .......................................................................................... 19

2.2.11. Graph Algorithm Degree Centrality ............................................. 20

2.2.12. Graph Algorithm Page Rank ......................................................... 21

BAB III METODE PENELITIAN .................................................................... 23

3.1. Cara dan Metode Penelitian ...................................................................... 23

3.1.1. Bahan dan Data ............................................................................. 23

3.1.2. Peralatan ........................................................................................ 24

3.1.3. Prosedur Kerja .............................................................................. 25

3.2. Analisis dan Rancangan Sistem ................................................................. 26

3.2.1. Analisis Kebutuhan Sistem .............................................................. 26

3.2.2. Rancangan Sistem ............................................................................ 26

BAB IV IMPLEMENTASI DAN PEMBAHASAN ........................................ 31

4.1. Implementasi dan Uji Coba Program ......................................................... 31

4.1.1. Implementasi Basis Data Graf pada Neo4j ............................... 31

4.1.2. Define Graph DataBase Neo4j .................................................... 33

4.1.3. Fetch Twitter ............................................................................... 34

4.1.4. Import to Neo4j ........................................................................... 35

4.2. Pembahasan Analisis ............................................................................... 38

4.2.1. Analisis algoritma Degree Centrality dengan kata kunci ‘kinal’

dengan Relationship type Mentions. ...................................................... 38

4.2.2. Analisis Algoritma Degree Centrality pada kata kunci

‘kinalkinal’ dengan Relatioship type Mentions .................................... 38

Page 10: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

ix

4.2.3. Analisis algoritma Page Rank dengan kata kunci ‘kinal’

dengan Relationship type Mentions ....................................................... 40

4.2.4. Analisis Algoritma Page Rank pada kata kunci ‘kinalkinal’

dengan Relationship type Mentions ....................................................... 41

BAB V KESIMPULAN DAN SARAN .............................................................. 42

5.1. Kesimpulan ............................................................................................... 42

5.2. Saran ......................................................................................................... 42

DAFTAR PUSTAKA .......................................................................................... 44

Page 11: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

x

DAFTAR GAMBAR

Gambar 1.1 Presentase media sosial yang paling aktif diakses pengguna

media sosial Indonesia Januari 2018. ............................................................... 2

Gambar 2.1 The Eulerian Paths. ................................................................... 11

Gambar 2.2 Contoh penggambaran vertices dan edges pada graph ............. 12

Gambar 2.3 Graf memiliki jalur-jalur yang melintasi vertices dan edges .... 13

Gambar 2.4 Salah satu circuit yang terbentuk pada path di gambar 2.4 ...... 14

Gambar 2.5 Properti dalam graph database. ................................................ 16

Gambar 2.6 Pemodelan data pada graph database neo4j. ............................. 17

Gambar 2.7 CQL pada neo4j pada contoh kasus gambar 2.6 ....................... 18

Gambar 2.8 Autentifikasi pada twitter applications ...................................... 19

Gambar 2.9 Baris perintah menggunakan library tweepy ............................. 20

Gambar 2.10 Baris perintah untuk mendapatkan twitter bearer ................... 20

Gambar 3.1 Package Diagram......................................................................... 27

Gambar 3.2 Twitter-Import Package Diagram................................................ 28

Gambar 3.3 Graph-Algorithm-Playground Package Diagram ........................ 29

Gambar 3.4 Diagram Basis Data Graf ............................................................ 30

Gambar 4.1 Implementasi basis data graf pada Neo4j .................................... 31

Gambar 4.2 Kode import_graph.py ................................................................ 33

Gambar 4.3 Potongan Kode Import_graph.py ................................................ 33

Gambar 4.4 Kode import_graph.py ................................................................ 34

Gambar 4.5 Potongan Kode import_graph.py ................................................ 35

Gambar 4.6 Kode import_graph.py ................................................................ 36

Page 12: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xi

Gambar 4.7 Potongan Program import_graph.py ........................................... 37

Gambar 4.8 Tampilan Analisis algoritma degree pada kata kunci ‘kinal’ ...... 38

Gambar 4.9 Potongan Program import_graph.py yang diubah ....................... 39

Gambar 4.10 Tampilan analisis algoritma degree pada kata kunci ‘kinalkinal’

.......................................................................................................................... 39

Gambar 4.11 Tampilan Analisis Algoritma Page Rank pada kata kunci ‘kinal’

.......................................................................................................................... 40

Gambar 4.12 Tampilan Analisis Algoritma Page Rank pada kata kunci

‘kinalkinal’ ....................................................................................................... 41

Page 13: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xii

DAFTAR TABEL

Tabel 2.1 Perbandingan Penelitian ................................................................ 10

Page 14: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xiii

KATA PENGANTAR

Bismillahirrohmanirrohim

Assalamu‘alaikum Wr. Wb.

Alhamdulillah segala puji syukur kami panjatkan kehadirat Allah SWT karena

atas limpahan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan

Skripsi ini yang berjudul “Penerapan Basis Data Graf untuk Analisis Data pada

Media Sosial Menggunakan Neo4j”. Skripsi ini disusun sebagai persyaratan

kelulusan pada Program Studi Sistem Informasi Strata 1 STMIK AKAKOM

Yogyakarta.

Dalam penyusunan Skripsi ini penulis banyak mendapat saran, dorongan,

bimbingan serta keterangan-keterangan dari berbagai pihak yang merupakan

pengalaman yang tidak dapat diukur secara materi. Oleh karena itu dengan segala

hormat dan kerendahan hati perkenankanlah penulis mengucapkan terima kasih

kepada :

1. Bapak Ir. Totok Suprawoto, M.M., M.T. selaku Ketua Sekolah Tinggi

Manajemen Informatika dan Komputer Akakom Yogyakarta.

2. Ibu Pulut Suryati, S.Kom., M.Cs. selaku Ketua Jurusan Sistem Informasi.

3. Ibu Deborah Kurniawati, S. Kom., M.Cs. selaku dosen wali sekaligus dosen

pembimbing skripsi saya yang telah banyak memberikan pengarahan, saran,

dan motivasi.

4. Ibu Pulut Suryati, S.Kom., M.Cs. dan Bapak Bambang Purnomosidi Dwi,

S.E., Akt., S.Kom., M.Msi. selaku Dosen Penguji yang telah berkenan

memberikan masukan dan saran.

Page 15: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xiv

5. Bapak Slamet dan Ibu Trias Rijanarti, kedua orang tua penulis yang selalu

memberikan kasih sayang, doa, dukungan, teladan, dan motivasi sehingga

penulis dapat terus berkembang sampai saat ini.

6. Adik penulis Bagas Adisurya yang selalu memberikan kasih sayang, doa

dan dukungan.

7. Seluruh teman – teman jurusan Sistem Informasi, khususnya angkatan 2015

yang telah memberikan motivasi.

8. Semua pihak yang tidak mungkin penulis sebutkan satu persatu yang telah

terlibat banyak dalam membantu sehingga Skripsi ini dapat diselesaikan.

Dalam penyusunan Skripsi ini, penulis menyadari masih terdapat banyak

kekurangan baik sengaja maupun tidak sengaja, dikarenakan keterbatasan ilmu

pengetahuan dan wawasan serta pengalaman yang penulis miliki. Untuk itu

penulis mohon maaf atas segala kekurangan tersebut tidak menutup diri terhadap

segala saran dan kritik serta masukan yang bersifat konstruktif bagi diri penulis.

Akhir kata semoga Skripsi yang penulis buat dapat bermanfaat bagi penulis

sendiri, institusi pendidikan, dan masyarakat luas. Amin.

Wassalamu‘alaikum Wr. Wb.

Yogyakarta, Juli 2019

Penulis

Page 16: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xv

ABSTAK

Perkembangan basis data sebagai teknologi untuk pengorganisasian data

semakin dibutuhkan. Hal tersebut dapat dibuktikan dengan berkembangnya data

dalam suatu organisasi atau perusahaan maupun data yang beredar secara global.

Data yang beredar secara global yang dikonsumsi menjadi informasi secara luas

sosial media contohnya. Twitter yang menjadi salah satu media sosial yang paling

sering digunakan di Indonesia. Data twitter dengan jumlah besar tidak menutup

kemungkinan data tersebut dapat disimpan dan dianalisis menggunakan basis data

graf.

Basis data graf yang digunakan menyimpan data twitter adalah Neo4j

dimana data tersebut akan diambil menggunakan twitter API yang ditulis dengan

Bahasa pemrograman python 3. Selain itu, neo4j-bolt driver dibutuhkanuntuk

dapat mengakses basis data graf neo4j. Selanjutnya, neo4j-desktop digunakan

sebagai tools untuk melakukan analisis menggunakan graph algorithm degree

centrality dan graph algorithm page rank.

Hasil analisis dari tools analisis dengan dua kata kunci yang berbeda dapat

diketahui bahwa kata kunci tertentu dapat berpengaruh terhadap banyaknya

hubungan tweet dengan user akun tertentu. Maka, eksistensi akun pada suatu

public figure dalam dunia entertaiment dapat diukur melalui seberapa terkait akun

official miliknya dengan kata kunci yang ada di media sosial khususnya twitter.

Kata kunci : degree centrality, graph algorithm, graph database, neo4j, page rank.

Page 17: SKRIPSI PENERAPAN BASIS DATA GRAF UNTUK ANALISIS DATA …

xvi

ABSTRACT

Development of databases as a technology for organizing data is

increasingly needed. This can be proven by the development of data in an

organization or company or the data circulating globally. Data circulating globally

that is consumed is widely information on social media for example. Twitter is

one of the most used social media in Indonesia. Twitter data with large numbers

does not rule out the possibility that data can be stored and analyzed using a graph

database.

Graph database used to store twitter data is Neo4j where the data will be

retrieved using the Twitter API written in the Python 3 programming language. In

addition, the neo4j-bolt driver is needed to be able to access the neo4j graph

database. Furthermore, neo4j-desktop is used as a tool to do analysis using graph

algorithm degree centrality and graph algorithm page rank.

The results of the analysis used analysis tools with two different keywords

can be seen that certain keywords can affect the number of tweet relationships

with certain user accounts. So, the popularity of an account in a public figure in

the world of entertainment can be measured by how related to his official account

with keywords in social media, especially twitter.

Keywords: degree centrality, graph algorithm, graph database, neo4j, page rank.