Slashdot Mirror


An RDBMS for CTI System?

cpt_koloth asks: "The company I work for are currently in the process of designing a custom CTI system for a client. A small part of the system is implemented, mostly to familiarize the development team with the telephony API (in our case TSAPI, since the client uses an Ericsson PBX) as a simple click 'n dial application. The main issue is the database system which will be used. We need a database is fast so that it can assign the calls without delays. The present system uses MySQL and is doing great but the numbers of requests will increase exponentially once the 'main' parts of the system are implemented (we have about 60000 requests per day currently most of them being cross table queries but finally they should be seven or eight times this number). Another aspect is the reporting agent, which will operate on the same database and also needs to be fast. We are currently thinking on a system with two databases one for the 'calling part', and one for the reporting part, and we cannot decide on the RDBMS to be used with the way the data will be updated between the two databases. Keep in mind that cost matters a lot. Does Slashdot have any insight to offer?"

5 of 51 comments (clear)

  1. Interesting Solution by locokamil · · Score: 3, Funny

    I would recommend a RTFK running on a SMKPR, with a stock GHCCF, and several KKDFL's.

    As you can see, this would drastically cut UIUER, and lead to greater LUD which, of course, is what every management team wants!

  2. My Solution: Two MySQL Databases! by DrZaius · · Score: 3, Interesting

    Hey,

    If mysql is working for you now, you should look at mysql scaling options. For example, if you are worried about reporting queries, replicate the database to a second machine for running the reports against. Mysql replication works great for this sort of application. Also, if your dialer application is only performaning read queries, you can spread those across replicas too.

    Knowing the current 'size' of your database would help -- if it's a dual processor box with 1 or 2 gb of ram, there are still a few affordable forklift upgrades before you need to worry too much about one box or mysql's performance (assuming your indexes are set right).

    Also, MySQL Cluster was designed by/for the telecomm industry -- the original commissioners were performaning analysis on call records or something of the such.

    MySQL can definitely do whatever you want it to. Why switch?

    --
    -- DrZaius - Minister of Sciences and Protector of the Faith
    1. Re:My Solution: Two MySQL Databases! by moderators_are_w*nke · · Score: 3, Insightful

      Queries per second is a meaningless number. It depends on what the queries are doing and how much data you have. Single row selects on primary keys are cheap, 1000 rows accross 8 tables with an order by is less so, it really depends what you're doing.

      --
      "XML is like violence. If it doesn't solve your problem, use more." - Anonymous Coward
  3. DB design is the key by alen · · Score: 3, Insightful

    i'm a dba in a sql2000 shop and we have servers that serve over 1 million hits a day with very little problems

    database design is your biggest challenge no matter what you use. you can spend $1 million on orcale, but if you build it wrong then you are wasting your money.

    build a read/write design where your writable servers don't serve reporting or similar queries. A long select can cause locks for people trying to update data. force people to use the reporting servers for report and other data generation

    use the right data type for the data. don't use bigint's where an int will do since it will cause your storage needs to grow and the data involved in each query will increase as well

    build the hardware right. don't use RAID5 on files where you are going to have a lot of writes

  4. I'll answer the easy question. by Generic+Player · · Score: 3, Funny

    "Does Slashdot have any insight to offer?"

    No.