Distributed Computing For Businesses?
Meostro asks: "I've run several distributed computing clients in the past, and it felt nice to contribute to these projects that are saving the world. I recently became the admin of my company's branch datacenter, so my access to computing power has gone from 4 assorted boxes up to 20 servers and around 400 desktops. My ambition has grown by equal bounds, so I want to do some distributed processing on at least a few of these. We do food warehousing and distribution, so there's no protein folding, DSP or weather modelling work that would significantly contribute to our business. I've done some simple work with optimizing routes for our trucks, but our business doesn't seem to present many other problems that require lots of processing. What are some good business-specific tasks you have used distributed or grid computing to work through?"
Look, I understand your impulse -- I really do. But you've been given a responsibility so put your energy into carrying it out as fully as possible. You're supposed to be contributing to your employer's business, not digging around in a new box of toys and introducing new points of failure.
It's silly to waste time optimizing something that dosn't require it. If there is no need you can think of for using distributed processing why bother? The key is simplicity. Robustness stems from simplicity. The more unneccesary things you add to the system, the more break points you have. Do you really want to spend all day trouble shooting a problem which is cause by something that's not needed in the first place? If you feel the need to waste time read slashdot and maybe do some coding.
What are some good business-specific tasks you have used distributed or grid computing to work through?
I put our servers to work to find out what the most optimized route would be for me to take to sneak out of work early.
The only problem was there seemed to be some "quirk" in the software that kept suggesting to walk by the bosses door.
Once I get that fixed, I'll be on easy street.
Error: Sig not found.
On the 1 hand I agree with the above poster.
On the other hand, there may be something that fits your bill. But if you don't see it yet, just wait, get to know the business better, and keep your eye on all requirements documents, purchase requests, and so forth. Listen in on gripe and bluesky sessions. If it's coming, and you're plugged in and paying attention, you'll recognize the opportunity when it arrives.
Distributed computing is not free.
Compute the power costs of what you are proposing.
Knowingly wasting that sort of money is often a firing offense; at the scales you quote, we're easily talking hundreds a month and it may well exceed your personal salary. Not a great way to ensure you have a job tomorrow.
The only time I've used distributed computing for legitimate purposes was using distcc for compiling across multiple machines.
This only works if you're a software shop though ..
I have a close friend that is in the food shipping business.
She's said that her first job was trying to optimize the amount of stock in the warehouse at any given point, given that stock (in this case, frozen potatoes, hash browns, etc.) goes bad if stored too long. Yet, if they don't have supply, they miss out on tremoundous money making opportunities.
The problems would seem to be (at least with her work, and you can comment about how applicable this is to your situation):
1. Warehouse supply chain - prediction of needs;
2. Given several warehouses, where to move stock given disparate and sporadic ordering;
3. As you mentioned, routing trucks and how much they carry;
4. tracking unethical short-shipments (where the invoice says they shipped 12 cartons but they only really shipped 11);
5. tracking ethical short-shipments (where you order 12 and only get 11 and are properly invoiced for 11);
6. tracking suppliers on-time percentages, trucker's reliabilities, speeds, and costs;
7. doing predictive modeling of demand cycles given inputs of time of year, price of raw product, going rate (sales price) (and thus profit margin), availability of trucking and rail, etc.
This kind of stuff is why Walmart is huge (no flames on them being evil here, this is just a comment on their technial prowess in supply chain management). If you want to be successful, keep track of everything and run some queries to see what you could do to improve.
Unitarian Church: Freethinkers Congregate!
1) Optimization of goods warehouse layout, use to ensure that the fastest moving stock is the easiest to get at.
2) Optimization of shipping times. If this is done right then you will get either the slowest trucks or the trucks with the greatest loads out the door first.
3) Work out the most efficient use of your loading bay(s). If movement space is limited in your loading yard then this could be a problem.
4) Examine stock levels with reference to as many external factors as you can. If it's always cold in May in your part of the world then you don't want to be stocking up on popsicles. Also, examine stock levels with reference to annual local or international events and festivals.
5) Report generation (the bean-counters always love their reports). If a report takes thirty minutes to generate on your existing system then consider re-optimizing the code for running on a cluster and see if you can get the time down.
Ed Almos
Budapest, Hungary
The more corrupt the state, the more numerous the laws. - Tacitus, 56-120 A.D.