SQL Server Licencing

  • I would think that would largely be dependent on how they are received electronically. I had a system where the client was an app that scanned folders on an FTP server to pickup dropped files and the clients interacted via FTP. At minimum I'd need one CAL for this.

    CEWII

  • The ones I am talking about are fully automated. The file transfer protocols are well defined in that industry. The clinets dial into a server, or use a web client to create the order etc.

    The one which I did as far back as 1997 went like this.

    A windows application was given to all shops.

    They use it to dial into our server a multi tasking windows app which can talk to 32 clints via 32 modems at the same time. we had 4 of these

    The server creates the order and writes the file.

    The accounting System picked it up and invoiced it (at that time not SQl Server, now Oracle) and wrote a file for the dispatch system.

    The dispatch system was SQL Server and picked the file.

    It communucated with a automatted warehouse again Oracle(like the Sony factory which was set on fire last year)

    And the goods were picked

    I used to call the whole system untouched by human hands

    I wrote all of the SQL system, but ownership changed hands (went bankrupt and new owner) and I lost the customer

    I had done lot of things using heavy Stored procedure all which the customer is using without my permission

    So if Microsoft want to know who this is just ask me !!!

    I am investigating SQL Shield now to protect all my future work

  • siva 20997 (3/1/2012)


    I am investigating SQL Shield now to protect all my future work

    It sounds like mostly file transfers and some SQL to oracle, file transfers, in my mind tend to break the chain of users and therefore CALs.

    As far as SQLShield, the fact it has to be installed on every SQL box that the tech is used would be a deal breaker in my company. And it would be for my last three employers.. If you have some REALLY proprietary stuff think about SQLCLR, its more palatable in many cases.

    Don't get me wrong SQL object encryption is lame, which is sad because the encryption routines in SQL are really pretty good.

    CEWII

  • Even though it is file transfer there is no human intervention. Hence according what was discussed earlier I think the system is breaking the law. There are few systems like that now in that industry and they do not use file transfers. Now that it is published here lets see if Microsoft would do anything!!!!

    SQLShield are willing to give me fixed price for unlimitted installations. If the project which I am working on takes of f(even 10 customers) I will use SQLShield

    Does SQLCLR need dot NET technology to be used. I am not a .NET fan and do not use any of Microsoft programming languages. If it is not dot NET I will consider using it

  • siva 20997 (3/1/2012)


    This is my last post only becuase this thought hit me and I am wondering how many have got such situations

    Lets Say we have a customer with say 50 User SQL server accounting system like navison based on SQL Server. The customer recives orders from his 3000 customers via electronic means. The 3000 clients do not have any cals. They are small shops. Navision imports them in to itself without manaul intervention and prepares the dispatch notes and invoices etc

    Looks like a customer needs a 3050 user licence in such cases. Order started at 3000 locations and it automattically ended up inside the 50 user SQL Server system

    I can name a few systems like that. If you look hard enough you will find them

    Actually, in this case when customers send in those orders, they would need a per-CPU license since those are not employees.

    You have a good logical argument from the philosophical side. From the contract/business side, not so much. You do not have to use SQL Server, nor do you have any "right" to use it as you wish.

    What you could challenge, is the interpretation of the clauses with multiplexing. I think you might win in some scenarios, not in others. Time shifting the work, or batch uploading it, may or may not work. You can definitely ETL data in batches, and you would not need SQL Server licenses for each user, but you would essentially be storing the data in your application, and as a separate process, sending it to SQL Server. I can see that working.

    However any two way interaction, or any middleware that acts in a semi-real time manner would likely not be allowed.

    Again, it's not my decision, or what I think is fair/right, but how things read in the licensing to me.

  • siva 20997 (3/1/2012)


    Even though it is file transfer there is no human intervention. Hence according what was discussed earlier I think the system is breaking the law. There are few systems like that now in that industry and they do not use file transfers. Now that it is published here lets see if Microsoft would do anything!!!!

    SQLShield are willing to give me fixed price for unlimitted installations. If the project which I am working on takes of f(even 10 customers) I will use SQLShield

    Does SQLCLR need dot NET technology to be used. I am not a .NET fan and do not use any of Microsoft programming languages. If it is not dot NET I will consider using it

    There are likely some scenarios that are on the line and some over but its also to keep in mind that we are talking about the license of the current version and what exactly the license said in SQL 7, 2000, and 2005 is important if thats what is being run.. On that note I can't answer.. But there are people who try to game the system and hope that no one finds out. What often happens is this continues until the fire the wrong person who knows their shenanigans and calls up MS and says "hey company so-and-so is doing X, isn't that a violation of your license?" and BANG, lawyers!

    I think you might have missed my point about SQLShield, I wouldn't let you install it no matter what it cost me.

    SQLCLR is a .Net assembly that can be run in SQL, as for your aversion to MS languages, whatever man..

    CEWII

  • Thanks for that Steve. At last I am making some point here

    we could have a large organisation A using Oracle sending Purcahse orders to company B , C etc who have SQL Server, Automated systems like comerce server to receive and proces the orders. Are we saying we have to pay cals for thos devices in organisation a which originate the Purchase Orders which end up in B and C

    No way.

    what happens if A and B are part of same organisation but differnt offices and domains

    what happens if they are on the same domain

  • I do use MS lanaguages. I did start with Original Bill Gates Basic boon found the power of real compilers etc

    I dont mind c#, it is designed by same guy who designed Delphi

    It is just that I dont like .NET application which are tied to O/S too tightley

    But may be for this it is Appropriate if that is the only way it can be done

    I will give it a go soon

  • Hi everyone, I am not sure if I am annoying everyone by coming back to the same point. There are couple of things I want to expand on. If enough is enough let me know and I will stop

    The large comapnies will use Processor licence and there is no problem. The small comapnies who have not got the muscle or knowledge to chalange this keep on using alternative technoly which are not fully automated. So we as developers must find acceptable solutions without breaking the licence aggrement. I feel that if the licence aggreement can be chalanged as incosistent with emerging technology it can be chalanged. I will just stae 2 examples here but leave the argument for a future time.

    Eaxmple 1) Massive Factory automation system like Schafer or KNAPP have 100's of devices controlled by their software using Oracle DB. The Office systems like Navision (Microsoft product) running on SQL Server is made to communucate with Knapp to place new orders in the queue, or update order status information as the items are picked. Now is the Oracle DB and Knapp communucation software 0 device, 1 device cal or 100 device cal. There are many automatted warehouses in Europe They all do not have a processor licence, nor KNAPP tell me when I did this job for someone how many deveices was on the auttomated system for me to be adequatley covered for licence.

    Example 2) My bluetooth Server to act like a middleware and communucate with SQL Server is just a extension of the above case

    My current post is to ask you guys if I am within the licence aggrement in the following scenario

    We have 20 user master SQl Databse for the company staff to use with in the domain

    we have a SQl Express or MYSql databse at the Web Facing point for the 300 contarctors log in (authenticate etc) view their jobs and notified of new jobs etc

    Now I will not use any middleware hence the 300 Contractors are not touching the SQl server.

    So this what i will do to update the information both ways

    everytime a relevant data to Internet facing data changes I will update the SQL Express by using Stored procedures.(like new jobs, new schedules).

    the 300 contractors will view and update the information as the job progresses. They record the changes in a differnt table (like the SQL Log tables)

    Now the SQL Server using Stored Procedures (have to be CLR based I think) will regularley empty the log tables and update it self.

    presto Job done. Is this with in the licence aggrement.

    If this is I could extend it further so that the update happens as soon as something happens on the SQl Express as follows

    SQLEXPPRESS announces to the dome using UDP port a signal to say I could new data come and get it

    Now the CLR SP can be made to wait and wake up on this signal and pull the data.So it does not have to do it regularly. This is more like a call back function in Programming lanaguages, but the signal was sent to the whole world and who picks it up and acts on them is up to them

    I will approach MicroSoft via my Cloud Service provider (They seemed to have a appointed auditor) to ask these questions on monday

    Sorry again for being a bother

  • Not a bother at all, and good questions.

    Here's how I see things:

    1. If the Oracle DB connects to your SQL Server, 1 CAL needed. If SQL Server connects to Oracle and pulls data, then you have no license cost, AFAIK.

    2. Incorrect. Your bluetooth server is not a data storage system. If you have your clients connecting to your middleware, and adding data to SQL Server, or reading data back from SQL Server, they are essentially clients. Your bluetooth server is acting as a network device, not an end system.

    If you bluetooth system has it's own database (free/custom/other) and does the processing of data, then that's different. But from your descriptions, and the way most systems are written, that's not what happens. Your bluetooth system, as I've seen it described, is no different than IIS in this regard.

    Your use of SQL Server Express is iffy. I think if you have your software only accessing the Express server, and then you use connections from server to server (like SSIS), then you are probably within compliance. However you'll have the scale limits of Express and you need to run on a separate host. MS does get funny about licensing multiple instances on the same Windows host.

    Thousands, perhaps millions, of small companies use SQL Server with per processor licenses. That might change a bit with SQL Server 2012 and per core licenses, but many companies can run a single CPU, quad core processor and it's a reasonable license cost. Don't forget that a SQL Server is not necessarily dedicated for your software (or Dynamics, CRM, etc). It can host multiple databases.

    There are lots of small companies that do not think SQL Server is worth it. In these cases, many of them actually use mySQL or some other lower cost/free database software to reduce costs. Lots of ISVs do the same thing. If you are really worried about this, why not use MySQL/PostgreSQL as a storage engine for your bluetooth server and let people pull data from this system into SQL if they need it?

  • We're currently in a similar discussion and decided to go a slightly different route:

    We asked MS to provide us with a legal ("bullet-proof") definition of a "device", since it can't be found on any of their official documentation.

    Example:

    You officially need one device cal per PC. But a PC (usually) has at least a mouse (navigation device), a keyboard (input device), a monitor (output device), an external hard drive (storage device), a printer (output device), ... . Question to MS: Why only one device? What's the exact definition of a device? Current status: awaiting answer...

    Regarding multiplexing:

    As per the answer we received from MS (currently only preliminary, not yet verified by MS legal department), the chain can only be broken by manual interference. So, even if there's a file system task involved, the chain is still intact as long as the processing is done automatically. If you copy the file manually to a different system (either email, Excel or another SQL Server), the chain end. Otherwise you'd be able to use a Enterprise Edition as a back end an use a file-based bridge to an Express edition that would be used as a Web-backbone. I see that MS doesn't like such a scenario. But if the copy to the Express Edition is done manually by user interaction (not a cron-job or a windows task) it's most probably a legal solution.



    Lutz
    A pessimist is an optimist with experience.

    How to get fast answers to your question[/url]
    How to post performance related questions[/url]
    Links for Tally Table [/url] , Cross Tabs [/url] and Dynamic Cross Tabs [/url], Delimited Split Function[/url]

  • Thanks. I think I need to explain more here

    1) The Oracle DB is master system for the Warehouse Automation system. All the divices sit behind that and operate 100's of devices. The communucate with Oracle via TCP/IP and RF depending on the devices. some starpped to the pickers arms. some are along the route the parcels move. Knapp system provide TCP/IP communucation protocol standard to

    -

  • Thanks. I think I need to explain more here

    1) The Oracle DB is master system for the Warehouse Automation system. All the devices sit behind that and operate 100's of devices. The communicate with Oracle via TCP/IP and RF depending on the devices. some stripped to the pickers arms. some are along the route the parcels move. Knapp system provide TCP/IP communication method for outsiders like us to talk to them. we had to write similar TCP methods to talk to them.

    - new orders are being entered in to the SQL Server by various means and our client system will send order information to their server via TCP/IP

    - at the same time their Client is sending us every piece of information such as what items were picked, who picked it etc.etc These are all coming from various devices including the device from which it is coming and record it in the SQL Server

    - then at the end of the Pick our system will calculate the the invoice and print it so that the sheet of paper can be pushed in to the box by KNAPP

    We are recording information coming from every device in their system in the SQL Server instantaneousley. we know which picker picked which item because of the device attached to his arm or something else. So all the device are touching the SQL server more or less instantaneously. Hence according to discussions earlier all those devices must be counted for Cals.

    2) You are assuming that the blue tooth Server just passes the data starlight through. If that is the case it is just a router and the cals must be counted. However if I have machine acting as JobProgress server and recording every device movement and then pass it through one transaction at a time (like KNAPP above) my devices are thought of as needing a cal.

    In my mind both are the same. Not one rule for KNAPP and another for me

    Coming on to my SQL Server/SQL Express question. If we are using SQL server for data storage yes I could use something else like MYSQL. SQL Server and TSQL language is getting very powerful that we are writing whole systems in TSQL. Hence SQL Server is the choice. It is possible to write whole accounting stock control system in TSQL and then put a front end in Windows or iPad. This type of product development we feel has to start from the bottom end and that is why our customer base is always going to 10 to 50 users

    Now to expose the customers data to something like KNAPP or WEB the customer can not justify the CPU cost. hence our arguments here. If the IIS server just exposes the SQL Data then yes I am writing something to overcome the licence issue and iffy

    However if we write proper functional IIS application which does different things but exchanges information like KNAPP or my bluetooth server I think it falls into a different category. instead of writing PHP using IIS Server/Apache I could get someone write it JAVA and make it function like the KNAPP system above. That is with lot of functions built in which the SQL Server is not doing. Then it is a serperate system doing something seperate and communicating with SQL Server just like KNAPP

    It is a area which does not concern most here on the forum because you all have been working for big companies who have CPU licence. I am trying to bring small companies in mass to use SQL Server. In the future most applications logic will be in the SQL Server it self. not in the middle tier like the current crop of applications. We have to make it possible for small companies 10/50 users use such systems and still be able to be connected to KNAPP and Bluetooth Servers and Web

    Hence my point. When KNAPP does it it seems legal. when others do it it seems we are touching on infringement

    If it is OK for Knapp to pass every pickers action so it is ok for me to pass every action via my bluetooth server or application sever where the 300 users are connected to occasionally

  • Hence my point. When KNAPP does it it seems legal. when others do it it seems we are touching on infringement

    If it is OK for Knapp to pass every pickers action so it is ok for me to pass every action via my bluetooth server or application sever where the 300 users are connected to occasionally

    I guess you can't compare KNAPP and your scenario.

    AFAIK, there are some special deals between MS and some large software vendors where they're allowed to sell their system under a different licence contract.

    There's only one single route to go: talk to MS and get a legal agreement. Until you have it in writing in your hand signed by MS legal dptmt., you'll have to stick with the rather vague MS definition.

    Unfortunately, MS obviously decided to (purposely) obfuscate their license system for SQL Server just to create a lot of uncertainty. As a side effect they created about the same level of (un)certainty among their reps. It's a shame but there's little you can do about other than either playing by their rules or go a different route...

    I don't think that this MS strategy (together with the latest changes in licencing for SQL 2012) will help to increase or at least keep the current percentage of the market. I'm afraid MS deliberately taking the risk of SQL Server becoming a niche product just for the sake of short term profit. (this is not just wild guessing. I'm taking into account the current discussion at our company what financial advantage we will have using MS over Oracle from version 2012 on).



    Lutz
    A pessimist is an optimist with experience.

    How to get fast answers to your question[/url]
    How to post performance related questions[/url]
    Links for Tally Table [/url] , Cross Tabs [/url] and Dynamic Cross Tabs [/url], Delimited Split Function[/url]

  • You are wrong about the KNAPP / MS Alliance

    There is no such thing. When KNAPP comes into your comapany and quote you for your system all they are looking for is can you talk to their TCP/IP Communucations system. From where the communucations starts depends on what the customer has Navaison plus SQL or Oaracle or UNIX. It does not matter to them as long as you can communucate with them

    They communucate back all the information so that a invoice etc can be produced including information susch as who picked it. They dont care how and where I store or how I produce the Invoice. However I can not produce the invoice etc without storing it somewhere. also the primary stock control system on SQL server has to be updated. I can chose just to upadate what stock was picked without the device or picker information.But for completeness we do record it

    hence i am recording information coming fom 100's devices and users in to SQl Server.

    I can make my system complex as theirs sitting behind a communucation server and hiding all the functionality. But basically it is information coming from multitude of devices and users via a single TCP/IP communucation channel.

    Now Oracle might say (since KNAPP is running on Oracle) that the SQL server and the 100's of users who are entering orders in to the SQL Server are client of ours as their orders are reaching our Databse without breaking the chain. So reciprocal rules Knapp have to purchase additional Oracle cals for these devices. So it will depend on how many such cals they have or is it unlimitted

Viewing 15 posts - 31 through 44 (of 44 total)

You must be logged in to reply to this topic. Login to reply