---
title: WWDC2003 Session 627
framework: wwdc
role: article
path: wwdc/wwdc2003-627
---

# WWDC2003 Session 627

## Transcript

Kind: captions Language: en my name is plum go again I'm the director of server software here at Apple in worldwide product marketing and I just want to welcome you all to this session I'm only here briefly basically what we wanted to do was to provide all of you with essentially the the view or the perspective of third parties doing projects enterprise oriented projects on Mac OS 10 and mac OS x server and to give you that sort of perspective on on what we're trying to do here so i'm going to introduce a couple of gentlemen in a moment and we'll talk about a little bit about what they've been doing and then they're going to spend the bulk of this time talking to you about what they've done on mac OS 10 and mac OS 10 server so enterprise applications in a heterogeneous environment that's just too many syllables for me at this point on the line in a day so we'll just skip through this one really quickly so on our agenda today is going to be Infosys and they're going to talk about enterprise IT architecture they've got some customer scenarios and some great examples of things that they've done some really good information around best practices working with the products and and what they're doing and from emphasis and I'm going to read from my notes here because I'm I want to get this right and I'm never great with names so we have omelets f and vomit is the senior technical architect at infosys and he's done a number of IT integration projects and how much going to come up here in a moment and talk to you about what he's done and and how he's done it and show you in depth on how all of that how he's pulled all that together following on it we have steve olson from sybase and I've known Steve for a while actually once we started going down the Mac os10 server right it got talking to him about bringing five aces enterprise-class database server over onto Mac OH and server and and it's been a great relationship he's the technical director at sybase for sybase engineering and Steve actually was in charge of the sybase port to Mac os10 server and and if you followed what sybase is done they literally are in some ways they're driving us they've pushed us to do things that I think would be of interest to a lot of developers and a lot of IT people who are looking at using the platform for example sybase has really done a lot of innovation around the management console and and it's taking advantages of some of the api's that we're starting to make available in the management console for third parties to plug in their information into the management console into server admin so take a look at what they've done it's really exciting stuff they've helped push us in the number of other directions as well in terms of really you know helping us to make mac OS x server really lock when it comes to databases and we've got some new technology going into Panther server things that of course people will generally just skip over very quickly and something like a keynote but they're great interest of people like me things like a sink io going into Panther server which will really really help with database performance so first we're going to have comets F come up and talk to you about emphasis and what they're doing there and then speeds going to come up and talk to you about sybase and and after that there should be a little bit of time for Q&A and let me just make sure I click this it's kind of interesting what you'll learn in this session and I was like but they put these slides in here but basically what we want you to get out of this is we want you to have a chance to take a look at you know what third parties are doing what people are doing with large enterprise class applications on the platform how they're doing it how they're doing it to meet the needs of your typical mixed client mix server enterprise environment how they're deploying and using our technologies to do that so I hope you take away a lot of that good information and get some great ideas about what you can do with your products and you can do inside of your environment so without further ado I'd like you all to provide a nice warm welcome to Elmet set oh hi I'm Alma said representing infosys technologies emphasis is a leading systems integrator with more than 15,000 employees in the last few years Apple has been coming up with some really exciting products in the enterprise state the X of support for open source software the OS 10 server version this has really got us excited and we have been developing some solutions for the using the Apple technologies which we wanted to share with you today in today's session on enterprise applications in heterogeneous environment I'll be talking about from a system integrators perspective what does an enterprise IT architecture look like what are the main components of this architecture and I'll use some examples of applications that we developed for each of these components to showcase how we leverage Apple's technologies in an enterprise heterogeneous environment to provide solutions for some common business problems a few words about emphasis we are more than we have more than 15,000 employees more than 370 clients 35 offices in 15 countries and we are still growing we pioneered the global delivery model and we have our greatest strength has been our ability to deliver project ninety-five percent of the projects that we have delivered have been on time on budget or better we are financially a very very strong company a financial strength has been growing year over year last year we closed our fiscal year with net revenues over 750 million dollars we have cash reserves of over 235 million we have bought we have partnered with some of the leading some of the industry leaders and most of the most of our clients are in the fortune 500 fortune thousand companies let's move on to what is our perspective of an enterprise IT architecture a slightly late on a Friday evening I want to inject some life into this providing some real good insights into why we are dividing this into these kinds of components so when we look at it we are essentially looking at some eight different categories in an enterprise IT architecture these categories are the thick client category the business components business components are the reusable components which can be shared across multiple applications client access services which include the application servers streaming servers web servers and these are this is essentially the layer between the client and the server application security services these determine the authentication the security the user profiles enterprise AP is the programmable interfaces which allow data to be shared across multiple applications within an enterprise or over the Internet bus services allow computing in a distributed computing environment include the domain name services directory services coba com iiop operating system provided services which essentially include input/output services and network services and the last category is the server hardware platform itself which includes the processor hardware for the server so these were the eight categories that I spoke to you about let's move on to our first category that is client solutions now in each of those eight categories that I was talking to you about in this session will touch upon some six of those categories I'll be talking to you about a common business problem in each of this category a solution which we develop leveraging apples technologies to address that problem and how we were able to integrate that solution with other technologies driving the other components in that IT architecture so client solutions are deal with the user interface and include considerations like transactions and securities they include distribution and deployment of software things like the transaction model support for sale transactions confirma tea with the existing IT infrastructure and strategy for development and deployment and distribution are important when we when we need to consider solutions in the space let's take a look at the implementation scenario for a particular solution that we developed in this space the application is a mobile sales application what was the customer situation in this case the customer situation was that they has field sales representatives who already had apples or books there were they did not have any kind of an integration with a central CRM package which was on a different platform which had a different technology they did not have an application to integrate from their power books to the central CRM database and the client was losing business they were at a decision point whether we need to go in and buy a market via products on the market and go in a replace our Apple power books and provide people with the laptops based on other technologies or to continue with them with their carrying the apples for power books and develop some kind of a solution which allows them to leverage the central CRM database that already exists within the organization we identified the business drivers for the solution that needs to be developed in this case as an application that can allow better collaboration between the sales teams and which essentially allows that the solution that the sales representatives are going to use to integrate data with a central CRM enabling better reporting better decision-making for the senior management the solution that we propose was an offline solution that can run on a Macintosh because these are field sales people they are moving around and the ability for this solution to integrate with the central CRM database why did we go in for apples the biggest driver they already had apples / books also objective-c and co qua allowed us to rapidly develop an application to be used by the sales representatives in this company we developed a complete creteil solution to run on their power book we had a client built of objective-c and Coco Pope we are using objective-c a server custom server written in java and we took an open source database that is posed gris sequel database and installed it on their machines then we rode some custom classes to allow them to allow this local server the local Java server running on their machines to exchange data over socket connections with a server running against the central CRM database this essentially allowed data synchronization between their local databases and the central CRM database let's look at the details of the technical implementation so what you see on this side is what was already existing this was their central CRM database hosted in a data center within their organization what we developed was a three-tiered solution the were looking at the choice of databases of the client wanted a cost-effective way to install database it was a database to be used for a single person on a powerbook and we looked at the open source databases that were available the two databases that we zeroed in on were my sequel and poor scree sequence we selected hose grease equal based upon the fact that it had better support for transactions you could do roll back could write functions and at the time when we developed the solution polski sequel was the only database that were open source database which was truly a Unicode compatible when we compared my sequel to this my sequel at that time you could have a Japanese version you could have a Western European version but nothing which allowed you to support everything I believe the latest version of my sequel has does the support Unicode so this was our implementation the server was communicating with a server within the data center and that server was essentially dealing with the database for sending in transactions against the database the solution enabled us to prove that on an OS 10 powerbook you can essentially have all the three components required for an application the client the server and the database all running together and it's been a stable application it's been one of our good implementations let's move on to our second category that's the business component when we talk about the business components we are talking about reusable components which can be shared across multiple applications the when we talk about components that can be shared across multiple applications the things the major considerations in this case are what kind of functions and services do these components offer what kind of interfaces are available those have to be standard interfaces to be implemented across applications and the development and deployment of these components have to be independent of the applications with which they are being linked with let's take a look at a typical implementation scenario for this component the implementation scenario for this component is an automated fax integrated application it's a very easy solution a very simple solution but resolved a big business problem when we came in we saw that the customer situation was it was a large organization with a lot of employees at different geographic locations who essentially used to submit their expense bills for reimbursements they had to fill in a form which was being driven by an application they used to fill in i spent so many dollars in traveling i spent so many dollars in food spend so many dollars and business expenses submit that form and then the original bills had to be mailed to a back office where someone used to look at those bills related to who submitted it check mark on that form yes this is correct and then approve the request this was a manual resource intensive process in that organization and force becoming a big overhead for them so they were essentially looking around for a solution that allows them to automate this task the solution that we proposed was the electronic submission of bills along with their expense detail what made us select Apple in this case what way to select Apple in this case was one it was a low-cost solution it was easy to monitor and maintain and it was extremely easy to integrate this in the existing infrastructure we will take a look into the technical details of how we did this what we did was we took the open source package efax compiled it on Weston we also took imagemagick compiled that on Weston actually Weston's versions are already available on the net for imagemagick efax allows us to receive fax messages the process that we defined was that an employee prints out the extensible form from there from whatever they submitted that expense will form has a bar code printed on top of it they then take the original bills and this form and fax all of them together that fact is received by the electronics the efax and it uses imagemagick to convert that if files to achieve format the tip to Jeff conversion was required for a barcode reader which they already had within their organization or software which could essentially read the barcodes and then we wrote a small custom component which allowed us to submit those forms against those those electronic bills the copies of those electronic bills against the actual form within the application now normally this kind of a solution would have entailed going in for a small for for a small server for a small for a small application it probably I mean we couldn't initially visualize why would they require a really scalable solution in this case and the reason that was provided to us false that this is not the only place where we require a way to electronically associate original documents with our forms in the applications we also require this for a number of other things they said there are certificates which need to be submitted with resumes they came up with a few other things where they were submitting copies of the original documents electronic they wanted those to be submitted electronically and this solution allowed us to do that because essentially that barcode that we were printing on it was a tag which allowed us to route it to any kind of an application to associate it anywhere we implemented it for one application but we left the architecture open for them to go in and implement it later on with any other application that they want to do again in this case the only component that we brought in was an xserve with the electronic fax imagemagick installed on it and just plugged it into their existing IT architecture let's move on to a third component that's the client access services client actual services are essentially the layer between the client and the server the common implementations like web servers streaming servers enterprise application servers where it's an enterprise application servers but with the trend that's going on in the industry it may change to enterprise java application servers it still not enterprise java application servers to the common the thing the common threads between all these are scalability reliability ability to adapt to standards these are the common considerations that have to be thought of when thinking of a solution in this space let's take a look at a an implementation scenario where we went in and implemented a solution in this category what was the client situation in this case the client situation was that the client had a very very big it was a big corporation they had more than 10,000 employees and they had a central human resources application that could be used to buy their employees on their workstations to do all the HR related things writing reviews managers used to write reviews employees used to submit their leave applications the all all the that that was essentially the central HR application within that organization and they had a problem that because this was based on the workstation employees could not use it while they were traveling or while they were they did not have access to the workstations in their offices so they wanted a way to access this information anytime anywhere which essentially pointed out to us that we need to develop a solution which is web-based also another driver in this case like in any organization where we go was this has to be a cost-effective solution so we we thought that we need to reuse as many components as are possible from the existing application now one thing that was that that was unique about this particular HR application was that they had they had been using a lot of custom code in the database so it did not allow you to go in and build something on top of the database directly so could not go in and build a web application and go in an interface with the database directly that was that was an issue in this case and that is why the problem was not as simple as just writing a simple web interface to a database why did we go in for apple in this case we went in for apples technologies was because web objects on Weston provides us with an excellent platform to go in and build web based applications it's also a very cost effective way and allows us to develop applications very rapidly the architecture that we implemented and the solution that we provided allowed us to reuse most of the existing components within this application this is what we did so on your right side you are looking at there the way the application used to exist within their environment they had a enterprise HR database and they had their custom server which was interfacing with this database the custom server did have some did have API is defined to go in and access data but that was it I mean you couldn't do too much going in directly against the database so what did we build what did we do in this case we essentially wrote a small custom layer our own framework which we compiled with the web objects code which allowed us to interface with those ap is and provided a layer between the custom server and the web object server so the web object server was communicating with the custom server in this environment this allowed us to leverage the existing application was a very we could develop this really fast and it allowed us to build a very cost-effective solution we deployed the entire thing on an ex of a single X of and the solution is being used as and when the employees in this company travel outside as and when the employees want to access it from the web more more than 10,000 employees are using this kind of a solution let's move on to our next category that is enterprise API is now enterprise API is our interfaces which essentially allow data sharing between applications in the same organization or over the Internet the major considerations when we have to go in and provide a solution using enterprise API is our we have to consider object persistence we have to consider the transaction services transaction services is essentially the core the data access models and the data distribution services let's take a look at a common implementation scenario in this space the application that we developed in this space was a call center application the client situation when we went in was that the client was losing business because of the lack of a call center solution the current way in which they were tracking calls was they used to receive calls they had a very very rudimentary way of going in and entering it into a database they did have some they did have a proper database but the way they were using that database was in a very very rudimentary fashion they and it initially started with the clan being a small-time company and they grew up rapidly in the space of a few years so the model that they use initially just could not scale up to the kind of requirements that they had in a few years time the business problem that they were facing was that they were losing customers because of their inability to respond back to their calls on time and they wanted to address this the solution that we proposed was a low-cost solution with an ability to support high transaction volumes that were required the ability to scale up even further as this company grew up and the ability for this solution to integrate with multiple data sources why did we think Apple is the best solution in this case Apple was the best solution in this case because it provided us with a server optimized version of Java a low-cost enterprise application deployment alternative with xserve Western server and with jboss compiled on that support for open source technologies like jboss we're essentially the the deciding factors in moving towards this kind of a solution let's take a look at the implementation of how we went in and what we did so on the right side you are looking at what is colored in orange is your existing components that were already existing within this enterprise these were the database with data inside it which was still meaningful but just that it was not it could not really be used or it could not really be leveraged off given their current solution and they had some reporting applications on windows which used to go in directly against that database to come up with some kinds of reports again they're reporting requirements had grown over time and they they were trying to figure out how to enhance their reporting solutions to come up with to come up with a model where they can have better reporting and better call tracking and allowing the management to take speedy decisions so on your left side is what we're looking at the solution that we implemented what we implemented was we took some ebay ejb components pre-built ejb components open source components which are available we wrote some of our own use jboss on weston to host these are custom components allowed us interfacing with the current reporting applications whatever they had it also interfaced with the base we wrote some more components to provide interfaces for even more reporting applications as were being required and made the entire solution such that it could scale up with the growth of this company so essentially putting in this kind of a middle layer of ejb components on an excerpt allowed us to use of the existing reporting applications the existing database and provide a solution in this environment I will move on to our next category which is operating system services operating system services are a set of services in an IT environment which from our perspective hold solutions in the storage and in the distributed computing environment space storage false also under the server platform stage but in our classification we've classified it under the operating system services space the major considerations that we have solutions providers have when we start looking at solutions in this space r is the is the solution really interoperable interoperability is a key in this component what kind of scalability does the solution offer what kind of performance does the solution offer what kind of a security is offered by said the solution that we have to develop in the slip let's take a look at a typical implementation scenario in this case we had this organization where there were multiple clients on different platforms they wanted to share files across platforms and these were large size files this is a very large size file this was a geographically dispersed organization with offices in multiple countries across the globe considerations like sending files over wide area network repeatedly was an issue or resource range a drainage issue considerations like the ability to make the last size files available to the person's on time were a big issue they also wanted a low-cost file storage solution along with it because the files that were being essentially the solution that they were looking for was I put the file in your system there are a set of business rules the file gets stored and it also gets distributed to multiple locations wherever the other users are who have subscribed to this kind of a file the subscription is being determined by the business rules which are built into the application so let's take a look at the implementation scenario in this case the solution that we proposed was a low-cost storage solution the client also had an issue with insufficient rack space in their data center so the solution that he proposed was a rackspace friendly solution and we provided a solution that could be dovetailed with their existing IT infrastructure why did we think apple is the best solution in this case with Mac os10 server with my questions with question server essentially allows you to support multiple kinds of files protocols also xserve provides the lowest cost storage in the industry and that is on the disk on the server disk and the fact that xserve is also one of the most tax-friendly servers in the one you category so what did we develop our technology implementation in this case was we essentially went in and installed Xers add those multiple locations the initial solution that we provided we actually provided the solution in two phases the initial solution that we provided was to go in and install excels at multiple locations we allowed the current workstations to share to to actually go in and do NFS mounts from the excerpts and add in files this was done because in the first solution that they wanted and the initial solution that they wanted was essentially to leverage I had to be built in a very quick time frame in in a really tight on really tight deadlines the but what was common to the solution was that it allowed files to be stored to be transferred between these multiple xers over tcp/ip protocols over socket connections so based upon the business rule files were transferred from one serve to the other what this allowed was one it's only a large size file only had to make one trip over the wide area network to cater to as many downloads as I required by the users at a particular location too it allowed storage of files at each of these locations and also the fact that downloads from the local servers were always faster has compared to downloads over the wide area network the second phase of the solution we did away with the NSS mounting of that because that was not a scalable model that that was a temporary solution that we have to provide and then that is when we went in for essentially a small layer which could be installed on each of these clients as add the file layer which which interacted with a custom server that we wrote running on these excerpts where over the socket connections we were sending in for the files byte by byte which could be stored on the exurbs and good and and were then being distributed in this kind of an environment so this is one solution where we essentially leverage the low-cost storage provided by Excel and the exurbs ability to be installed as a rack ceased server in their data centers let's take a look at some of our best practices when we go in and implement solutions like any systems integrator we are strongly focused on using tools are best practices that we have got a dedicated team which just works on identifying tools purchasing tools if those are available and for building our own tools we have developed some very good tools internally as well tools which allow us to essentially go in and tools built over Java's debugging frameworks which allow us and to do a lot of debugging of whether java application tools which allow us to do a distribution of software on macintosh there are times when there are some challenges we have developed some tools which allow us to do that we also have well defined processes and methodologies for software delivery when we talk about software delivery we essentially have processes falling into three different categories these categories are whether it is a custom system integration whether it's a solutions systems integration or is this an infrastructure systems integration these are the three main categories and are our processes they first slightly for each one of these what is common to all our processes and the core whole set of processes that we have developed around all these three are pertaining to technology change management technology change management is implemented in three stages the planning stage the analysis stage and the deployment stage in the planning stage we go in we study just as I was presenting we go in and we study what is the solution that is required what are the business rivals for the solution what kind of a cost cost limit is there to the solution that needs to be provided what are the different parameters like scalability etcetera that have to be considered to use the solution we then move into the evaluation phase where we start evaluating the different solutions against these parameters that we have collected do we need to go in for some kind of a prebuilt package pre-built software so we have to go in and develop a customized solution can we just modify the existing solutions that already hits us in an interface to resolve most of the common problems that are surfacing today and then the last stage is the deployment stage where we start considering things like how maintainable will this solution be how easily deployable is this solution what are the kind of training requirements that will be required that will be required in this case can we plug in this kind of a solution into the existing enterprise architecture so those are some of our common considerations and are the best practices we have built our best practices around these to really find on these processes Thanks [Applause] see okay my name is steve olson i'm a director of engineering at sybase and promise you i won't be talking about oracle on solaris or oracle on AIX i'll be talking about sybase on mac OS 10 and before i do that i'd like to ask you is anybody here a current sybase customers right now that's pretty much what i thought we decided last year to move our product line some of it into the mac OS 10 environment and we realized that we are strangers to the apple community the community of Apple users we live in different worlds or have been so I thought we'd take a few moments here to introduce a little bit about what side AC is and then after a couple of minutes to talk about our database software that we moved over to the platform it made me put these slides in here so who are we sybase started in nineteen eighty-four about the same time of the Super Bowl commercial that Apple produced and since then we have expanded we the first few customers that we had were in Wall Street Wall Street folks needed an online transaction processing engine that would handle stock trades and they've stuck with sybase through all these years and right now about sixty percent of stock trades in Wall Street etrade and others are processed through sybase servers we have a very strong presence in the financial services community banks and so forth healthcare telecommunications and both state and local governments as well as federal governments are also strong customers of ours so the point I'd like to make here is that the same code line this code that is evolved since approximately nineteen eighty-four is what we moved over to the Mac the same code that is used by our most demanding customers what we've done is not provided you with sybase life it's a it's an industrial-strength online transaction processing engine for Mac OS 10 and our software is localized for all of the major languages of the world so we've deployed in just about every country on the planet what's available today is our adaptive server enterprise version 12 503 just this week we've announced the availability of adaptive server anywhere version 8 something and a number of api's JDBC odbc and our open client API s and our open server product that's available right now most of this is available as a free download for a developer edition download from our website at sybase com / mac later this year we will be releasing our replication server and for those of you who may know not may not know what that is think I think for business it's basically bi-directional synchronization between databases that may be either Enterprise databases laptop databases or Palm Pilot databases and also the adaptive server enterprise 12 51 will be available later this year we are tying that to the availability of Panthers so although we will be ready in approximately September we're not sure exactly yet when Panther will be available so whenever that happened whichever comes first i guess and then also later on their adaptive server anywhere version 9 will be generally available on mac OS 10 ase was first released in 1987 optimized for online transaction processing and we licensed get to microsoft in 1988 microsoft took the the source code the whole package and for a long time marketed as the microsoft sequel server and then we parted company with microsoft approximately 1997 and since then our two product lines have evolved in different directions they even got our name they have very good lawyers and it's what all I can say about that but anyway we now call our product the adopting server enterprise but because of this common heritage there still remains a very high degree of compatibility between the two so applications generally written for a sequel server should have little problem maybe some but because of the evolution of the of the product lines but there's still a high degree of compatibility that will allow you to move your application to adaptive server enterprise on Mac OS 10 if you might have an interest in getting rid of the sequel server it's a sequel database we are sequel 92 compliant an entry level and we've also got a number of extensions in the transaxial language when we decided to do this port to mac OS 10 we took a long hard look at the unix underneath the covers the first unix port that we ever did was with sun OS back in the mid-80s and that was essentially Berkeley UNIX so what we found with Mac os10 is an old friend in a new coat Berkeley UNIX is very very familiar to us and the engine and the basic database components themselves moved over to Berkeley UNIX very very quickly so we look then at well what else can we do to tie in more tightly and integrate with some of the services provided on the Mac OS 10 platform we look at rendezvous the SNMP agent open directory the server monitor itself and then the install I'm not going to say much more about the install except that we use apple's package maker which provides you a command line install facility on headless x serves as well as a nice gooey installation for you know monitored servers so a little bit about this architecture we use the engines depicted here essentially equate to unix processes engine 0 listens for client connections and dispatches to some engine based on load we associate an engine with a CPU meaning if you've got a dual cpu system you can configure two engines each engine is threaded so that you can allow up to on the mac each engine can handle about a thousand connections so a total of about two thousand users can connect to this system at the same time if you've got two CPUs we use a shared memory we look at memory map files versus the system 5ap is for shared memory and have so far adopted the men map as the interface to create the shared memory region so essentially the environment we found in Mac OS 10 was something very very familiar to us and are very compatible with our prior implementations on UNIX systems so we're very very pleased about that and like I said it came together very quickly within about two months we were ready for an early adopter program and within four months we had a general release available in September of last year we used rendezvous for a number of reasons first of all we we wanted the server to come up and register with rendezvous so that a discovery client could recognize where the servers are in your network or in the case of the current implementation your sub network and allow a client to automatically discover where they were get every bit of information needed in order to establish a session with that server so that's why we did it and it only took about 10 15 lines of code if you count the comment is very simple thing for us to do and we also provide a discovery program on the it's a cocoa based application that uses a rendezvous discovery api's and allows us to take a look at all of these servers running in a network so and this this screen shot came from our QA lab and we have both the the database server itself plus some auxiliary servers that we use for backup and and other purposes so they are all rendezvous enabled and the discovery tool allows us to take a look at everything that's running in the server and in this model of or in the screenshot of the highlighted server here has its hostname and port number showing up in the upper left corner and you type in a name and a password and and hit the query button and will launch a query tool that will allow you to interact with sequel languages and view the result sets and so forth sort of an interactive sequel utility that interactive part is available or will be available in our 12 51 release in terms of SNMP does anyone here use SNMP in your organization at all a few of you Apple provided an SNMP agent on their server that came from net-snmp which is another open source project the version provided with Jaguar was net-snmp version for dot something and we found that it had some problems with the agent X protocol the agent X protocol is a means by which you can extend the SNMP master agent so we have taken that model and provided our own SNMP sub-agent that allows us to monitor and view what's going on with the various servers that we provide our adaptive server database backup servers and so forth and so if you have an SNMP console from HP openview BMC patrol tivoli or see a product you can view what's going on in the database and also the server state changes generate traps so if you have a trap handling enabled in your in your console you can be notified and configure it to be to alert you through email or paging or whatever you require when a server might might go down or a system might might crash so that facility is enabled we provide version 5 point then it's 51 of the net SNMP agent and I believe in Panther that's what's provided in the box so you we won't be providing our own SNMP agent with our distribution we provide two mids with the SNMP sub-agency standard our DBMS mid and then we have a sybase mail that extends that give you a great deal more information about the state of the running server this open directory authentication is new in the 12 51 release but prior to prior to this implementation when you log in to our server you provide a name and a password or if you're using SSL a name and a certificate and we do the authentication entirely within our database so for the most part people use names and passwords and our database manages those passwords in our system catalogs with this implementation you no longer have to worry about the password situation we will use a directory native authentication you via the open directory API to talk to open directory and use their authentication services to authenticate a login now we've learned a lot in the past week about single sign-on and kerberos and what Apple's doing there and we hope that by the time this is released in the September time frame that we will able to achieve single sign-on capabilities but I can't commit to that right now that's that's our plan we'll see how it goes does anybody here use n is for yellow pages most of you use ldap or any Kerberos active directory okay monitoring and configuration Apple has produced a very interesting monitor or server admin tool in the Panther it's extensible it provides a cocoa framework that allows a client plug-in and a server-side plug-in to monitor and manage a facility or a service running on a mac OS x server so we were able to work with apple and they provided us with example examples of how to do that and have provided a monitor or admin component for this to that plugs into this tool so with this component will allow you to start and stop the the server to backup and restore databases to reconfigure it and to monitor the behavior of a running system through various graphical reports in this in this case CPU usage but we also expect to provide graphs over time of disk i/o a network I Oh max number of users connected and so forth basically to let you track what's going on inside the server so we're very enthused about this it's there been a sore point with a lot of customers because it's been difficult to get this kind of user interface on other platforms Apple understands these interfaces very well and we're very happy that we're able to take advantage of the look and feel and the usability enabled by this tool so this will be available in our 1251 release and the title of this session is applications in a heterogeneous world and I wanted to just talk for a moment about how the adaptive server enterprise is able to coexist with other database systems that might be in your enterprise we have an interface within our adaptive server enterprise called Omni or component integration services and what it does is allows you to set up tables we call them proxy tables which serve the role as pointers to data that lives elsewhere so with standard SQL you're able to query these tables as if they were all local and they might point to Oracle they might point to sequel server they might point to db2 and when I say db2 I mean the world of IBM which might be on the mainframe V Sam IMS database and so forth and of course other side based servers are configured so if you've got the sybase else wearing your in your enterprise you basically have a federated architecture that allows you to have a single view of presented to your client applications replication server is been a very successful product of ours this came out was first available in cooperation with a significant customer of ours Goldman Sachs and it allows us to publish database changes from the adaptive server enterprise to a subscribing server maybe another adaptive server enterprise maybe Oracle whoever it may be so the reasons I mean we initially did this simply to allow customers to distribute data to aggregate data but lately and i would say about seventy percent of our customers now use it for warm standby you can set it up to basically replicate an entire database to a warm standby server so that if your site goes down for any reason you still have this this warm stand by the main benefits here that we're not restricted by geography we're restricted by the reach of your LAN or your local area network and we replicate transactions we don't replicate any disk files or anything like that it's transactions that are replicated so in the failover scenario for example in a disaster recovery scenario your clients may find that they're no longer able to connect to your your primary site we have client-side failover built into our client api's that allow them to be redirected to a secondary data center and this this mechanism was used by a number of our customers who had data centers in the world trade center in September 11th and those that chose to were we're back online in a matter of minutes I mean they had other things on their mind that day so it sounds bad that they were able to get back up within days but in fact there were human considerations there more than technical consideration those that chose to were able to get back online in a matter of minute through through this technology and this has been used by a number of customers for disaster recovery scenarios for dealing with unplanned downtime somebody trips over a power cable or planned downtime you want to take your systems down for maintenance upgrade whatever the case may be in a warm standby scenario your applications talk to your primary server replication is being done for the entire contents of that server to a standby server and the replication model is one of store and forward so the transactions are changes are stored in a queue on the replication server and then propagated to the standby when they're committed we don't propagate halfways committed changes only those transactions that are committed if for some reason the primary failed client-side failover mechanisms automatically direct the client to the secondary site and the rep server is can be told has to be told to change the direction of replication and when that happens to stand by then becomes the primary and the direction of the replication is switched and the changes on the secondary are stored in a queue until the primary becomes available and then when the primary does become available the two are synchronized and normal operation and can resume so that's a standard way that the rep server is used in a lot of customers situations and basically the the model here is we have agents for various source databases that wish to publish changes and of course we have them for our own databases but we also provide these replication agents for Oracle sequel server db2 and informix and we have a toolkit if you're interested in ancient propagating changes from the mainframe V Sam and others the reps agent then we'll take these changes cue them and when the transactions commit replicate to various targets and that could be Oracle it could be informix db2 or whatever we provide our own jdbc drivers it's a type for all Java driver and we also up for the mac platform we licensed jdb or an ODBC driver from open link it's so to be c35 compliant we provide our own open client api's which roughly equivalent to Oracle oci sorry there and we have an open server an open server is an API library that allows you to write the server side of the client open client interface so that you can provide handlers for language our pcs and so forth in a server a threaded server environment essentially this was built in nineteen ninety carried forward and it was a precursor to application service but you can do everything in C C++ you can get very high speed performance out of this server engine a number of tools for development purposes are available on this platform and some solutions the tools that are provided the web objects plug-in is available Apple engineering produced a plug-in for WebP objects that use our JDBC driver and it's been widely used now or by a number of vendors to produce solutions we provided have provided a real basic plug-in for the real basic product version five dot one now is available and it has a plug-in that we provided that been very well received by the real soft folks runtime Labs is provided support for our servers or interfaces using their framework in which allows you to build use the interface builder to create database driven applications it's a very nice tool blue world and has provided a fe sport there's a number of additional third parties that provide tools to enable you to build either client server applications or web-based applications and of course the JDBC driver can be used in a JBoss environment if you want to build ejbs that deal with databases in terms of solutions power easy i'll be talking about a little bit later and same with the novi on risk wise was mentioned earlier this week as a interesting customer there a credit bureau and they have over 200 x serves we have a lot of custom built software to handle their there a particular application but it's powered by life sybase underneath underneath all that mental where that built a quad base is a good partner of ours it provide a reporting solution for our products the toeless group can be used to backup to tape from file system to tape and so when we backup files in our data or backup databases we write them to the file system and the total scoop be ru utility can be used to them back them up to tape if need be lifetime is a is another partner and mind rack is a very interesting web app web content management partners understand if there's a person from line graph here can you stand up maybe not there he is okay all right so anyway once again migrating from sequel server to ASC we provide some tools to make that possible to migrate both the schema and the data from sequel server to ase this one tool is provided by a company called schema research called it's called sr migrate and then sybase provides a tool it's called power designer and it has been extended with a transfer plugin to allow you to import the schema from just about any data source build a data model and then push that model to a SE with a transfer plugin you can then take the data represented by that source server and transfer it into a fe using our bulk transfer facilities very high speed so it's a we make it we're trying to make it as easy as possible to do this I have three case studies they'll go through fairly quickly here power easy in OV on and schema research power easy has built an erp application which is all mac OS 10 using sybase and web objects they provide four packages for e-commerce logistics financials and sales and a whole host of reporting facilities using the quad base services their environment is basically browser-based the application is a browser-based application using apache web server on the mac OS x server and web objects and the adaptive server enterprise they provide the total package so x serves apache it's a complete unit plug it in turn it on and it's ready to go in OB on is a this is very big title very hard word to pronounce but what it boils down to is these folks take pictures of your eyeball and your retina and analyze them to detect diabetes and other potential problems with your eye and their tests are ninety percent accurate which is is greater than a physician exam they claim and it's a very interesting application the they are it's a start-up operation they expect to deploy in about five hundred sites in North America and they have a workflow agent on each site that captures the data from a very high resolution camera and also data that's keyed in for that particular patient when the retinal scans are done that workflow agent transmits through rmi to a server in in a workflow scenario the server stores the information on a queue which is a sybase table or tables and then a workflow process occurs where various physicians may review the information that's presented to them and add some notes and so forth and then finally a diagnosis is made through through a series of steps a highly innovative application and who knows it looks like it's going to be able to do some good so schema research is a consulting firm they also have some products i mentioned sr my grade but they helped us with the implementation of a facility to assist a manufacturing operation with the running of their factory the solution consisted of the adaptive server enterprise replication server a raid and AFE mirrors one of the features of a fe it will do mirroring as well they very very highly reliant upon this application for running their their factories so downtime is of serious concern to them and in fact we displace a the incumbent database was problematic because it could not guarantee the degree of uptime required for this particular application so they're very pleased about the solution the it's another web objects application browser-based using ase is a primary data store they also have to off-site standby servers in case of disaster they also have a warm standby on the same side in case the particular computer in which ase is running happens to die and they also replicate various database changes in their running site to their development environment so that their application developers have some live data to test with and to implement new features so this customer is very pleased with the results they've been running the factory now for about three months using this configuration so to conclude I just wanted to point out that sybase is committed to this platform the same software that we've used that our most demanding customers use to run their business is now available to you on Mac OS 10 and we're also focusing on additional services Apple is providing this platform to integrate our database with to give you the greatest level of integration possible on this platform we're also working with a number of third-party tool and application developers to provide a more complete solution for you and we are also trying to make it possible for you to eliminate any dependence so you might have on sequel server so you can have an all Mac solution in your enterprise download is a developer's edition download is available from our website at sybase com / mac check it out ok you can contact me any of our those people Darrell Salas is a systems consultant michael haynes i believe he's here is a business developer at sybase i mentioned the download site all of our documentation is also online you can you can go there if we don't we don't provide hard copy of our manuals with our CDs for the mac and of course the rendezvous sm SNMP and open directory websites are available to you as well you
