Ian Langmore Dan David Krasner Dalam Buku Applied Data Science/Penerapan Ilmu Pengetahuan Ihwal Data Science Catatan Secara Lengkap
BAB I
Applied Data Science atau dalam kalimat singkatnya penerapan ilmu data ialah judul buku karya Ian Langmore dan David Krasner yang anda bisa lihat disini, dan source code programnya disini. Karena repo untuk buku ini belum ada jadi saya masukkan dalam repo saya.
Data ialah sekumpulan informasi yang sanggup diolah, bila informasi tersebut hanyalah satu potong saja maka disebut dengan datum. Datum kita sanggup jumpai dalam banyak hal, contohnya “Meemcode” bila seseorang menyampaikan hal tersebut pada anda mungkin anda akan bertanya dengan 5 W + 1 H menyerupai waktu sekolah mengajarkan, namun bila orang tersebut menyampaikan atau menjelaskan degan media file baik dalam file dokumen atau mengunjungi blog ini secara pribadi maka anda akan mulai mengerti bahwa Meemcode ialah blog yang dibentuk dan diisi tulisannya oleh Matius Celcius Sinaga anda mungkin akan melanjutkan melihat dan membaca beberapa goresan pena sampai sanggup menyimpulkan sesuatu, itulah proses singkat dari data menjadi datascience atau ilmu data.
Hal apa yang diperlukan menjadi seorang DataScience ?
Untuk menghasilkan sebuah karya maka suatu makhluk hidup harus mempunyai keahlian atau “skill”, skill inilah yang menciptakan kita unggul dari orang lain, dan seorang datascience setidaknya harus mempunyai 3 skill yang dimana proses dari skill tersebut menghasilkan suatu karya-karya gres dan skill yang baru, berikut diagram Drew Conway Venn.
FAKTA
Seseorang dengan kemampuan h4ck1ng yang baik yang seringnya mencapai tujuan ini, namun h4ck1ng yang saya maksud bukan hal menyerupai deface maupun card1ng. Saya harap anda sudah paham dan mengerti h4ck1ng dan cracking itu apa, dan perbedaannya apa. Jika belum silakan seach di www.wikipedia.org
Data Processing
ada hal atau cara yang sederhana untuk mengikuti alur berfikir data processing bagi pemula, cara tersebut ialah dengan memanfaatkan dan membentuk satu pola saja terhadap proses dalam skala besar. Seperti Hadoop pada MapReduce dimana terkenal mengimplementasikan kebutuhan pada keseluruhan proses dengan tugas-tugas kecil yang dioperasikan pada satu pola. Keuntungannya ialah pada pemopressan menciptakan memory yang diperlukan menjadi berkurang sehingga aktivitas menjadi bisa membaca dari stdin dan menulis pada stdout yang dikenal sebagai filtered/tersaring.
STD
STD ialah kependekan dari Standard, maka Std In ialah Standard In atau standar masukan, begitu juga dengan Std Out ialah Standard Out atau standar keluaran dan Std Err atau Standard Error atau standard kesalahan.
Unix Philosophy
“... Write aktivitas that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.”
BAB II
Peraturan tentunya berbeda dengan pengaturan, namun alangkah baiknya bila suatu pengaturan mendukung peraturan vice versa. Lalu bagaimana menciptakan sesuatu yang efisien dalam datascience sehingga pengaturan dan peraturan berjalan bersama membentuk program-program yang baik adanya.
Saya tidak akan membahas teknik coding maupun strukturnya disini. Namun ada baiknya hal dibawah ini kita bahas menjadi sesuatu kesatuan yang utuh untuk membentuk aktivitas datascience yang bermanfaat nantinya.
Dalam datascience ada beberapa hukum yang setidaknya harus dipatuhi, yaitu
Rules Of Simplicity ialah desain yang harus sederhana atau bersifat sederhana. Complexity/komplesitas maupun kerumitan hanya bisa ditambahkan apabila ketika hal tersebut ialah suatu keharusan.
Rules Of Collaboration dimana program-program tersebut bisa bekerja sama, bekerja sama dengan insan untuk menciptakan aktivitas dan menghasilkan karyaf.
K.I.S.S = Keep It Simple Stupid
Rules Of Modularity buatlah bagian-bagian yang sederhana dengan tampilan yang jelas. Karena insan pada umumya mempunyai kemampuan terbatas dalam menangani informasi dalam kepala mereka dan dalam satu waktu. Maka buatlah fungsi-fungsi yang sederhana meskipun kecil maka orang yang melihat sanggup menjelaskannya dengan satu kalimat.
Rules Of Clarity suatu aktivitas yang terang lebih baik dari pada aktivitas yang keren tapi sulit untuk diketahui maksud dan tujuan aktivitas tersebut, alasannya akan lebih berakibat fatal bila pada ketika perbaikan dan debugging menjadikan hal itu lebih sulit dan memakan waktu khususnya apabila aktivitas nantinya digunakan jangka usang dan orang yang berbeda-beda.
Rules Of Composition aktivitas yang anda miliki harus sanggup berkomunikasi dengan aktivitas lain terutama pada serpihan desain dan strukturnya.
Rules Of Least Surprise buatlah hal-hal yang tidak terduga di selesai aktivitas namun tetap mengikuti rules sebelumnya.
“... the purpose of computing is insight, not numbers.” Richard Hamming
BAB III
“... all model are wrong, some are usefull .”
Kemajuan teknologi yang kita alami ketika ini berdasarkan para mahir ialah kemajuan teknologi dalam dekade yang sangat amat cepat, dimana persaingan teknologi bukan lagi berada pada level perusahaan maupun vendor kelas atas/besar namun juga para pengusaha kelas UKM sebagai penyedia jasa. Baik dalam bentuk layanan service atau perbaikan sampai kelas desain web dan pembuatan web berskala besar. Beberapa orang yang saya temui dan ketahui ketika ini ialah penyedia jasa pembuatan aplikasi desktop dan web bagi pemerintah, hebat bukan ? Namun teknologi juga membawa angin hambar dan panas alasannya para pekerja asinglah menjadi ambang batas standar bagi pekerja dalam negeri untuk tetap bersaing secara sehat.
Bagaimana dampak data terhadap perkembangan teknologi ?
Media sosial dan website yang kita kunjungi dan hal lainnya yang bersifat online tentunya menyimpan data, informasi dan hal-hal yang mengakibatkan pembengkakan kebutuhan kapasitas penyimpanan data dan terjadilah yang disebut unstructured data.
Unstructured Data atau data yang tidak terstruktur/tertata dengan baik ialah informasi yang tidak dijelaskan sebelumnya dengan model data atau tidak cocok dengan tabel-tabel yang berafiliasi untuk mengenali data. Disini kita membutuhkan keahlian datascience untuk memproses data yang ada menjadi data yang berarti dan membantu pemilihan keputusan di masa depan.
Dalam pemoressan data terdapat banyak variasi dan teknik yang asalnya dari Unix Regular Expression sampai menjadi Natural Language Processing, ada 3 (tiga) hal yang umum sebagai bentuk ekspresi yaitu dengan pola berikut :
1. Text Classification atau pembagian terstruktur mengenai teks, disini anda akan mulai mengumpulkan data yang asalnya dari artikel gosip dan kiprah yang ingin anda lakukan ialah menempatkan artikel tersebut dengan kategori gosip yang cocok. Pertama-tama anda harus mengekstrak fitur-fitur yang mempunyai kegunaan dari teks gosip semisalnya alasannya ini akan menjadi lebih mudah, kemudian kata benda, frasa dan menggunakan fitur tersebut untuk membentuk model.
2. Web Scrapping atau meyerayapi web, yang anda lakukan ialah menulis aktivitas yang akan menyerayapi web dan mengumpulkan informasi, memproses teks dan mengekstrak hal-hal yang umum, topik-topik gosip dan bila memungkinkan perihal sentimen terhadap suatu topik.
3. Social Media Trends atau tren sosial media, kiprah anda ialah menganalisa keseluruhan reaksi dari pengguna twitter secara khusus mengenai kejadian maupun gosip dan mengidentifikasi hal-hal yang sedang pamor atau trending atau bila bisa anda perkirakan akan menjadi trending.
Kekuatan Regular Expression berasal dari fleksibilitas dan campuran sintaksisnya, keseluruhannya berasal dari regular expression itu sendiri dimana untuk menggunakannya anda harus mempunyai pelajaran tersendiri.
Sebagai pola anda sanggup mempraktekkan pada python :
$ import re
$ myString =”<Meemcode ialah blog pribadi milik Matius Celcius Sinaga>”
$ re.findAll (r”[a-zA-Z0-9]”, myString)
BAB IV
Klasifikasi dan Perbedaan |
Classification
Classification ialah problem yang paling umum dan fundamental dalam Machine Learning dan Data Science. Ketika anda ingin menciptakan penyaring spam , mencoba menggambarkan hal yang paling memenuhi/cocok dengan ketentuan data/informasi yang kita butuhkan dan hal yang tidak memenuhi/cocok. Dan dalam melaksanakan pembagian terstruktur mengenai ini terkadang membutuhkan waktu yang tidak sedikit dalam prosessnya, menyerupai problem yang harus ditentukan, ketentuan setiap label dan tabel dan hal lain sebagainya.
Setidaknya ada dua tipe dasar mengenai pembagian terstruktur mengenai : binary (atau dua kelas, yaitu 1 dan 0) dan multi klas.
Ada beberapa peraturan fundamental yang akan muncul selama proses ini contohnya ialah bila ditemukan atau adanya sebuah perihal yang diklasifikasikan sebagai perihal positive maka hal ini terhitung sebagai true positive , bila terdapat kesamaan perihal positive maka akan diklasifikasikan sebagai false positive dan true negative. Tentunya hal ini ialah hal yang sering dijumpai dan alami pada Matriks 2x sebagai true dan memprediksi class yang disebut confusion matrix atau contingency table.
Tabel tersebut menyampaikan kita pandangan mengenai sejarah dan pengaplikasian secara luas dari klassifier dimana ada plethora of terminology pada kuantitas kunci, yaitu :
1. True Positive rate (atau hit rate, recall, sensitivity)
TP Rate = Positive Correctly Classified
Total Positive
2. False Positive rate (atau false alarm rate)
FP Rate = Negatives Incorrectly Classified
Total Negatives
3. Specificity
Specificity = True Negatives
False Positives + True Negatives
Sensitivitas/Sensitivety atau true positive rate ialah serpihan dari proporsi yang tentunya positive correctly dalam klasifikasi. Dan sensitivitas pada true negative rate ialah proporsi pada negative correctly yang telah diklasifikasikan. Maka pembagian terstruktur mengenai yang tepat akan menjadi 100% sensitif dan 100% spesifik. Untuk lebih jelasnya anda sanggup mencari topik ini pada mesin pencari.
BAB V
Decision Tree
Dasar algoritma dari decision tree ialah :
1. Dimulai dengan pemilihan awal. Hal ini sangat sederhana dari pengumpulan pohon konsistenitas dari satu node, satu untuk setiap fitur.
2. Memilih satu yang terbaik, menyampaikan akurasi singkat dalam mengukur (dengan memisahkan objek) menentukan satu node pohon/tree yang paling akurat.
3. Memperhatikan akurasi pada tiap daun/leaf dengan mengevaluasi tanda dari pengklasifikasi dengan menghubungkan subset data. Jika akurasi tidak cukup tinggi atau contohnya tidak memenuhi beberapa klarifikasi sebelumnya dari kriteria selanjutnya membentuk pohon sama menyerupai langkah 1 pada penggunaan fitur yang tidak digunakan pada hubungan subset data.
Bagaimana menentukan keputusan dengan Decision Tree |
Secara geometri, decision tree akan memenuhi ruang data adna dengan hypenrectangles , dimana setiap rectangles menerangkan sebuah kelas label. Dengan beberapa laba :
1. Decision tree sangatlah sederhana dan gampang untuk diterjemahkan.
2. Membutuhkan sifat pembanding/perbandingan antara data kecil dengan terang kemudian melanjutkannya dengan baik atau dikategorikan secara variabel.
3. Pengujian dari titik data sangatlah cepat, logn dimana n number dari jumlah yang sisa.
4. Dapat menangani type data yang bercampur.
Kekurangan utamanya ialah :
1. Decision tree sanggup dengan gampang menjadi rumit dan menjadikan overfitting . Satu cara untuk mengatasi problem ini ialah dengan cara prune atau memangkas/menyingkat. Dengan pengaturan tersebut juga meminimalisir jumlah dari sample yang diberikan pada node untuk dipisahkan. (Jika sample minimal sangat tinggi, maka pohon/tree akan dipaksa untuk menciptakan keputusan/decision lebih awal, mencocokkan data lebih sedikit) atau dengan mengatur max depth dibatasi dengan ukuran masukan dari tree.
2. Akurasi prediksi sanggup menjadi lebih tidak stabil alasannya problem kecil yang ada pada data, contohnya ialah 'perubahan' sanggup mengarahkan titik data menjelma kearah klas yang salah.
3. Menemukan sebuah pilihan tree ialah NP-complete. Ingatlah, bahwa algoritma tidak menjamin keseluruhan pernjelasan secara global dengan optimal pada tree yang ditemukan, alasannya hal ini sederhana menciptakan pemilihan yang terbaik pada setiap node yang diberikan tidak termasuk bahwa kemungkinan untuk menyampaikan lebih krang dari optimalisasi keputusan akan mengarahkan pada keseluruhan pembagian terstruktur mengenai yang lebih baik.
BAB VI
Random Forest
Suatu ketentuan dari metode yang populer, dimana pembuatnya ialah Leo Brieman, Adele Culer, Tin Kam Ho, dan yang lainnya. Metode tersebut bertujuan untuk melengkapi fleksibilitas dari suatu decision tree, ketika pengurangan pada kekurangan yang disebutkan diantara penyebaran dari keseluruhan pengumpulan masukan. Random forest, sama pada ensemble pada umumnya, sanggup disebut sebagai lebih kepada framework dengan spesifik model.
Bentuk dasarnya ialah :
1. Dibentuk pada tiap decision tree, contohnya pada awal permulaan satu keputsan linear, quadratic, atau fungsi lainnya.
2. Type dari prediksi digunakan pada tiap leaf, sebagai pola prediktor/pemprediksi tagar instagram.
3. Memisahkan objek untuk meningkatkan tiap node, sebagai pola penyebutan kenaikan dari informasi.
4. Beberapa metode acak yang lebih spesifik tiap tree.
Random forest secara konsisten mengklasifikasikan setiap pengumpulan {h(x, Ѳ k)} k-1 dimana {Ѳ k} secara independent didistribusikan vektor acak dan tiap pohon dihitung sebagai satu hitungan sebagai kelas yang paling terkenal pada masukan x.
Pada tiap tree, Briemann secara spesifik melaksanakan hal berikut :
1. Membuat N menjadi angka pada bentuk training dan M pada angkadari fitur dalam klasifikasi.
2. Membuat m menjadi angka pada fitur masukan yang akan digunakan untuk menentukan keputusan pada node tree m << M
3. Memilih sekumpulan training dengan ukuran n << n dengan perubahan, dan menggunakan embel-embel sebagai kumpulan pengujian. Hal ini dikenal sebagai pola bootstrap.
4. Memilih fitur m dimana akan digunakan pada keputusan dalam menyampaikan tree dan menghitung pemisahan yang cocok untuk digunakan pada fitur dan kumpulan pelatihan
5. Membuat setiap tree tumbuh dengan menyeluruh, tanpa pruning/pemotongan
Sebagai hasil pengumpulan dari tree pada Ti, ... , Tk memberikanmasukan (x) sebagai kelas yang ditandai dengan cara mode pemilihan dari keseluruhan Ti, ini ialah suatu pendekatan yang dilakukan Brieman pada Regression Trees dan bila anda tertarik untk mengetahui kekuatan yang diberikan Classification secara umum atau perhitungan yang sama ukurannya anda sanggup mengambilnya dari keluaran Ti.
Meskipun hal diatas sanggup dijelaskan melalui pengujian namun banyak produk yang menggunakan √M atau log2(M) sebagai nilai umum.
Dalam Classification ataupun fakta empiris lainnya telah memperlihatkan bahwa dalam prakteknya untukmenentukan sebuah training tersebut baik dengan menggunakan pengujian/test dengan menentukan ukuran yang sama. Jika kumpulan training anda itu kecil dan anda ragu untuk menyisakan beberapa serpihan selama proses dengan model yang telah dibentuk mungkin itu ialah pendekatan yang baik. Jika training yang anda miliki sangat luas dan anda ragu dengan waktu yang akan dihabiskan dengan waktu perhitungan dengan menggunakan bootstrap yang lebih kecil sebagai pola untuk menciptakan pengumpl dari classifier dalam waktu yang lebih sedikit dan mengubahkan keseluruhannya. Dikarenakan classifier lebih individual yang artinya dengan sendirinya anda sanggup menciptakan kesamaan dengan keseluruhan proses yang kemampuannya terus berkembang dan naik dimana hal ini akan sangat mempunyai kegunaan bila anda ingin mengulang model anda dengan cara yang sama dengan data set sebelumnya.
BAB VII
Maximum Entropy
Ada beberapa perbedaan kriteria dimana anda sanggup memisahkan decision tree node, dan yang paling terkenal ialah maximum entrophy. Tidak salah bila anda berfikir entrophy ialah konten dari informasimaupun pengukuran yang tidak niscaya atau ketidakacaan dari variable acak.
dimana jumlah dari keseluruhan kelas pada variabel acak ialah hasil keluaran.
Dimana H(T) ialah entrophy pada T, S ialah subset yang dibentuk dengan memisahkan T melalui fitur f, dan p(s) ialah proporsi dari jumlah elemen dari s pada elemen pada T contohnya ialah ukuran relatif pada s. Yang diketahui sebagai algoritma 103 yang dikembangkan oleh Ross Quinlan.
Pada faktanya python tidak membutuhkan pengaturan alokasi memory oleh programmer namun bukan berarti pemahaman dasar kita mengenai teknis dari bahasa pemograman tersebut tidak diperlukan bahkan bisa jadi membantu menyerupai penggunaan pada kepahaman mengenai batas kemampuan komputer tersebut dan disisi lain python juga bisa menjadi bahasa pemograman yang sangat-sangat lambat.
BAB VIII
Memory Hierarchy
Kemampuan suatu CPU berasal dari pulsa-pulsa elektrik yang diubahkan menjadi operasi dalam CPU. Dan kemampuan suatu CPU selalu diadaptasi dengan nilai dan manfaat ekonomisnya yang dimaksudkan dengan nilai ekonomisnya bukan hanya harga dari suatu produk, katakanlah laptop, namun juga kemampuannya dalam mngatasi problem yang dihadapi user tersebut. Jika suatu CPU yang diperlukan ialah 2-3 Ghz bukan berarti CPU dalam clock 5-8 Ghz 'sah' digunakan user, alasannya akan menghabiskan biaya terhadap listrik dan peripheral lainnya. Berikut hirarki memory untuk pemahaman mengenai pentingnya penggunaan sumber daya yang anda miliki.
Hierarki Memori atau Memory Hierarchy
- peningkatan waktu kanal (access time) memori (semakin ke bawah semakin lambat, semakin ke atas semakin cepat)
- peningkatan kapasitas (semakin ke bawah semakin besar, semakin ke atas semakin kecil)
- peningkatan jarak dengan prosesor (semakin ke bawah semakin jauh, semakin ke atas semakin dekat)
- penurunan harga memori tiap bitnya (semakin ke bawah semakin semakin murah, semakin ke atas semakin mahal)
Memori yang lebih kecil, lebih mahal dan lebih cepat diletakkan pada urutan teratas. Sehingga, bila diurutkan dari yang tercepat, maka urutannya ialah sebagai berikut:
- register mikroprosesor. Ukurannya yang paling kecil tetapi mempunyai waktu kanal yang paling cepat, umumnya hanya 1 siklus CPU saja.
- Cache mikroprosesor, yang disusun berdasarkan kedekatannya dengan prosesor (level-1, level-2, level-3, dan seterusnya). Memori cache mikroprosesor dikelaskan ke dalam tingkatan-tingkatannya sendiri:
- level-1: mempunyai ukuran paling kecil di antara semua cache, sekitar puluhan kilobyte saja. Kecepatannya paling cepat di antara semua cache.
- level-2: mempunyai ukuran yang lebih besar dibandingkan dengan cache level-1, yakni sekitar 64 kilobyte, 256 kilobyte, 512 kilobyte, 1024 kilobyte, atau lebih besar. Meski demikian, kecepatannya lebih lambat dibandingkan dengan level-1, dengan nilai latency kira-kira 2 kali sampai 10 kali. Cache level-2 ini bersifat opsional. Beberapa prosesor murah dan prosesor sebelum Intel Pentium tidak mempunyai cache level-2.
- level-3: mempunyai ukuran yang lebih besar dibandingkan dengan cache level-2, yakni sekitar beberapa megabyte tetapi agak lambat. Cache ini bersifat opsional. Umumnya digunakan pada prosesor-prosesor server dan workstation menyerupai Intel Xeon atau Intel Itanium. Beberapa prosesor desktop juga memperlihatkan cache level-3 (seperti halnya Intel Pentium Extreme Edition), meski ditebus dengan harga yang sangat tinggi.
- Memori utama: mempunyai kanal yang jauh lebih lambat dibandingkan dengan memori cache, dengan waktu kanal sampai beberapa ratus siklus CPU, tetapi ukurannya mencapai satuan gigabyte. Waktu kanal pun kadang kala tidak seragam, khususnya dalam masalah mesin-mesin Non-uniform memory access (NUMA).
- Cakram Magnetis cakram magnetis, yang bersama-sama merupakan memori yang digunakan dalam memori utama untuk membantu kerja cakram magnetis.
- Cakram magnetis
- Tape magnetis
- Cakram Optik
Bagian dari sistem operasi yang mengatur hierarki memori disebut dengan memory manager.Di kala multiprogramming ini, memory manager digunakan untuk mencegah satu proses dari penulisan dan pembacaan oleh proses lain yang dilokasikan di primary memory, mengatur swapping antara memori utama dan disk ketika memori utama terlalu kecil untuk memegang semua proses. Tujuan dari administrasi ini ialah untuk:
- Meningkatkan utilitas CPU.
- Data dan arahan sanggup diakses dengan cepat oleh CPU.
- Efisiensi dalam pemakaian memori yang terbatas.
- Transfer dari/ke memori utama ke/dari CPU sanggup lebih efisien.
BAB IX
Pernahkah anda sebelumnya mendengar mengenai MPI atau Message Parsing Interface ? , yaitu ialah hal yang paling mempunyai kegunaan dan bermanfaat yang merupakan multiprocessing library. Library ini menyediakan sekumpulan cara untuk memulai sesuatu dan jalan komunikasi diantaranya. Proses yang dilakukan juga menyediakan beberapa hal yang disebut dengan Reduction operation dimana data akan disimpan pada proses yang beraneka ragam untuk 'menguranginya' menjadi satu signal angka. Sebagai contoh, bila setiap proses menangani sebuah segmen dari pada array, kemungkinan pengurangan akan melibatkan perhitungan jumlah keseluruhan daripada array. Prores pada masing-masing jumlah akan berturut-turut menjadi sub-array, dan akan mengirim risikonya pada master process, dimana ditambahkan keseluruhan sub-sums. Meskipun penggunaan dari MPI luas namun juga menyampaikan kita cara untuk melaksanakan 'restart' pada tugas-tugas yang salah. Ketika anda ingin menjalankan 100 komputer secara langsung, bukanlah hal sulit bila anda mempunyai pekerja untuk melaksanakan itu, namun bila untuk melaksanakan pekerjaan dengan ribuan mesin maka anda harus mengatur orang-orang tersebut untuk kiprah masing-masing. Untuk hal menyerupai inilah paradigma MapReduce dikembangkan. MapReduce mengijikan pemetaan kiprah pada masing-masing proses dengan mesin yang berbeda kemudian menyediakan pertolongan terhadap tipe yang berbeda dari penguraian/reduction sebagaimana dilakukannya 'restart' pada kiprah yang salah.
Hadoop ialah sebuah implementasi secara sumber terbuka/opensource dari MapReduce dari kopopulerannya pada Hadoop/MapReduce, hal ini menjadi penting untuk mengetahui bahwa metode pembatasan yang tinggi dari paralel computing dengan besarnya pengeluaran yang diperlukan untuk memproses spam yang baru.
Logo Apache Hadoop |
Hadoop ialah sebuah implementasi secara sumber terbuka/opensource dari MapReduce dari kopopulerannya pada Hadoop/MapReduce, hal ini menjadi penting untuk mengetahui bahwa metode pembatasan yang tinggi dari paralel computing dengan besarnya pengeluaran yang diperlukan untuk memproses spam yang baru.
“... We should forget about small efficiencies, say about 97% of the time,
premature optimation is the root of all evil.”
Donald Knuth
DAFTAR PUSTAKA
Hadoop disini disebut lebih dari sekedar software atau perangkat lunak. Hadoop ialah sekumpulan software yang saling bekerja sama untuk mengolah data. Bisa disebut Hadoop ialah sebuah ekosistem yang terdiri dari software-software yang bekerja sama. Secara garis besar saya pribadi membagi ekosistem menjadi beberapa bagian:
- Inti atau core dari Hadoop: Ini ialah software utama yang menjadi dasar dari ekosistem. Software ini bisa didapat di web site Apache Hadoop. Inti hadoop ini terdiri dari beberapa serpihan yaitu Hadoop Distributed File System (HDFS) dan Map Reduce. HDFS ialah daerah data-data dan file disimpan. Map Reducedisini ialah aktivitas untuk melaksanakan datamining dan pengolahan data lainnya dari file atau data yang disimpan di HDFS.
- Data mining. Bagian ini bersama-sama bisa dikatan ialah API untuk menjalankan Map Reduce. Bagian ini mempermudah menciptakan dan menjalankan Map Reduce. Dengan demikian akan lebih gampang menciptakan dan menjalankan query. Contoh dari serpihan ini ialah Apache Pig dan Apache Hive
- Database NoSQL (Not Only SQL). Bagian ini ada alasannya proses map reduce biasanya makan waktu usang (karena data yang diproses baisanya besar) dan dilakukan secara periodik dan tidak sewaktu-waktu. Bagian ini menyampaikan kanal data yang lebih cepat dan bisa sewaktu-waktu. Contoh NOSQL yang baisa digunakan ialah Apache HBase dan Apache Cassandra.
- Bagian pendukung lain. serpihan ini padaumumnya dalah pendukung operasional Hadoop. Contohnya ialah Apache Zookeeper yang berfungsi untuk mengatur distribusi data dan pemrosesan data. Zookeeper digunakan oleh Apache HBase. Apache Flume berfungsi untuk mengatur input kedalam hadoop dari sumer data yang bersifat streaming contohnya dari Twitter. Ada banyak lagi software pendukung Hadoop ini. Seperti Apache Ambari, Apache Oozie dsbnya. Tidak mutlak harus menggunakan semuanya. Hanya tergantung kebutuhan saja.
DAFTAR PUSTAKA
1. Langmore. I, Krasner Daniel.
2. https://id.wikipedia.org/wiki/Hirarki_memori
3. https://openbigdata.wordpress.com/2014/08/26/big-data-dengan-hadoop/
3. https://openbigdata.wordpress.com/2014/08/26/big-data-dengan-hadoop/
0 Response to "Ian Langmore Dan David Krasner Dalam Buku Applied Data Science/Penerapan Ilmu Pengetahuan Ihwal Data Science Catatan Secara Lengkap"
Posting Komentar