REDIS


Sebenarnya artikel ini belum di coba semua dan belum mengetahui kebenarannya seperti apa, tetapi setelah saya baca-baca dan mengumpulkan informasi, ada beberapa artikel-artikel yang bagus untuk Redis ini.


PENGERTIAN

Redis adalah suatu teknologi penyimpanan data pada memory menggunakan metode penyimpanan “key” – “value”. Seperti kita ketahui, data yang disimpan pada memory akan jauh lebih cepat diakses daripada data yang disimpan pada harddisk. oleh karena itu sekarang banyak kita temui metode metode penyimpanan data melalui memory atau yang lebih sering dikenal dengan nama “In Memory Database”.


Redis di tulis di ANSI C. Redis support dengan bahasa pemrograman seperti C, C++, C#, Clojure, Common Lisp, Erlang, Haskell, Java, JavaScript (dari server atau client side), Lua, Objective-C, Perl, PHP, Python, R, Ruby, Scala, Go, dan Tcl.

Tidak seperti database pada umumnya yang menggunakan SQL syntax untuk mengakses data, Redis digolongkan sebagai “No-SQL” database, dimana pengambilan data menggunakan metode “key” – “value”. dalam redis, ada beberapa metode penyimpanan yang dapat disesuaikan dengan jenis data yang akan disimpan seperti: list, set, sorted set, hash, dan string.


FUNGSI

Seperti yang kita ketahui dengan membaca penjelasan di atas, Redis ialah suatu teknologi penyimpanan data. Maka oleh dari itu Redis berfungsi untuk menyimpan suatu data ke database. Tetapi di sini data-data tersebut tidak di simpan ke dalam harddisk melainkan di simpan pada memory. Metode ini di kenal dengan nama “In Memory Database”.


CARA MENGINSTALL

Tahap – tahap menginstal Redis :
1. Memiliki OS Linux. Jika belum ada, Install lah Linux terlebih dahulu.
2. Download Redis di http://redis.io/download.
3. Ekstrak file redis.


4. Buka Terminal
5. Masuk ke directory tempat kita meng ekstrak file tersebut.
6. Jika tidak bisa, ikutin perintah install yang ada di file tersebut.
7. Make install




CARA MENGOPRASIKAN

Mungkin anda bertanya tanya seperti apa metode penyimpanan dengan “key” – “value”, OK saya akan berikan contoh simple mengenai penyimpanan “key” – “value” dengan metode “string”. Jika sudah dapat menginstall Redis, maka mari kita mengoprasikan database ini.
1. Pertama-tama buka terminal.
2. Ketik sesuai gambar yang ada di bawah ini.


3. Jika sudah anda ketik, dan no error maka selamat, anda sudah dapat menjalankan perintah dasar Redis.

Maksud dari syntax di atas :
$ ./redis-cli : untuk masuk ke Redis.
$ ./redis-cli –h 127.0.0.1 –p 6379 : untuk menghubungkan ke server local.
$ ./ redis-cli –i 4 # Select DB 4 : untuk menggunakan database ke 4 (dari 16).
$ ./ redis-cli set hello word : untuk menyimpan “key” bernama “hello” dengan value “word” ke data base ke 4 ke dalam memory.
$ ./ redis-cli get hello : untuk mengambil value dari keybernama “hello” dari memory.

Contoh lain syntax dalam redis:
redis> set harga 1000
OK.

syntax diatas memerintahkan redis untuk menyimpan “key” bernama “harga” dengan “value” 1000 ke dalam memory dengan metode “string”
redis> get harga
“1000″

syntax diatas memerintahkan redis untuk mengambil “value” dari key bernama “harga” dari memory.



KELEBIHAN

Sudah jelas metode penyimpanan data seperti ini memiliki kelebihan-kelebihan yang sangat bagus, antara lain :

Cepat

Keistimewaan redis tentu saja pada kecepatan pada saat store dan retrieve data. Semua itu dilakukan dengan resource yang minimal dan dalam waktu yang “extremely fast”. Redis akan sangat berguna pada aplikasi-aplikasi yang memproses data dalam jumlah besar dalam waktu singkat seperti untuk reporting tools, indexing, dsb.
Maksud cepat di sini adalah redis memungkinkan kita secara cepat mengambil data atau melihat data . Seperti penjelasan di atas, Redis menggunakan metode “In Memory Database”.

Tentu saja bukan hanya cepat tentang mengambil data saja, Redis juga cepat dalam menulis atau menginput data ke memory. Redis memiliki system yang memungkinkan tidak adanya bloking I/O ke Memory. Redis juga dapat menulis/membaca lebih dari 100.000 string per detik.

