Is DataTables right for me?

Is DataTables right for me?

DevlshOneDevlshOne Posts: 2Questions: 0Answers: 0
edited July 2013 in General
I have created a full-featured job management system for my employer. It's a PHP/mySQL/Javascript (heavy jQuery) application sitting on a Windows 2008 IIS Server. My two biggest primary concerns when building this application were data accuracy and user-friendliness. So far, I have achieved both of those by limiting the application to self-written code. There are a couple of things missing in my application: a full featured CRUD and data-mining / reporting. After looking through some of the documentation for DataTables, the ColVis, Editor and TableTools plugins, I believe they would serve my needs to fill the missing features of my app. Unfotunately, my app is behind a VPN and uses LDAP for authentication and access, or I would gladly let you take a look at it. There is a LOT of data, including about 84 primary fields for each job. I am using a generous number of 1-M and M-M tables in my database and 75% of them are using foreign keys to display data to the user. For instance, a single job's record may look like this: [code]187 | 3 | 1 | 129530 | 8 | 333 | 9016448 | 1 | 30935 | 32583 | 20830 | 33069 | 45610 | 1323.00 | 16.00 | 1758.38 | 2645.91 | 57.00 | 0.000 | 1 | 3 2 | 1 | 139 | 1 | 8 [/code] PLUS another row of data from a milestones table that exclusively holds dates pertaining to that job. Most of the integers in this job's record are IDs that point to another table.
Now for my questions.... (assume that I am an advanced jQuery user but have had no exposure to DataTables)

Will I be able to successfully display, provide options for and allow editing of my data considering there are so many foreign keys?
Will I have speed issues if I happen to be dealing with 1200 or more records at a time?
Will the combination of the ColVis and TableTools plugins, will I be able to create a reporting system where users can save their custom list of visible columns?
Will I be able to get the support I need, either here or on StackOverflow, to push past roadblocks in my development process?

Thanks Much!

Replies

  • allanallan Posts: 63,213Questions: 1Answers: 10,415 Site admin
    > Will I be able to successfully display, provide options for and allow editing of my data considering there are so many foreign keys?

    Yes you should be able to. The number of foreign keys will only have an impact on performance - there won't be a hard limit as to how many there can be, but the soft limit will be a function of how many rows of data you have and how many rows to join for each one there is.

    > Will I have speed issues if I happen to be dealing with 1200 or more records at a time?

    Generally no. However, if you are doing a lot of joins, then it is possible. The key thing to do is to use object mapping (if you do use lookups at all), rather than loops, since loops will just kill the performance. A DataTable should handle up-to around 50'000 rows on the client-side without too much hassle (in a modern browser). For more than that, you might want to consider using server-side processing.

    > Will the combination of the ColVis and TableTools plugins, will I be able to create a reporting system where users can save their custom list of visible columns?

    Yes - TableTools has the option of outputting only visible columns and the users can use ColVis to change those visible columns. The current dev version of ColVis has the ability to do column grouping which might also be of interest to you with so many columns.

    > Will I be able to get the support I need, either here or on StackOverflow, to push past roadblocks in my development process?

    I try to answer as many questions as possible here in the DataTables forums. Links to test cases showing the issue really help (both so I understand the problem and so I can see what needs to be altered). I can't promise to answer all questions since there are so many, and only a certain number of hours in the day, but priority support is available if you need to be sure of getting an answer ( http://datatables.net/support ).

    I should also say, I can't promise that the performance will be acceptable to you. I suspect it will be, but the only way to really tell will be to try it and see!

    Regards,
    Allan
This discussion has been closed.