Showing posts with label solaris 10. Show all posts
Showing posts with label solaris 10. Show all posts

Wednesday, March 26, 2008

The Zettabyte File System (ZFS) : no limits

OpenSolaris …(and Solaris 10) implements ZFS filesystem as of c 2005/2006… ZFS is a 128-bit file system... … to give you an idea of the capability limitations of a 128-bit file system (hint: there are none):

-If a billion computers each filled a billion individual file systems per second, the time required to reach the limit of the overall system would be almost 1,000 times the estimated age of the universe.

- Project leader Bonwick said, "Populating 128-bit file systems would exceed the quantum limits of earth-based storage. You couldn't fill a 128-bit storage pool without boiling the oceans."[2] Later he clarified:

Although we'd all like Moore's Law to continue forever, quantum mechanics imposes some fundamental limits on the computation rate and information capacity of any physical device. In particular, it has been shown that 1 kilogram of matter confined to 1 liter of space can perform at most 1051 operations per second on at most 1031 bits of information [see Seth Lloyd, "Ultimate physical limits to computation." Nature 406, 1047-1054 (2000)]. A fully populated 128-bit storage pool would contain 2128 blocks = 2137 bytes = 2140 bits; therefore the minimum mass required to hold the bits would be (2140 bits) / (1031 bits/kg) = 136 billion kg.
To operate at the 1031 bits/kg limit, however, the entire mass of the computer must be in the form of pure energy. By E=mc², the rest energy of 136 billion kg is 1.2x1028 J. The mass of the oceans is about 1.4x1021 kg. It takes about 4,000 J to raise the temperature of 1 kg of water by 1 degree Celsius, and thus about 400,000 J to heat 1 kg of water from freezing to boiling. The latent heat of vaporization adds another 2 million J/kg. Thus the energy required to boil the oceans is about 2.4x106 J/kg * 1.4x1021 kg = 3.4x1027 J. Thus, fully populating a 128-bit storage pool would, literally, require more energy than boiling the oceans.[10]


ZFS read/write libraries are available on Mac OS X Leopard (which ported ZFS to the Mac in 2007)… but it has to be installed by hand from the binaries. Sponsored by Google’s Summer of Code, there is work being done on a port of ZFS to Linux due out in 2008. There have been bugs, but it is used in enterprise offerings and has distinct advantages…

Unix is technically the king.


http://arstechnica.com/articles/paedia/past-present-future-file-systems.ars/8

http://www.sun.com/2004-0914/feature/

(btw, Roy Fielding was/is on the OpenSolaris Community Advisory Board members as of 2005/2006)

Joyent's Cloud offering is enticing

…ZFS… Zpool… Solaris…. Zones……………Joyent is capitalizing on all of it… my Ruby amigos keep me informed (thanks Riggs!)… some of the Joyent plans look sweet, and they also have the ability to more readily hardware load balance (if the need arises eventually), static IP (dynamic IP only with EC2)… non-stateless deployments (EC2 deployments are stateless and a bit patchy having to hook into S3), … Joyent runs all of this off Sun Solaris (lover and dear friend of open source). Can also vertically scale a bit easier if the database needs it.

This might be the route I go with expandable Cloud deployments – the Accelerator instead of the Elastic Compute Cloud… more affordable, and has some other advantages…

http://joyeur.com/2007/06/20/why-ec2-isnt-yet-a-platform-for-normal-web-applications

http://hostingfu.com/article/short-coming-amazon-ec2

Has been about 8-9 mos of research in the making with EC2, and the Joyent stuff looks surprisingly, even better

Monday, February 19, 2007

Solaris 10 Containers (Zones) and Coldfusion MX Licensing

