Hi All, I am new to KDB.Just want to know if distributed storage is possible in KDB, like the one we have Cassandra. A desired number of replications has to be maintained over a cluster of nodes. If possible, could you please provide some reference links. Thanks for your help
here http://code.kx.com/wiki/Cookbook#IPC are some links to info on IPC.
communication between kdb+ processes is clean and easy - what you can do on one host, you can do on another host (q process) using a local client (q process or your own hand-rolled client in Java, C, HTML5..).
you indicate you might replicate all data across all hosts which should make it easy to use load balancing to route queries to least loaded host: http://code.kx.com/wiki/Cookbook/LoadBalancing
you might also be interested in http://code.kx.com/wiki/Cookbook#kdb.2B_dealing_with_big_data
It depends what you want to replicate and this is a pretty big question too…
replication/recovery, whatever you want to call it for rdbs is usually done via tp logs. In my plant for example, we run hot-hot rdbs, and a load balancer/gateway connecting to both. When one falls over it is restarted immediately and replays all the tp logs until it is up to date.
hdb replication can be as simple as multiple q processes all loading in the one hdb directory.
for direct replication at the q process level you have http://code.kx.com/wiki/Cookbook/Logging utilising the -r cmd line option
and then to execute things in a parallel fashion over the nodes … http://code.kx.com/wiki/Reference/peach#Peach\_using\_multiple\_processes\_.28Distributed\_each.29
Let us know how you get on - q over a cluster is so simple yet so powerful, and welcome to the community!
Sean
Thanks for your answers, Let me check these link.