Archive

Archive for the ‘MySipisis’ Category

MySipisis Pro with NoSQL Database

Sejak tahun 1985 data bibliografis perpustakaan di Indonesia dan kebanyakan negara berkembang disimpan menggunakan flat file, non-relasional database yaitu CDS/ISIS.  Sejak tahun 1990an, Perpustakaan IPB mempelopori penggunaan CDS/ISIS dan menjadi trend setter aplikasi perpustakaan di Indonesia. Kalau ibarat politik, kala itu kunginisasi maka dunia perpustakaan di-sipisis-isasi oleh tim otomasi perpustakaan IPB. Sampai muncul anekdot, sipisis keliling nusantara menggunakan pesawat Sipisis Air.  Heleh, kembali ke database.

Berdekade-dekade (dua dekade), ISIS (CDS.ISIS) digunakan sebagai database di dunia perpustakaan dan ketika memasuki era akhir 90, mulai bermunculan database MySQL seiring dengan keilmuan komputer yang membawa RDBMS (Relational Database Management System) sebagai pakem pembuatan aplikasi yang menggunakan database. MySQL, PostgreSQL, Oracle, SQL Server, MS Access adalah beberapa dari sekian banyak RDBMS. Konsep relational dan ACID-itynya dianggap mampu mempertahankan konsistensi dan integritas data yang menjadi kiblat utama konsep relational database.

Di tahun 2009 Eric Evans mengenalkan kembali istilah NoSQL yang sebenarnya sudah muncul sejak 1998. Nampaknya ini membawa angin segar bagi dunia perpustakaan setelah CDS/ISIS ditinggal oleh pembuatnya Giampaolo Del Bigio untuk selama-lamanya (meninggal tahun 1997) dan pengembangannya mandeg. CDS/ISIS dan NoSQL mempunyai kimiripan dalam hal non-relational databasenya dan document-oriented database. NoSQL menjadi booming setelah Google menggunakan BigTable, Facebook menggunakan Cassandra, Amazon menggunakan Dynamo, Apache mengeluarkan CouchDB, dan MySIPISIS menggunakan NoSQL (yang terakhir ini bercanda).

Berikut kutipan salah satu artikel yang mendiskusikan NoSQL bakal cocok untuk digunakan sebagai pangkalan data bibliografis perpustakaan:

For decades bibliographic data has been stored in non-relational databases, and thousands of libraries in developing countries still use ISIS databases to run their OPACs. Fast forward to 2010 and the NoSQL movement has shown that non-relational databases are good enough for Google, Amazon.com and Facebook. Meanwhile, several Open Source NoSQL systems have appeared.

This paper discusses the data model of one class of NoSQL products, semistructured, document-oriented databases exemplified by Apache CouchDB and MongoDB, and why they are well-suited to collective cataloging applications. Also shown are the methods, tools, and scripts used to convert, from ISIS to CouchDB, bibliographic records of LILACS, a key Latin American and Caribbean health sciences index operated by the Pan-American Health Organization.

by Luciano G. Ramalho

Sejak kemunculan NoSQL, Sipisis sebenarnya sudah tertarik dan baru awal tahun ini melakukan experiment dan implementasi penggunaan NoSQL dalam MySIPISIS Pro. Jadi MySIPISIS Pro tersedia dalam dua versi, yakni MySQL dan NoSQL. Ke depan Sipisis juga sedang menyiapkan ASP (Application Service Provider) yang akan menyewakan MySIPISIS Pro online yang tidak membutuhkan instalasi, hardware sendiri, dan maintenance. Sipisis as a Service ini (SaaS) akan saya bahas dalam artikel berikutnya.

Dukungan RFID pada Aplikasi MySipisis Pro

January 20, 2011 Leave a comment

MySipisis Pro adalah aplikasi manajemen perpustakaan turunan ke-3 keluarga Sipisis setelah Sipisis Dos, Sipisis for Windows dan MySipisis (versi web). Sejak tahun 2000 hingga saat ini Sipisis terus berkembang. Perkembangan terakhir adalah dukungan MySipisis Pro pada pemindai RFID.  Dan fitur ini sudah benar-benar diujicobakan menggunakan the real RFID and it works. Rasanya MySipisis merupakan aplikasi perpustakaan pertama buatan anak bangsa yang digunakan untuk mendukng RFID. Sedikit RFID bisa dibaca di wikipedia atau di wikipedia ini.

Selain RFID, fitur lain seperti dukungan union catalog menggunakan standar Z39.50 dan OAI PMH yang memungkinkan perpustakaan-perpustakan saling bertukar data atau saling bisa menelusur dan ditelusur. Di samping banyak fitur baru lainnya.

Saya tidak membahas fitur Z39.50 atau OAI-PMH dulu, saya akan membahas cara menangani input RFID. Awalnya saya berusaha mencari dengan bantuan Om Google bagaimana cara membaca input RFID, apakah benar dugaan saya bahwa RFID itu adalah sekadar pengganti barcode dengan perbedaan pada kecepatan pemrosesannya saja. Ini artinya tidak diperlukan API atau library khusus untuk menghandle-nya.

Setelah cukup lama mencari dan menemukan hal-hal yang tidak jelas mengenai RFID, saya mencari ke YouTube. Ya, YouTube, saya mencari video cara menggunakan/memindai RFID tag. Akhirnya saya menemukan video ini. Dan “bang!!!”, ternyata benar, antarpindaian terdapat pemisah enter key. Dari sini dapat disimpulkan bahwa sebenarnya barcode dan RFID tidak berbeda cara menangani hasil pindaiannya. Mereka hanyalah pengganti keyboard dengan perbedaan: barcode memindai satu per satu dengan jeda antarpindaian cukup lama sementara RFID dapat memindai satu per satu (juga) secara lebih cepat.

Konsekuensi dari perilaku RFID di atas, maka ketika terjadi transaksi pinjam, kembali, atau perpanjangan, 2 atau lebih buku bisa diolah (seolah) bersamaan, karena sebenarnya RFID memindai satu demi satu dengan jeda yang sangat singkat. Sebagai programmer, maka yang kita lakukan adalah bagaimana memproses input tanpa campur tangan operator dapat memproses satu demi satu input dari RFID. Sebagai analogi adalah, kalau barcode itu mengolah sebuah variable biasa (non array) sementara RFID diolah sebagai sebuah variable array atau objek collection yang berisi beberapa item. Dari sini terbayang kan how to cope with RFID.

Nah, bagi yang ingin mengimplementasikan RFID dalam aplikasinya entah itu aplikasi apapun sejenis tracking misalnya, maka RFID is just another keyboard substitution, treat this as a usual keypress event on your input box.