With all the media attention on big data and what part Hadoop plays in it, I thought that I would return to basics and blog about real-world Hadoop from a developer’s perspective. This is not about flume, falcon, impala, ambari, oozie, or sqoop. This is a story about a developer, a weekend, some data, and [...]
It is fairly easy to embed Lucene into your application at the service layer. This approach can add high performance keyword based search capability to your application.
This story starts long ago with a Model Driven Software Development system that I wrote. The generated server side Java code used JDBC to access data in a database. Later on, I provided support for Cassandra, Amazon SimpleDB, and Solr by writing JDBC connectors for those NoSQL data stores. It was nothing fancy. I subclassed [...]
Lucene/Solr is a full featured search engine and it is rare to need to extend its search capabilities. If you do find yourself needing something not available in vanilla Solr, then functions, request handlers, and search components are three basic ways to extend Solr with your own custom Java code to handle special search requirements.
If you are considering the development of a MDSD system, then avoid making some costly mistakes by learning these ten lessons that I learned when I wrote a MDSD system that generates web 2.0 apps based on Google Closure and XMPP. If you can keep it simple, keep it useful, provide an editor, provide importers, generate clean code, automate the entire build process, and decouple both GUI and data store, then you’ll have a really cool tool.
If you are the software architect for a proposed web 2.0 application and there is a mandate for social or real-time features, then consider using XMPP as a replacement for AJAX.
Although you need Big Data to effectively implement a large scale social media solution, Hadoop is not always the right tool. This implementation description details how to use Solr/Lucene as a NoSql solution to meet the near real-time Big Data needs of a social news feed.
Tigase is a highly customizable XMPP server that provides an excellent, scalable platform for real-time communications that is easy to extend to meet your specific needs. There are over seventy different ways in which you can extend or enhance chat server functionality in Tigase but I am going to cover just the top ten here.
Which format should this information get stored as and how should the information get read in and parsed? What are the informational complexity needs of the configuration?
With online collaboration such as Google Apps, the users get no clear clues as to who to authoring now. There is a chat area where participants can discuss the content but it does not directly become the content itself. With CCM, the content authoring medium is basically a chat room. People discuss the topic and a chat reporter records the conversations then distills it down to an actionable summary.