Archive for October, 2011

Defying the Odds: Setting up Oracle NoSQL DB on MAC, using VMs for replication


I have a Macbook Pro, 2010 Model with 8GB of RAM. While reading the Admin Guide for the Oracle BigData release, it says that only linux and Solaris OSes are supported for now. I hissed and went ahead anyway. Next It said I shouldn’t setup multiple nodes using a Virtual Machine, another hiss.

The reason why I hissed was I was pissed, why Linux and Solaris, and now I couldn’t use VM? I went back to the Guide to see why, but the reasons given wasn’t convincing, so I went ahead and started the deployment on my mac. My disobedience paid off, not only did it work on a Mac, I was able to setup other Nodes using VM running on the same Box.

I have two VMs running headless. The type of Networking is Bridged. I have a wireless router that also has ethernet port, I hooked my Mac up on both the wireless and the LAN. I use the LAN for the Brigded networking on the VMs and the WIFI for my MAC.

This is all the setup you will need. Note that of you have read the Admin guide, you will see things like node1, node2 etc used to name the systems on which the different instances of the NoSQL DB is running, to avoid having to go into naming and hosts file and that, we will just use the IP addresses, they also work.

I am going to assume that my MAC ip address is 192.168.1.4, and the VMs are 192.168.1.5 and 192.168.1.6 respectively.

After installing the NoSQL DB on all three machines (My MAC and the two VMs.), I run the below commands in the same directory as where the NoSQL DB is installed.

mkdir Data
./bin/kvctl makebootconfig -root Data -port 5000 -admin 5001 -host 192.168.1.[4,5 or 6] -harange 5010,5020
./bin/kvctl start -host 192.168.1.[4,5 or 6] -root Data

The above will create a config in /Data and start the NoSQL DB.

Next, you need to run the below command on 192.168.1.4 only

./bin/kvctl runadmin -port 5000 -host 192.168.1.4 -script script.plan.txt

The content of script.plan.txt is

configure mystore
plan -execute -name "Deploy Boston DC" deploy-datacenter "Boston" "Savvis"
plan -execute -name "Deploy Node1" deploy-sn 1 192.168.1.4 5000
plan -execute -name "Deploy Admin" deploy-admin 1 5001
addpool BostonPool
joinpool BostonPool 1
plan -execute -name "Deploy Node2" deploy-sn 1 192.168.1.5 5000
joinpool BostonPool 2
plan -execute -name "Deploy Node3" deploy-sn 1 192.168.1.6 5000
joinpool BostonPool 3
plan -execute -name "Deploy the Store" deploy-store BostonPool 3 300
quit

If all went well, visit 192.168.1.4:5001 from you browser and click on topology.

For a description of the commands in the script.plan.txt see the Adming Guide.

Comments (1)

And the winner is….Netbeans!!!


I am one of those developers that started writing Java using a Notepad. I later switched to Edit, a windows command line program because it has better indentation. I have developed some complex UI without the help of mattise. The earliest one I can imagine is a Telephone Number Pad, and an Engineering Drawing Desktop App. This was around the same time that Visual Basic 6 (VB) was the predominant way to write apps for Windows. I was easily the brunt of many jokes from my other classmates who chose to code in VB. They call me a code addict. I didn’t have to write Java, I was just opinionated and maybe stubborn. Java was difficult to write then, especially for Desktop apps compared to ease of drag and drop you get with VB. But I also have a bigger picture in mind. The textbooks I have read said Java is the future. Your Java code can run on anything that has a Memory and a Micro-processor, that for me was the big winner.

My first attempt at using an IDE was KAWA, It was heaven. After a bit of tinkering here and there, I can finally get code completion to work. And the code completion has javadocs embedded. It was fun. I loved KAWA, but I knew I needed more. I tried several other IDEs and Editors, but KAWA was the clear winner then. At least until I met JBuilder.

JBuilder was the hallmark of my programming career. At last I can get syntax coloration, code completion, javadocs, on the fly error checking (unlike KAWA, I still have to compile to see errors), etc etc. I can even set it up for JavaME, which then didn’t have any integration with any IDE. At last I wasn’t the brunt of those jokes anymore. I now have a worthy IDE. We found another sucker, a classmate that uses McAfee Antivirus. We usually taunt him that McAfee can catch itself as a virus if given the proper settings.

A few months later, I was introduced to Netbeans. And a few weeks down the line, eclipse. To be sincere, at this time none of these IDEs can compete with JBuilder, But I have a choice to make, Netbeans, Eclipse or JBuilder. Once again I chose Netbeans. And sincerely, Eclipse was better at this time. Eclipse had more community behind it than Netbeans, and JBuilder was the best of all. What informed my decision was two questions.

  • Who is the custodian of Java?
  • Who made Netbeans?

I saw that one day, there would be new features in Java that only Netbeans will support, at least for a while. I saw that someday, The other IDEs would have to play catchup since Netbeans will always be one step ahead. And that day has come. Netbeans was the first to support Java 7, the first to support Java EE 6, the first to support JavaFX 2.0, and now with Netbeans 7.1 beta, Netbeans is finally one step ahead of all other IDEs. With several features that most IDEs still dream to have, my choice finally made sense.

After JavaOne 2011, I see the other IDEs still playing catchup. JavaFX Roadmap is cool, which will be the first IDE to support the new features? JavaME roadmap is cool, which will be the first IDE to support all the new features? Java 8 is also in the works. There wasn’t even a mention of Oracle JDeveloper in JavaOne, it is a clear message as to the commitment of Oracle to Netbeans. In my mind, I see the IDE wars as being won, at least for another 3 to 4 years.

Comments (10)