proposal proyek: mongodb driver

Proyek terbuka oleh komunitas Pascal Indonesia

proposal proyek: mongodb driver

Postby pebbie » 12 Jun 2010, 15:21

Salam,

terinspirasi dari proyek om bee :D

hari ini, saya baru aja buat proyek buat bikin driver mongodb untuk delphi (pengennya bisa buat FreePascal juga sih). Baru dimulai dengan membuat kelas untuk read/write file dengan format BSON (binary JSON).

cekidot :angel:
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

RE: proposal proyek: mongodb driver

Postby bee » 12 Jun 2010, 16:36

Keren! Sip! Selamat buat pebbie. Ayo, siapa yg tertarik bergabung dgn proyek ini? ;)

Kalo kodingnya murni pascal dgn acuan language feature Delphi 7 dan tidak memanfaatkan fungsi2 OS spesifik, porting ke FPC bukan hal yg sulit kok. Santai aja. Ntar aku bantu2 untuk testingnya deh. Mungkin bisa dijelaskan juga kenapa milih mongodb, pertimbangannya apa aja, kebutuhan skill volunteer-nya harus gimana, dlsb. Kira2 seperti apa yg aku jelaskan di proyek sebelah. Ini biar temen2 yg lain bisa mengukur kemampuan diri untuk bergabung dgn proyek ini.

Ayo tunjukkan kemampuan developer pascal/delphi Indonesia pada dunia bahwa negara ini gak cuman terkenal dgn korupsinya, tapi juga developer yg jago2. Tetap semangat! :D
bee
Member
 
Posts: 175
Joined: 12 May 2010, 14:15

RE: proposal proyek: mongodb driver

Postby pebbie » 12 Jun 2010, 17:58

Thx bee! :D

sip lah, nanti kalo tanya-tanya lagi bwt FPC. (barusan ngedit dikit dan berhasil compile di fpc2.2.4 di win32 :D)

kalau penjelasan awalnya kira-kira begini :
mongodb adalah salah satu dbms yang bersifat non-relasional (noSQL). mongodb document-based, jadi tiap record bisa dianggap dokumen JSON (hashtable/dictionary). klo di delphi gw sering pake TStrings dan turunannya TStringList dan THashedStringList, termasuk TINIFiles :D. selama ini juga kalo database gw lebih sering pake csv karena kolomnya bebas (tanpa harus spesifikasi tipe data secara baku)

jadi bwt gw pribadi sih lumayan cocok bwt coba-coba. baru berhasil setup dan dicoba akses via python dan PHP tapi sayangnya belum ada driver untuk delphi. jadi sekalian belajar bikin driver database (siapa tau besok-besok pengen bikin dbms sendiri). :)

persyaratan tim:
- pascal/delphi programmer. saat ini dibutuhkan kalo bisa yang pengalaman dalam pemrograman jaringan. biar aku dulu yang tangani masalah format BSON-nya. kalo drivernya udah selesai, mau bikin aplikasi bwt administrasi juga (mungkin bisa juga dibuat paralel kalo memang berminat).

acuan:
- silakan baca dokumentasi di situs mongodb dan intip kode untuk driver bahasa lain (C, Python, JAVA, C#, dll)

tool yang digunakan:
- saat ini masih delphi 7 (silakan coba untuk delphi versi lainnya)

masalah organisasi tim sampai sekarang sepertinya masih bebas aja. bagi yang berminat bisa langsung membalas di thread ini. bagi yang menulis kode silakan tulis di sini saja dulu. baru nanti ditambahkan di code comitter & contributor :)

bagi yang berminat juga diskusi tentang basis data non-relasional bisa juga join milis id-nosql di http://groups.google.com/group/id-nosql
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

RE: proposal proyek: mongodb driver

Postby pebbie » 13 Jun 2010, 00:01

bee, gimana caranya untuk implementasi protokol TCP supaya kompatibel sama FPC. barusan gw lihat, di delphi dah ada TTcpClient sedangkan di FP adanya langsung ke fungsi fpsocket. mending gimana ya?
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

RE: proposal proyek: mongodb driver

Postby bee » 13 Jun 2010, 09:47

@pebbie: Di FPC, ada fcl-net. Sementara isinya baru raw socket sama TCP. fcl-net memang tujuannya untuk menyediakan basic akses socket dan TCP yg cross platform untuk dikembangkan lebih lanjut. Kalo mau yg fiturnya lebih lengkap (support protokol komunikasi terapan seperti HTTP, FTP, dlsb) bisa menggunakan lNet (ini kalo gak salah berbasis fcl-net) atau Synapse (ini full custom library). Kalo library-nya mau kompatibel FPC dan Delphi, saran saya gunakan Synapse saja, soalnya Synapse ini juga mendukung Delphi. Sedangkan lNet hanya mendukung FPC/Lazarus saja.
bee
Member
 
Posts: 175
Joined: 12 May 2010, 14:15

RE: proposal proyek: mongodb driver

Postby pebbie » 13 Jun 2010, 10:21

hmm, synapse kayaknya asik. simple, downloaded. protokol mongodb juga tampak cukup sederhana cuma send-receive tcp message aja. sip! thx bee!
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

RE: proposal proyek: mongodb driver

Postby D.E » 16 Jun 2010, 11:18

@pebbie: mongodb suitable utk keperluan apa bro?
:idea: Dude, if you don't understand the basics and just want to get someone else write the code for you, it means you really shouldn't study computer science. Find different field!
User avatar
D.E
Senior Member
 
Posts: 638
Joined: 04 May 2010, 18:12

RE: proposal proyek: mongodb driver

Postby pebbie » 17 Jun 2010, 21:38

@DE: bwt nyimpen data bro! :D hehehe.. mongodb document-based (JSON) jadi nyimpen record yang berbasis JSON. bedanya sama relasional kalo berdasarkan apa yang pernah gw alami (dengan relasional), mongodb bisa nyimpen data hierarki di satu record, mapping dari OO lebih natural (CMIIW), dan bisa punya banyak field, tapi hanya diisi kalo emang ada datanya.

--
update project:
- perbaikan klas untuk dokumen BSON
- implementasi sebagian driver (baru find dan find_one, insert dah berhasil tapi belum dimasukin ke driver baru di kode coba-coba)
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

RE: proposal proyek: mongodb driver

Postby D.E » 18 Jun 2010, 10:45

@pebbie:
Kenapa ngga' pake DB konvensional dng struktur table sbb:
1. DOC_ID
2. DOC (BLOB)

Isinya adalah Json / BJson :p[hr]
Adakah penjelasan lain kenapa bikin behavior baru?
:idea: Dude, if you don't understand the basics and just want to get someone else write the code for you, it means you really shouldn't study computer science. Find different field!
User avatar
D.E
Senior Member
 
Posts: 638
Joined: 04 May 2010, 18:12

RE: proposal proyek: mongodb driver

Postby pebbie » 18 Jun 2010, 13:44

DelphiExpert wrote:@pebbie:
Kenapa ngga' pake DB konvensional dng struktur table sbb:
1. DOC_ID
2. DOC (BLOB)

Isinya adalah Json / BJson :p[hr]
Adakah penjelasan lain kenapa bikin behavior baru?

klo gitu gimana mau kueri pake field yang ada di dokumen JSON-nya?
pebbie
Junior Member
 
Posts: 32
Joined: 12 May 2010, 15:50

Next

Who is online

Users browsing this forum: No registered users and 1 guest

cron