pureScale on Linux
We are currently building nanoclusters in several locations worldwide, including here in Dublin. Somehow the lab guys have come up with a way to get pureScale to work on about $500 worth of hardware! Respect!
The nanocluster is a pureScale cluster built on 3 intel Atom boxes with 1 acting as storage and running the demo software, the other two having one CF and one member on each. Gigabit ethernet is used between the nodes.
The nanoclusters (obviously) do not consist of a supported configuration and are not for production use.
Nanoclusters are a great way to get pureScale out there for demos and for clients, ISVs and partners to try it out for themselves. The cluster comes pre-packaged with demos and instructional software.
If you want to get your hands on one of these little beauties. Please contact your friendly local sales, avalanche teams or me for more information or a demo.
Unfortunately we can't give the nanoclusters out on loan for extended periods but we will also be releasing instructions and code to allow you to build your own.
Watch this space...
We are currently setting up the tpc-c benchmark on the cluster. Tpc-c is the standard benchmark for OnLine Transaction Processing ( http://www.tpc.org/tpcc/ ). We will be doing some test runs on the pureScale cluster and some tuning to see what kind of throughput we can get out of the cluster for typical OLTP workloads . We will start out with 4 nodes first with the default parameters, then start tuning and tweaking. Please let me know if you want to know more?
IBM have today launched pureData, a series of workload optimized database appliances.
This includes pureData for transactions - a workload optimized database appliance for transactional or OLTP workloads. This is (you've guessed it) an expert integrated system featuring B210.1 and the pureScale feature. The box when delivered is ready to go in 4 hours to start data load for tier 1 highly available database requirements. Plug and play pureScale if you like :-) I am very happy to be one of a number of "pureData Champions" who are working with partners and clients to roll this out . I really think this has the potential to change the marketplace. Bring it on!
If you want to find out more or find a pureData champion in your area just give me a shout: email@example.com.
Purescale delivers a high availability, scalable database clustering solution on commodity hardware. PureScale is mainly aimed at OLTP workloads and I believe it delivers on the promise that Oracle RAC has been making for several years and not quite delivering on. It delivers these benefits without the need for applications to be made cluster aware.
I think a lot of companies are looking to their IT to be scalable and flexible these days. Imagine you could buy a small number of commodity servers to run your application(s) on. Then simply add more when you need more resources. Swap servers in easily to help out with the processing load of end of financial year number crunching or the holiday rush on your online store. Pay the licenses fees and running costs when you use extra servers and then easily shut them down and not pay when they are not needed.
I guess this kind of flexibility is (arguably) available as follows:
1) Mainframe with virtualization. This is a great solution for those who have the skill set and budget for it. In my experience many companies are not ready for this. It's also difficult to shut down part of a mainframe!
2) Cloud computing. A great solution if you can "cloud enable" your applications and you trust the cloud service provider (a lot). Again many are not ready for this.
PureScale (especially on Linux / system x as it is available now) can give this kind of flexibility in a much more accessible package.
As part of my job here in Dublin with IBM I'm currently building a 6 node pureScale cluster on systems x with SLES 10. Watch this space for more on this...
...oh yes and please comment if you want to see more.
Today is the day when DB2 10.5 FP4, known as Cancun Release has been published officially!
This DB2 Cancun Release includes many different new features and improvements in differents areas like:
The summary of the enhancements can be found here:
There are some exciting improvements and new features included on the pureScale side, which will make even easier to implement pureScale!
Some of these features are really useful to get started with pureScale like having the possibility to run pureScale using just a basic TCP/IP network or using virtual machines under KVM or VMware ESXi. This is great for who wants to explore pureScale technology just using a basic network or a virtualized environment!
But also, for actual pureScale users, two great enhancements like incremental backups and online REORG will be a huge improvement in terms of system and database maintenance and administration.
If you like me are really looking forward to try all these new features, just go and download the just released DB2 Cancun Release 10.5 FP4 at this link:
Feel free to ask any question or comment you may have on all these new and exciting features for pureScale!
Marco Bonezzi 270005PS6A 1,757 Views
Last week during some performance tests on one of our PureData for Transactions Systems, we were looking at the CPU load for the system during workload execution.
In pureScale you know that the CPU stats from command line tools like top or vmstat could be not accurate to the DB2 member real load. This is due to the Cache Facility (CF) process being colocated to the DB2 member, on the same host. The process for the CF will shows most of the CPU usage even if there is not to worry about this.
To clarify this, we were using a small instance on PureData for Transactions, so 2 members and 2 CFs on two physical hosts.
Back to our CPU load... How can we measure that?
db2top? There are some CPU metrics in db2top, but can show 100% CPU load even if this is not exactly true.
Optim Performance Manager? Yes, we can check the CPU load for the system using OPM, in the Performance - Overview - Key indicators panel. We can also look at Performance - System to get the CPU usage. In PureData for Transactions this is useful as it has Optim Performance Manager already integrated into the management console.
An useful query to check the CPU load from DB2 itself and also valid for pureScale is the following:
select MEMBER, varchar(HOST_NAME,32) as HOST_NAME,
[db2sdin1@compute01 ~]$ db2 "select MEMBER, varchar(HOST_NAME,32) as HOST_NAME,
Other useful information like this can be also gathered using SYSPROC.ENV_GET_SYSTEM_RESOURCES function:
Today I saw that the status of one of our testing pureScale instances was red.
Yes, red, it had a red sign, as this instance is on a PureData System for Transactions. The DB2 pureScale instances panel lets you have a quick look at the status of your instances and the databases deployed on them.
Connecting via ssh to the instance, and trying to run db2instance -list shown that this particular instance was not in a good shape:
db2vr1@compute05:/home/db2vr1> db2instance -list The member, CF, or host information could not be obtained. Verify the cluster manager resources are valid by entering db2cluster -cm -verify -resources. Check the db2diag.log for more information.
Following the tip, I ran db2cluster -cm -verify -resources and it shown that the cluster state was inconsistent. At this point, I had a look at the db2diag.log and I could see that there were some errors related to cluster resources.
After seeing that the issue was due to the cluster resources for pureScale, I decided to try to stop and restart the cluster services with the following commands:
1) Restarting pureScale cluster services
db2vr1@compute05:/home/db2vr1/sqllib/bin> ./db2cluster -cfs -stop -all All specified hosts have been stopped successfully.
db2vr1@compute05:/home/db2vr1/sqllib/bin> ./db2cluster -cfs -start -all All specified hosts have been started successfully.
2) Verifying and repairing the instance
At this point, I tried to verify again the status of the cluster with db2instance command:
db2vr1@compute05:/home/db2vr1/sqllib/bin> db2instance -list The member, CF, or host information could not be obtained. Verify the cluster manager resources are valid by entering db2cluster -cm -verify -resources. Check the db2diag.log for more information.
Now, trying again to repair the cluster resources with the db2cluster command:
db2vr1@compute05:/home/db2vr1/sqllib/bin> db2cluster -cm -repair -resources All cluster configurations have been completed successfully. db2cluster exiting ...
db2vr1@compute05:/home/db2vr1> db2instance -list ID TYPE STATE HOME_HOST CURRENT_HOST ALERT PARTITION_NUMBER LOGICAL_PORT NETNAME -- ---- ----- --------- ------------ ----- ---------------- ------------ ------- 0 MEMBER STOPPED compute05 compute05 NO 0 0 compute05-net1 1 MEMBER STOPPED compute06 compute06 NO 0 0 compute06-net1 128 CF STOPPED compute05 compute05 NO - 0 compute05-net1 129 CF STOPPED compute06 compute06 NO - 0 compute06-net1 HOSTNAME STATE INSTANCE_STOPPED ALERT -------- ----- ---------------- ----- compute06 ACTIVE NO NO compute05 ACTIVE NO NO
3) Starting the instance
So now the pureScale cluster was healthy again, so I was able to finally to start the instance successfully:
db2vr1@compute05:/home/db2vr1> db2start 10/01/2013 13:12:02 0 0 SQL1063N DB2START processing was successful. 10/01/2013 13:12:03 1 0 SQL1063N DB2START processing was successful. SQL1063N DB2START processing was successful.
db2vr1@compute05:/home/db2vr1> db2instance -list
ID TYPE STATE HOME_HOST CURRENT_HOST ALERT PARTITION_NUMBER LOGICAL_PORT NETNAME
-- ---- ----- --------- ------------ ----- ---------------- ------------ -------
0 MEMBER STARTED compute05 compute05 NO 0 0 compute05-net1
1 MEMBER STARTED compute06 compute06 NO 0 0 compute06-net1
128 CF PRIMARY compute05 compute05 NO - 0 compute05-net1
129 CF CATCHUP compute06 compute06 NO - 0 compute06-net1
HOSTNAME STATE INSTANCE_STOPPED ALERT
-------- ----- ---------------- -----
compute06 ACTIVE NO NO
compute05 ACTIVE NO NO
CiaranDeB 2700033FRG 1,435 Views
The more I talk to people about pureSystems the more I think that the old way of provisioning systems is nuts. Do people really need to design a solution, buy various "bits" like storage, networking, servers seperately from different vendors with different support agreements, cable it all up and put a stack of software on there "manually" themselves?
If you went to buy a car and they said you had to do this: figure out what parts you need, then buy the engine from one company, the wheels from another, the chassis from yet another etc and then put it together yourself and hope it all works ok you would think they were crazy, right?
pureSystems the smarter way to buy IT! http://www.ibm.com/ibm/puresystems/us/en/index.html
CiaranDeB 2700033FRG 1,664 Views
I am at the pureSystems booth at the Innovate 2013 conference in Orlando. http://www-01.ibm.com/software/rational/innovate/ This is my first big conference and I have to say I am very impressed by the scale of things! Below a rendering of our setup and we are just a tiny part of this conference!
We have three touchscreen monitors loaded with the TouchScope application. These are pretty cool. We have experts in each of the types of pureSystems at the booth also who can give a great insight into the different types of pureSystems: i.e. pureFlex, PureApp and pureData.
We have heard that a “tens of kilometres” limit applies to the distance between the two sides of a Geographically Dispersed pureScale Cluster (GDPC). Buy why?
This is based on a physical limitation i.e. the speed of light in glass (fibre) which is about 5 µs / km. From this we can calculate a round-trip times from member to CF as follows at these distances:
3km = 30 µs
10km = 100 µs
50 km = 500 µs
100 km = 100 µs (or 1 ms)
300km = 3000 µs (or 3 ms)
This will have a significant effect on the performance of the cluster, especially when we start to get into tens of kilometres. The “normal” times for RDMA actions are of the order of 15 µs so to those we need to add this latency for the distance. Compared to a normal pureScale cluster (all in one location) an RDMA action will be slower at a distance as follows.
3km = 3 times slower
10k = 8 times slower
50k = 33 times slower
100k = 66 times slower
300k = 200 times slower
µs = microseconds or 10-6 seconds
ms = milliseconds or 10-3 seconds