Page 1 of 1

What is the fastest Database?

Posted: Mon Jul 25, 2011 10:48 pm
by keithglong
Hello,

I have approximately 25 MB of data (plain text) that consists of approximately 140,000 different entries (one per line--pipe delimited). I am working on an application to quickly search through the data not unlike the LiveCode Dictionary application. However, it will be necessary for my users to be able to edit any entry at will.

For a desktop application, what database would you recommend for the job? I can use a flat file database, but the problem is that all 25 MB of data must be loaded into memory... What about SQLite? Valencia? Speed is of the essence.

FYI: In the past I used an Access database, but it was too sluggish for my purposes.

Any recommendations/feedback is most welcome. Thanks.

LiveCode is awesome!

Sincerely,

- Boo

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 12:30 am
by BarrySumpter
For me, for speed, for single user desktop apps, hands down:
Valentina

I've just been informed a Valentina database file server (not database server) I setup two years ago is now supporting 800+ users.

At the time I was reseraching and using Valentina they DID NOT have,
what I believe, is a proper support forum setup like LiveCode Forums.
And support is thru email groups.
So you pretty much get every single support query being sent to you.

And they won't manage their own bug reporting.
You have to login to some strange bug tracking software
get used to which fields get the best response
and log the bug if you want them to acknowledge it.

English is NOT the native support language so you have to work at understanding their responses.

Their documentation is thru their own software support wiki.
Which takes getting used to as well.
But the actual content has improved a considerable amount
with haps proper coding examples etc.

It'll take some time to get to know their database and why its so freaking fast and how to use it.

But like getting used to any database, once you know the routines its becomes second nature
and development is quicker.

The Valentina Plugin for LiveCode was one of the reasons I moved to LiveCode from REALbasic.
The Plugin can be used to access the Valentina Server as well.
Another reason I moved was LiveCode for Mobile and REALbasic didn't have any plans for mobile.

The LiveCode plugin for Valentina is for desktops only and NOT for mobile.

hth

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 12:44 am
by jharris
BarrySumpter wrote:For me, for speed, for single user desktop apps, hands down:
Valentina
Barry... would you happen to have an example of using Valentina with LiveCode.
I have yet to be able to connect to and query a Valentina database.

I have asked in the forum and got no response from any users. It sounds like an awsome database, but
it has been pretty useless for me. I have been using sqlite so far.

Does revOpenDatabase() even work with Valentina?

Regards,
jharris

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 12:56 am
by BarrySumpter
There were samples somewhere that I tested before purchasing the OmegaBundle.

You have to install the V4Rev_4 ADK from Valentina.
V4Rev_4 = Valentina for Revolution version 4
...\My Documents\Paradigma Software\V4REV_4\Examples\TestProject

hth

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 1:03 am
by keithglong
Thanks Barry.

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 1:10 am
by BarrySumpter
My pleasure.

Please let us know how you go.

Re: What is the fastest Database?

Posted: Tue Jul 26, 2011 2:50 am
by keithglong
Will do! As for now, though... I am leaning more towards SQLite. (Due to budget restrictions and such.) However, I plan to also experiment with Valencia to see how it works. (Unfortunately, I think it is a bit out of my budget for now--but we'll see.)

Thanks again,

- Boo

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 12:56 am
by BarrySumpter
Understand completely.
If the finances are coming out of my pocket I'm very careful conserning longevity.
I got into Valentina from a previous employer on a legacy app who absolutely swore by it.

SQLite is certainly the way to go since its free.
SQLite works on Android as well.
It seems so easy with livecode.
One of the members here on the forum has uploaded a full working example:
http://forums.runrev.com/viewtopic.php? ... RUD#p37397


I had and sometimes still do have a hard time remembering 'Valentina'. ;)
Don't know why.

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 1:52 am
by keithglong
Thanks Barry. FYI: I actually downloaded that example several days ago and have already started experimenting. ;-)

LiveCode is becoming more clear to me now (due, I suppose, to my knowledge of other IDE's), but I still have a LONG way to go. But it is so much fun!

Cheers from Florida,

- Boo

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 5:59 pm
by DaltonCalford
I have tested various databases in production environments and hands down, firebird is the fastest. I have compared it to DB2, Oracle, MSSQL and various opensource DB's.
The biggest plus with firebird is that you can have queries on the server which in turn can connect to other databases on remote servers without the clients interaction.
This is a very simple way to set up a redundant multi-tier system without having to write any code in the client or depend upon any client side custom support.

The drawback is livecode's lack of native support for Firebird or JDBC.

I have been able to connect with ODBC on windows and I am learning how to setup ODBC on linux, but it would be great if there was some form of native support.

Unfortunately, I am still an absolute beginner with Livecode so although I do know the wire protocol and local library api for firebird, I have no understanding of what is happening on the livecode side to make the firebird appear as a native database for livecode.

So, fastest database = firebird, drawback = no native livecode support.

Firebird is opensource and the livecode people could compile the driver directly into their engine if they wished.

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 8:41 pm
by keithglong
Hi Dalton,

Thanks for the info.
Firebird is opensource and the livecode people could compile the driver directly into their engine if they wished.
Have you sent a request to RunRev about this?

Thanks,

- Boo

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 9:04 pm
by DaltonCalford
I asked about firebird support, even going so far as to ask what it would cost to add the support - they said that they did not have the resources.
If a third party has the skills to take on the project, I would be willing to contribute.

Re: What is the fastest Database?

Posted: Wed Jul 27, 2011 11:06 pm
by BarrySumpter
DaltonCalford wrote:...I asked about firebird support...
How long ago was that?

And does FireBird work on Android?

Re: What is the fastest Database?

Posted: Thu Jul 28, 2011 4:13 pm
by DaltonCalford
BarrySumpter wrote:
DaltonCalford wrote:...I asked about firebird support...
How long ago was that?

And does FireBird work on Android?
I have had a few emails/chats with various individuals at runrev. I have been told that it has been added as a discussion item for their morning meeting. I also asked for documentation so that I could add support for firebird if possible.

There are different ways firebird is supported on android. One way is a class 4 JDBC driver (the java equivalent to ODBC). Class 4 drivers talk directly over the wire without any need for dll's or .so's on the local machine. They also are looking at mono.net on android. As firebird is open source and has a full embedded library, they could link it into their own engine natively, having it part of their build script for the various platforms. Right now, no-one that I know of is making a full server port of firebird to run on android, but, they may be doing so.

best regards

Dalton