Dapat Permasalahan-Permasalahan yang Berbeda

Seperti pisau flexible atau multitool, Redis dapat menyelesaikan permasalahan-permasalahan data bunch yang berbeda.

Binary-Safe String (Up To 1GB)

Dalam satu buah string, Redis dapat menyimpan string lebih dari 1 GB. Kemampuan metode penyimpanan ini tidak di ragukan lagi. Metode ini memiliki kemampuan untuk menyimpan data-data yang sangat banyak di jaman sekarang ini.

Kelebihan-kelebihan lain :

- Memiliki VMware

- Menggunakan pascal-style string

- Open Source, Free BSD Licence

- Menggunakan System NoSQL( Not Only SQL )


KEKURANGAN

Kemampuan Redis tidak di ragukan lagi, tetapi tetap saja memiliki kekurangan, yaitu:

Info yang Sangat Minim.

Karena Redis ini umurnya baru satu tahun lebih, maka info tentang redis ini sangat minim. Hanya web yang di kelola oleh warga negara asinglah yang memberikan informasi tentang Redis. Web yang memberikan informasi tentang Redis di Indonesia hanya sedikit, itupun kurang jelas.
Memakan Memory

Di karenakan Redis menggunakan metode “In Memory Database” yang menyimpan data pada memory bukan harddisk, maka RAM atau memory kita harus memiliki kapasitas yang tinggi.
Open Sorce

Bagi orang Indonesia yang menggunakan windows, akan kesulitan menggunakan Metode ini.
Cara Mengoprasikan Sulit

Data base ini tidak hanya menggunakan bahasa SQL saja, tetapi ia juga menggukana bahasa yang lainnya untuk mengoprasikan system Redis ini. Pengcodingan yang beragam dan suatu bahasa yang baru membuat seseorang yang hanya mengetahui bahasa SQL saja tidak dapat mengoprasikannya secara langsung.


CONTOH APLIKASI

Redis tidak dirancang untuk digunakan pada aplikasi yang membutuhkan logika komplex pada saat pengambilan data, namun kami tidak mengatakan kalau hal itu mustahil dilakukan dengan Redis, pada level tertentu, jika anda sudah mengerti semua command command redis, semuanya itu mungkin! Karna saya sudah membuktikannya sendiri. semuanya memerlukan trik dari programmer untuk membuat struktur data yang hendak disimpan, metode penyimpanan, dan lain lain.

Tetapi, di karenakan Redis support dengan bahasa pemrograman seperti C, C++, C#, Java, JavaScript (dari server atau client side), PHP, Python, dll. Maka Redis dapat di aplikasikan ke banyak hal, salah satunya ialah Webdis.

Webdis adalah Web server sederhana yang meneruskan perintah untuk Redis, database NoSQL, dan informasi kembali dalam format seperti JSON dan PubSub. Anda bisa menggunakannya untuk membangun aplikasi JavaScript yang antarmuka dengan Redis tanpa lapisan tengah lain, sangat mirip dengan CouchApps dibangun dengan Apache CouchDB. Hal ini juga mencakup kontrol akses, sehingga hanya pengguna tertentu akan memiliki akses tulis ke area tertentu dari database. CouchApps menyiasati hal ini dengan memberikan setiap user database mereka sendiri.


IMPLEMENTASI

Dalam implementasinya, kami tidak menemukan siapa yang menggunakan Redis, tetapi kemungkinan FaceBook, Twitter, dan Google menggunakan Redis, karena dengan metodenya FaceBook, Twitter, dan Google dapat menyimpan data yang banyak dan dapat di akses dengan cepat.
Sumber : http://simonwillison.net/static/2010/redis-tutorial


TUTORIAL MEMBUAT IPTV BERBASIS WEB



Hardware yang dibutuhkan :

  • Min 3 buah PC sebagai server
  • Sebuah PC sebagai client
  • TV tuner
  • Antena TV
  • Speaker / Headset

Software yang dibutuhkan :

  • VLC-1.1.11-win32

dalam pembuatan IPTV ini kita membutuhkan VLC untuk menstreaming siaran yang ditampilkan ke browser. Selain itu kita menggunakan VLC sebagai plugin player video di website kita. Download ” http://www.videolan.org/

  • XMAPP

Dalam pengerjaan IPTV ini kita membutuhkan XAMPP sebagai webserver.

download http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/

  • Mozila Firefox

Kita menggunakan Mozila karena hanya mozila firefox yang suport terhadap VLC plugin.

  • Website

