Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 34

Thread: STSDB Version 4

  1. #11

    Default

    Quote Originally Posted by aroratushar View Post
    I would like to fetch more than 1 rows starting from a chosen row number 1001 till 5001 when an XTable contains 10,000 rows.
    Clear, paging. XTable.Skip(1000).Take(4000) - what is not so effective for now, except the semantic of LINQ code.

  2. #12
    Junior Member
    Join Date
    Apr 2011
    Posts
    28

    Default Null objects storage should be implemented.

    Null objects, null child objects (including nested child class objects), storage, was not implemented. In current version of STSdb, XTable denies null objects, most of the times. If this new feature is implemented in future versions of STSdb, it would make everything a lot easier and better.

  3. #13

    Default

    Interesting, what the "automatic" part of the system should do with this paging in case of random keys insert...

    Therefore if you show to the user posts of today in quantity of 100 pieces, next page must refer on the last key of the shown 100 pieces, and then Forward(startKey - which is last shown key).Take(100)

    The same with backward.
    To show the third page Forward(startKey - which is last shown key).Skip(200).Take(100)

    After fifth page people are using 1,2,3,4,5,...., last page

    Null object storage can be solved if to store serialized values (strings) not the objects.

    Little bit more about NULL objects.

    I know that XTable<int,int> t;

    t[1] = null; will work

    XTable<int,null> - this not,
    therefore creating fake:
    XTable<int,byte> t;
    t[1] = 1;

    about nullable child nested objects inside of class - it will also work if your class can be binary serialized

    [Serializable]
    public class MyClass
    {
    //nullable objects
    }

    In here I didn't test all, so if you have concrete example - please, post.
    Last edited by blaze; 14.02.2012 at 16:23.

  4. #14
    Junior Member
    Join Date
    Apr 2011
    Posts
    28

    Default

    Quote Originally Posted by blaze View Post
    Interesting, what the "automatic" part of the system should do with this paging in case of random keys insert...

    Therefore if you show to the user posts of today in quantity of 100 pieces, next page must refer on the last key of the shown 100 pieces, and then Forward(startKey - which is last shown key).Take(100)

    The same with backward.
    To show the third page Forward(startKey - which is last shown key).Skip(200).Take(100)

    Null object storage can be solved if to store serialized values (strings) not the objects.
    You did not figured out a problem. When LINQ is used to fetch these rows, each and every affected row's data is loaded. And it makes Database slow. To speed it as far as possible, STSdb should be have automatic numbering feature, and multiple rows fetching from a chosen row number, coding in STSdb engine itself, so that the rows which are not needed, are never loaded, and it would make STSdb really fast. Otherwise, for every row being loaded, will make the application slow. Even to use .Skip LINQ method, might load each and every row in the process thereby making the operation slow and slow.

    The solution is to implement automatic XTable run-time row numbering, and paging also, right into the engine.
    Last edited by aroratushar; 14.02.2012 at 16:13.

  5. #15

    Default

    Quote Originally Posted by aroratushar View Post
    You did not figured out a problem. When LINQ is used to fetch these rows, each and every affected row's data is loaded. And it makes Database slow. To speed it as far as possible, STSdb should be have automatic numbering feature, and multiple rows fetching from a chosen row number, coding in STSdb engine itself, so that the rows which are not needed, are never loaded, and it would make STSdb really fast. Otherwise, for every row being loaded, will make the application slow. Even to use .Skip LINQ method, might load each and every row in the process thereby making the operation slow and slow.

    The solution is to implement automatic XTable run-time row numbering, and paging also, right into the engine.
    I know that every Skip loads value in memory, also I know that implementing paging in case of random keys insert will make database terribly slow, not fast. Also I have shown how the paging must be done, because Skip 100-200-300 (maximum 500) is not skipping 1 MLN (Skipping without loading values into memory optimization is good). In example stays daily post it means you start to show pages to the user based not on the row numbers logic but on the logic of higher level, like days (for them you have primary key).

    Normally, I just want to know for what people are using secondary keys and I am sure if someone will find explanation that he needs secondary key then in the nearest future he will need the third, fourth and the fifth key for the same table (which can be solved by NoSql concept itself).
    Last edited by blaze; 14.02.2012 at 16:38.

  6. #16

    Default

    There is such paging logic in the Sample.Advanced project, which comes with the database source.

  7. #17
    Junior Member
    Join Date
    Apr 2011
    Posts
    28

    Default

    Quote Originally Posted by a.todorov View Post
    There is such paging logic in the Sample.Advanced project, which comes with the database source.
    Dear a.todorov,

    It would be wiser to implement advanced paging, and it's methods, in the XTable Engine itself. In this paging logic, when 300 Rows are fetched, starting from Row number 2000 in a collection of 5000 Rows, all the rows before row number 2000, and after row number 2300, which are not needed at all, must not load their data. In this case, the Database manipulation might become a lot faster. I hope STSdb programmers implement these two technologies in the future versions, especially built into Database engine as methods. This can resolve issues regarding extensive difficult coding and long standing fetching times.
    Last edited by aroratushar; 15.02.2012 at 13:51.

  8. #18

    Default

    I would like to ask, what is status of STSDB version 4 development?

  9. #19

    Default

    We have spent a lot of time in researches and predevelopment. All conceptual problems have been solved.

    Our plans are to release first a STSdb W4.0 Engine - the database core with the basic functionality. Then we will release the full-featured database.

  10. #20
    Junior Member
    Join Date
    Jul 2012
    Posts
    1

    Default

    Quote Originally Posted by a.todorov View Post
    We have spent a lot of time in researches and predevelopment. All conceptual problems have been solved. Our plans are to release first a STSdb W4.0 Engine - the database core with the basic functionality. Then we will release the full-featured database.
    Do you guys have a release date (estimate) for STSdb W4?

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
2002 - 2014 STS Soft SC. All Rights reserved.
STSdb, Waterfall Tree and WTree are registered trademarks of STS Soft SC.