Kasun Weranga-2 wrote > On Thu, May 2, 2013 at 11:50 AM, Tharindu Mathew <
> tharindu@ > > wrote: > >> If we store event definitions in mongoDB or HBase, will this work? I >> believe that is our future todos, so we shouldn't get bound to Cassandra >> specific ways of doing it... > > > We can use eventStoreSpecificParameters section to send the event store > specific things and relevant data-bridge persistence layer should do the > relevant task based on the event store and the parameters. +1. For MongoDB, eventStoreSpecificParameters section would have to support several different options of indexing available in MangoDB: http://docs.mongodb.org/manual/core/indexes/ For HBase, it seems (Secondary) Indexes are not supported out of the box. http://hbase.apache.org/book/secondary.indexes.html *From here on the comments are about index-support in general, not about 'eventStoreSpecificParameters'. Apologies, if they are out of place on this thread. So HBase indexes seem equivalent to 'Custom Indexes' in Cassandra; required to support 'filtering/sorting' on columns with high-cardinality e.g. time-range. Since Big data ought to be time-bound, 'time-range' becomes de facto requirement for filtering and sorting. So with Cassandra, we are required to write Hive scripts (and purge task) to maintain (Create and Purge) these Custom Indexes. I believe, BAM should also support such 'custom indexes' out of the box as it would be a great help to the end user and huge value proposition in general. This is going to be my next feature request :) Thanks, Dipesh Kasun Weranga-2 wrote > ... > ... > ... > >>>>>>>> We can achieve this by using following format in the stream >>>>>>>> definition. >>>>>>>> >>>>>>>> { >>>>>>>> 'name':'org.wso2.bam.phone.retail.store.kpi', >>>>>>>> 'version':'1.0.0', >>>>>>>> 'nickName': 'Phone_Retail_Shop', >>>>>>>> 'description': 'Phone Sales', >>>>>>>> 'eventStoreSpecificParameters' :[ >>>>>>>> {'indexes':'payload_user,payload_brand'} ], >>>>>>>> 'metaData':[ >>>>>>>> {'name':'clientType','type':'STRING'} >>>>>>>> ], >>>>>>>> 'payloadData':[ >>>>>>>> {'name':'brand','type':'STRING'}, >>>>>>>> {'name':'quantity','type':'INT'}, >>>>>>>> {'name':'total','type':'INT'}, >>>>>>>> {'name':'user','type':'STRING'} >>>>>>>> ] >>>>>>>> } >>>>>>>> >>>>>>>> >>>>>>>> In the eventStoreSpecificParameters we can define the parameters >>>>>>>> which are specific for that particular event store, so relevant >>>>>>>> event >>>>>>>> persistence implementation can use these parameters to achieve the >>>>>>>> required >>>>>>>> functionalities. Also we can make this as and optional parameter, >>>>>>>> so >>>>>>>> everyone don't need to define this. >>>>>>>> >>>>>>>> Since we are planing to support different event stores in future, I >>>>>>>> hope this will be useful feature for other event stores too. -- View this message in context: http://wso2-oxygen-tank.10903.n7.nabble.com/Defining-event-store-specific-parameters-via-stream-definition-tp75961p77875.html Sent from the WSO2 Architecture mailing list archive at Nabble.com. _______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
