Help with C externals -> some explain of Valentina DB ideas

Ruslan Zasukhin ruslan_zasukhin at valentina-db.com
Thu Mar 8 17:43:34 EST 2012


On 3/8/12 12:19 PM, "Bernard Devlin" <bdrunrev at gmail.com> wrote:

Hi Bernard,

Well, question on N hours of lecture :-)
I will try expose only few major points.


1) ENCRYPTION?  Well I do not consider it major kill feature of Valentina,
although 5-10 years ago and may be up to know it was and is useful.


2) MAIN IDEA behind Valentina DB, why it was even born
    give into hands of developer Object-Relational Data Model.

I hate to be a stupid monkey, which need transfer nice logical ER model into
physical model of RDBMS, when you - developer must do manual switch of LINKS
into TABLES.  

I did have feeling yet in 1995 that relational dbs have stick in 70th ...
This is like write in ASM or at least procedural lang instead of OO lang.
And wow, already 2012 year ... We still use mostly relational dbs ... And in
the same way in fact as in 80-90-00 ...

When in 1993 I have made first notes on paper, I have write:
  okay, I want a new SMART db engine, and will be okay if it will be slower.


3) It is magic that Valentina DB is not only smarter, but x60-x100 times
faster of regular dbs...  If somebody want see numbers, you can jump to our
page where users expose that
    http://www.valentina-db.com/en/company/testimonials


4) So my personal love of Valentina DB engine is because it allows us
instead of 100 tables in db schema to have only about 50.  All rest
converted to links.  Also this reduce 30-50% size of complex selects ...

Details can be found in Valentina WIKI / Articles section.
http://www.valentina-db.com/dokuwiki/doku.php?id=valentina:articles:articles

If you need write smaller SQL, then this means faster coding, less bugs.


5) Bernard,  very important point now !!

- Valentina is design to be extension of popular RDBMS.

- because I self have grow up on C++ and I have see switch of the world from
C to C++.   Compiler of C++ do not force you change habits immediately.
Millions of existed C code still works in new C++ compilers.

- for Valentina we did the same: you can do just all the sme you are used in
Postgre, mySQL, SQLite, Access, 4D, FoxPro, MS SQL, Oracle.
Because Relational model still here.

No need even change habits in API:
     connect
    db.query(  "CREATE TABLE ..." )
    db.query(  "SELECT" )
    db.query(  "INSERT ..." )
    db.query(  "UPDATE ..." )

I.e. Use minimal API:  connection, db, cursor   and all rest via SQL.  No
problems.

LATER, step by step you can learn that exists other ways, which can be more
comfortable, faster, easier ...

** But again, not API makes Valentina so fine in my opinion.
E.g. exists FAT-API-Frameworks around relational dbs for years ...

Main thing is supported MODEL. You have Tables, Links, Properties, Enums ...
Our next step implement wonderful Table Inheritance.

* Do not say me Postgre have inheritance :)
It is wrong and weak near to zero ...


6) about Valentina Reports and SQLite.

Yes, VReports can use SQLite as datasource now. And yes, free Valentina
Server/5 also can use  some SQLlite, which is on the HDD near to VSERVER.

Just such Lite db on (remote)? Server most probably can be in read only
state... Who will change it ?

For Vserver and Postgre dbs all clear. DB SERVER can modify db, VREPORT when
needed connects and get data to build report ... Of  course can be used copy
of Lite db copied by some scripts ... But that is tasks for developers ...


7) just to give light.

If you have postgre server db, and you want to use Valentina Reports
You or your users can install free Valentina Server/5

This can be done for example in 100 your clients offices.

Then YOU need Valentina Studio Pro to design report(s),
And put .vsp file under vserver.

After this, VSERVER will be able connect to to Postgre server, load data and
build reports PDF/HTML/...




> Ruslan, you might need to include some information about why someone
> might prefer to learn the Valentina API (accessible from V4REV) by
> citing some features of Valentina that are superior or unavailable in
> sqlite e.g. encryption, full-text searching (I'm not sure if the
> latter has been enabled with Runrev's distribution of sqlite).  You
> might also want to provide benchmarks or design-decisions that make
> Valentina a better choice.  Perhaps provide some links to show what is
> possible with Valentina Reports - but since Valentina Reports works
> with sqlite, that's not much of a reason for learning to use Valentina
> as a database :)
> 
> I looked around for embeddable encrypted databases, and Valentina was
> one of the only databases that offered on-the-fly encryption.
 
> Bernard
> 
> On Thu, Mar 8, 2012 at 7:54 AM, Ruslan Zasukhin
> <ruslan_zasukhin at valentina-db.com> wrote:

>> 2) why tease self with SQLite if exists Valentina DB and now many ways with
>> Valentina DB & Reports are FREE!  Even for deployment and sales.

-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]






More information about the use-livecode mailing list