When we are talking about JPA2 we usualy imaging relation database and one of ORM (Hibernate or EclipseLink). However, JPA is general approach not only for relation system. It covers NoSQL as well. And one of wonderful JPA implementation oriented on non-relation databases is Kundera.
Initially Kundera was developed for Cassandra. It seems to be a good idea, if you don't use relation you don't have the main problem of different ORM frameworks:) HBase was the next database supported by Kundera, and now is the time for MongoDB
Also, support for relation schema was anonced! Awesome! Be honest, I don't believe the it'll work well. Otherwise we'll get power competitor to Hibernate and K.
But, Kundera is awesome one to creating prototype, when you need base CRUD operations and just to want to try you application with Cassandra, HBase or MongoDB. The beautiful parts is possibility to write JPQL queries instead of native database structures.
Let's figure out how we can use Kundera with MongoDb... Mongo JPA
середа, 6 лютого 2013 р.
середа, 23 січня 2013 р.
who has stolen my CPU?
A week ago I bumped into issue w/ AWS CloudWatch. Originally, my load was about 50% and I set CloudWatch to notify me when average CPU utilization > 90% for 5 minutes. And a week ago I got several alert! I was really surprised when recognized that load is more 90% for a long time.
Nothing was changed in application configuration or real load... so, I started investigation. AWS status shows all services operating normally
But the biggest surprise: according to "top" load was less than 10%!
Now I have this load on regular base, for example
(click to view big image)
Nothing was changed in application configuration or real load... so, I started investigation. AWS status shows all services operating normally
But the biggest surprise: according to "top" load was less than 10%!
Now I have this load on regular base, for example
(click to view big image)
середа, 26 грудня 2012 р.
surprise in Hadoop log
When I started working with Hadoop I was confused by next message in logs:
It was Hadoop 1.0.3 and I didn't understand "what am I doing wrong?". It was just the newest Hadoop and I didn't find more information in Google, So, I was need to check source code... surprise! Look at it (line 4!):
I can't believe they always log exception... strange way to get stack trace? maybe...
DEBUG conf.Configuration: java.io.IOException: config(config) at org.apache.hadoop.conf.Configuration.<init>(Configuration.java:225) at org.apache.hadoop.mapred.JobConf.<init>(JobConf.java:183)
It was Hadoop 1.0.3 and I didn't understand "what am I doing wrong?". It was just the newest Hadoop and I didn't find more information in Google, So, I was need to check source code... surprise! Look at it (line 4!):
public Configuration(boolean loadDefaults) { this.loadDefaults = loadDefaults; if (LOG.isDebugEnabled()) { LOG.debug(StringUtils.stringifyException(new IOException("config()"))); } synchronized(Configuration.class) { REGISTRY.put(this, null); } this.storeResource = false; }
I can't believe they always log exception... strange way to get stack trace? maybe...
вівторок, 18 грудня 2012 р.
In memorize: REGEXP
The best online java regexp tester http://www.regexplanet.com/advanced/java/index.html
середа, 12 грудня 2012 р.
Raspberry Pi cluster for hadoop?
I just thought "Raspberry Pi cluster for hadoop?" Is it possible? does it makes any sense?
Let's think... Hadoop uses hard-drive very-very intensive. Memory.. it's good too have enough memory, but it doesn't critical; I believe 512 MB will be enough. CPU... depends on your code, but usual it's not critical point for map-reduce in general
So, with Raspberry Pi you get (just for $35!):
Some time ago there was the nice article about Paspbery Pi supercomputer: 64 Raspberry Pi computers were connected into the one cluster (via Ethernet); each has 16 GB SD card and it means 1 TB storage for whle cluster (!), and costs about $4000
One concern: access speed to SD card. It isn't good enough and you will need to buy external SSD hard-drive. I assume each Raspberry Pi has to have own SSD (32-64 GB must be enough). So, this solution will be a more expensive that $4000, but cheapest than whole PC or cloud instances.
Let's try to calculate: 64 Raspberry Pi * $35 = 2240, SSD 64 GB * 64 = 4TB costs $4500, whole solution will cost $6500-$7000 for 64 physical node:)
So, does is make sense to build hadoop-oriented cluster? I believe so, what do you think?
At least, it will be a great experiment!
PS. Maybe someone wants to donate money for this experiment? kickstarter sounds resonable here
Let's think... Hadoop uses hard-drive very-very intensive. Memory.. it's good too have enough memory, but it doesn't critical; I believe 512 MB will be enough. CPU... depends on your code, but usual it's not critical point for map-reduce in general
So, with Raspberry Pi you get (just for $35!):
- RAM 512 MB
- CPU ARM11 700 MHz
- SD with Linux 4-16 GB (you will need to buy it separately)
Some time ago there was the nice article about Paspbery Pi supercomputer: 64 Raspberry Pi computers were connected into the one cluster (via Ethernet); each has 16 GB SD card and it means 1 TB storage for whle cluster (!), and costs about $4000
One concern: access speed to SD card. It isn't good enough and you will need to buy external SSD hard-drive. I assume each Raspberry Pi has to have own SSD (32-64 GB must be enough). So, this solution will be a more expensive that $4000, but cheapest than whole PC or cloud instances.
Let's try to calculate: 64 Raspberry Pi * $35 = 2240, SSD 64 GB * 64 = 4TB costs $4500, whole solution will cost $6500-$7000 for 64 physical node:)
So, does is make sense to build hadoop-oriented cluster? I believe so, what do you think?
At least, it will be a great experiment!
PS. Maybe someone wants to donate money for this experiment? kickstarter sounds resonable here
середа, 21 листопада 2012 р.
Project management: communications in distributed team
During my working experience I had working on several projects in distributed team or I had just communication with customer. The first type of collaboration is typical for out-staffing and some kind of product companies (do you remember "Rework"?), the second type is typical for outsourcing companies and some kind of product companies.
As you know the one of the most important factors in distributed team is communication. Communication is really important for team in general, and the main challenge of communications in distributed teams is a question: how to organize high-quality communication inside distributed team? The friendship in a team is important, how can we reach it in a distributed team?
As you know the one of the most important factors in distributed team is communication. Communication is really important for team in general, and the main challenge of communications in distributed teams is a question: how to organize high-quality communication inside distributed team? The friendship in a team is important, how can we reach it in a distributed team?
субота, 17 листопада 2012 р.
Fix microphone problem in Ubuntu
I'm using Ubuntu/Kubuntu on a Dell laptop, and it doesn't seem to recognize my headset's microphone. What can I do?
It was the question that was worried me for a last week. Actually, my microphone stopped working suddenly on the previous weekends. And my microphone didn't work in Skype nor Gtalk, it was awful!
I was looking for solution for a several hours and found it just a seconds ago! Hopefully it was described here http://preprocess.me/skype-microphone-does-not-work-on-ubuntu-heres-a-fix for Ubuntu (Ideal works under Kubuntu too)
Just main steps (to me in the future):
It was the question that was worried me for a last week. Actually, my microphone stopped working suddenly on the previous weekends. And my microphone didn't work in Skype nor Gtalk, it was awful!
I was looking for solution for a several hours and found it just a seconds ago! Hopefully it was described here http://preprocess.me/skype-microphone-does-not-work-on-ubuntu-heres-a-fix for Ubuntu (Ideal works under Kubuntu too)
Just main steps (to me in the future):
- Run alsamixer
- Go to Capture devices
- Select capture device (I had two) and highlight it; then pres space to enable - you capture device must be highlighted in Red "Capture" label
Підписатися на:
Дописи (Atom)