Dalam pengerjaan kali ini langsung menggunakan website yang sudah ada. Dapat di download di http://pinguin.ittelkom.ac.id//tp/data/ci_iptv.rar atau di https://github.com/revolunet/VLCcontrols . Revolunet telah memberikan player VLC berbasis JQUERY, tetapi hanya dapat digunakan untuk VLC 1.1 ke atas. Dalam tutorial ini kita menggunakan website yang sudah jadi.

I. Konfigurasi Jaringan

Pada tutorial kali ini kita membutuhkan tiga buah server dikarenakan satu buah server hanya bisa satu chanel. Jadi dalam konfigurasi di atas kita memiliki tiga buah chanel dalam tiga buah server. Konfigurasi jaringan yang akan di buat adalah seperti gambar di bawah ini :

­­Gambar konfigurasi jaringan yang akan dibuat

Server kedua berisi VLC yang memutar chanel video. Server ketiga VLC berisi chanel yang diambil dari siaran televisi yang ada di sekitar, cth “SC*V, RC*I, dll”. Sedangkan server pertama berisi webserver dan VLC yang memutar chanel video. Sehingga, ketika client membuka website yang kita buat ia dapat memilih chanel dari tiga buah server yang ada (video1, video2, siaran televisi ).

II. KONFIGURASI

A. Konfigurasi IP pada tiap komputer

1. Settinglah IP server pertama 10.4.51.65/24

2. Settinglah IP server kedua 10.4.51.3/24

3. Settinglah IP server ketiga 10.4.51.2/24

4. Settinglah IP client 10.4.51.5/24


B. Pengaturan server 1

1. Install XAMPP.

2. Install VLC. Saat menginstall jangan lupa menceklist VLC mozila plugin.

3. Download website dan copy ke C:/xampp/htdocs. Tergantung kita menginstall di mana. Bukalah file iptv.php dan right.php yang terletak di “htdocs/ci_iptv/application/views”. Pada iptv.php carilah line 94 – 97.

4. Dapat dilihat di sana terdapat script di bawah ini :



94


95


96


97

input id='uri' value='http://127.0.0.1:8080' type='hidden'

input id='uri1' value='http://10.4.51.65:8080' type='hidden'

input id='uri2' value='http://10.4.51.3:8080' type='hidden'


input id='uri3' value='rtp://@229.1.1.1:1234' type='hidden'


Dapat kita lihat pada line 94 berfungsi untuk mengambil siaran yang di stream oleh server pertama dengan alamat 127.0.0.1:8080 ( localhost ). Line 95 untuk mengambil siaran yang di stream oleh server pertama juga. Jika server pertama ingin melihat hasil streamingan ia sendiri maka ia menggunakan localhost. Sedangkan jika komputer lain yang ingin melihat streamingan dari server pertama, maka menggunakan line 95 atau IP server pertama. Sedangkan line 96 untuk server ke dua dan line 97 untuk server ke 3.

5. Buka VLC player dan pilih media>stream. Atau Ctrl+S

6. Pilih video yang ingin di tampilkan dengan mengklik tombol “Tambah”, kemudian klik “Stream”.

7. Setelah itu klik next atau maju.

8. Pada pilihan file, pilihlah HTTP karena pada website meminta protokol HTTP. “lihat langkah ke 4”. Jika sudah klik “Tambah”. Setelah itu pilih Codec yang sesuai dan klik “Stream”. Pilihan Tampilkan secara lokal hanya opsional, jika ingin di tampilkan di VLC juga, maka ceklist.

9. Bukalah mozila dan buka alamat "http://10.4.51.65/ci_iptv". Kemudian klik tombol AMERIKA.

Bagian kiri dari VLC dan bagian kanan dari browser


10. Selesai, kita dapat melihat tampilan yang di streaming oleh VLC pada server pertama.


C. Pengaturan server 2

1. Ikuti langkah 2, 5, 6, 7, 8 pada server pertama untuk memutar video.

2. Pada sisi client bukalah mozila dan buka alamat "http://10.4.51.65/ci_iptv". Kemudian klik tombol INDONESIA, maka video akan berputar juga.


D. Pengaturan server 3

1. Pada server ini akan diputar siaran yang di dapat dari antena. ( RC*I, dll ).

2. Mungkin dalam tutorial ini tidak dapat di tunjukkan karena tidak adanya TV Tuner. Tetapi yang jelas protokol yang digunakan RTP dengan IP multicast yaitu 229.1.1.1:1234, sesuai script pada line 97.

3. Jika sudah, pada client dapat mengklik “Live Stream”. Maka akan keluar siaran yang sama seperti sairan server ketiga.


E. Konfigurasi Jaringan Yang lengkap