With the Enterprise version of Coldfusion MX 7, a CF developer has the ability to deploy your applications as .EAR files on multiple instances of the JRun application server (or any other J2EE compatible application server, such as BEA WebLogic, IBM Websphere, etc, even open source Tomcat, although that isn't supported by Adobe) . This redundancy enables fault tolerance, which is especially useful in a shared hosting environment . That is, should one instance of the application server fail for 1 application, this would not crash all applications relying on the Coldfusion server. Instead, each application can utilize its own instance of the JRun (or other J2EE) application server.

If you are not familiar with this, the following is a good article, as is Ben Forta's Advanced Coldfusion development book (a veritable CF bible) is a phenomenal reference:
http://www.adobe.com/devnet/coldfusion/j2ee/articles/multiple.html

The J2EE implementation of Coldfusion discussed above exists for really a single shared server environment, as the LICENSE restricts .EAR deployment to a maximum of 2 CPU's. The marketing material is not immediately clear on this, so be aware, that J2EE deployment is unlimited in terms of application server instances, but is limited to TWO CPUs. If I am incorrect on this, someone please provide clarification, but I'm somewhat certain after days of looking into this, that this is the case.

There are still distinct advantages there -- not only the capability for application server redundancy (and clustering), but also the ability to deploy as .EAR files enables the development process to be one that contains a bundled and dated version. While its common and certainly best practice to utilize version control such as CVS and Subversion, it's not common in the Coldfusion community to bundle and deploy applications as .EAR files. This is evidenced by the options available at most Coldfusion hosting sites, which consists mainly of FTP-ing files to your folder. (it should be noted there are small disadvantages to .EAR deployment, if you require frequent small changes to files, but this disadvantage can be significantly nulled out with the use of Apache ANT as a build, zip, ftp, and deploy tool). .EAR file deployment has the distinct process advantage of being able to quickly snap back to dated versions of one's web application instantly. As long as there weren't schema changes to the database, a developer can simply deploy an .EAR file to the application's directory and it will effectively 'unzip' the application and all its dependencies. .EAR file deployment can also be made easy through the use of mature deployment tools such as Apache ANT.

That brings me to my question. As CFMX 7 enterprise enables isolation and redundancy at the application-server level, Solaris 10 has the capability for Containers (aka 'Zones') for isolation and redundancy at the server level itself. The following is a summarized description of Solaris 10 Container capabilities from Sun's website:

  • "Build customized, isolated containers—each with their own IP address, file system, users, and assigned resources—to safely and easily consolidate systems
  • Guarantee sufficient CPU and memory resource allocation to applications while retaining the ability to use idle resources as needed
  • Reserve and allocate a specific CPU or group of CPUs for the exclusive use of the container
  • Automatically recover from potentially catastrophic system problems by leveraging the combined functionality of Predictive Self Healing and Solaris Containers"
My question to Adobe and the Coldfusion MX Community:
How would the implementation of multiple Sun Solaris 10 Containers affect the licensing of Coldfusion MX 7? If a server had 2 CPU's but was configured for multiple Solaris Zones, would the Enterprise License still apply in such a way that enabled unlimited instances of the application server throughout these Zones? Or is each Zone treated separately as a CPU? It would seem to me, since there are two processors, the enterprise license would allow for this type of integration with Solaris 10 Zones, but I cannot find any documentation on this on Adobe's Coldfusion site or in the license. Can anyone at Adobe help clarify this?

Respectfully,
Mark Holton

Coldfusion MX 7 and Sun Solaris 10 for x86 processors

Hopefully this bit of history is a good sign that it's just a matter of time before there is a supported Coldfusion MX 7 install for Sun Solaris 10 on an x86 processor. I know they support it with the SPARC processor, but why not with the newer x86 chips?

Macromedia/Adobe has supported it in the past, hopefully they will in the near future. Anybody know of any plans for this?
-Holts

https://partneradvantage.sun.com/partners/10moves/quotes.html

"Macromedia

Macromedia is committed to supporting the Solaris OS to ensure our ColdFusion developers can continue to deliver mission-critical business applications. Solaris 10 will provide customers with the scalable, reliable platform they need to continue delivering rich Internet applications with the ease of use and productivity of ColdFusion. "

Jeff Whatcott
Vice President of Product Management
Macromedia"