Jens Mueller
2010-Nov-19 12:51 UTC
[Gluster-users] Concepts of Gluster: Block- vs File-based | How does cluster internally work?
Hello Experts, I would be thankfull for an explanation, what concepts are behind gluster? I would like to run a database over gluster. As I have read in wikipedia, running Databases on top of "Block-based Storage Concepts" (like iSCSI) works quite well. However it seems that Gluster is conceptually nearer to the NAS Concept with distributing whole files? However never the less Cluster needs internally also some concepts to provide random file access... Some of my Questions: 1.) When requesting a file, is the whole file retrieved or only a portion of the file? 2.) Are random File accesses supported? 3.) How does cluster internally Workd when the Database (liek MySQL) create a large file and then accesses this file? Does Cluster shomehow operate on a "Block Level"? How will an index-scan be translated in reagards how gluster will access the data on the remote system? I am very thankfull for any information (also links...) that help me to understand how gluster internally handles "file accesses" . (I have reas the "Architecture Document" of Gluster (dont know the exact name, was hosted on some ftp server of gluster) but this document only contains marketing language and does not go indepth...) Thank you very much!! Jens
Amar Tumballi
2010-Nov-25 05:59 UTC
[Gluster-users] Concepts of Gluster: Block- vs File-based | How does cluster internally work?
Hi Jens, Read Inline..> Some of my Questions: > > 1.) When requesting a file, is the whole file retrieved or only a portion > of > the file? >Gluster has 1-1 mapping between client side posix calls to server side posix calls. ie, when a open is called on client mount point, it will be translated to a open on server side (where the file actually resides). Answer for your question will be you will get the portion of file you requested for, and not whole file.> 2.) Are random File accesses supported? >Yes. But, considering scenario in case of Databases, which is, random file accesses with query(read) for very small blocks, network delay and context switch delays involved will make the performance suffer.> 3.) How does cluster internally Workd when the Database (liek MySQL) create > a large file and then accesses this file? Does Cluster shomehow operate on > a > "Block Level"? How will an index-scan be translated in reagards how gluster > will access the data on the remote system? > >As I told in case of 1, Gluster will do 1-1 operation which is done @ the mount point over the server, hence the main issue again will be latency of the network in all these operations.> I am very thankfull for any information (also links...) that help me to > understand how gluster internally handles "file accesses" . > >Lets be clear on what 'file accesses' means. I am taking it as 'read' (considering its a database and there will be lot of queries), but there are multiple system calls which can mean the same with respect to filesystem, like, access(), lookup(), stat(), open()... Regards, Amar