Page 1 of 1

eMailDesktop - uses filesystem as database

PostPosted: Mon Nov 28, 2016 11:22 pm
by Otto
eMailDesktop

Searching for a possibility to store the emails I came to the solution to use the Filesystem (Not a Database!) for schemaless data


I found an interesting post.

I always love coming to these forums and reading all the heavy database gurus pitching that the file System can't do it as quick as the Database. On quite the contrary a properly layed out tree, well designed hashtables and saving them as an object to a file will yield the same speeds as a database and from my tests. A properly designed hashtable and directory tree will win everytime. Way less overhead. Recently I have been moving away from database driven programming and more on the file tree for simplicity and program portability. No DB means easy backup just zip your tree up and go. It is very nice and a recomendation to program in this fashion for onetime clients with small applications. Look at the big pic do I have the time to design my own or just leverage what is already there like the db. I personally like saving my objects to file and using them later just keep an eye on your the size of your tables and look into using a RandomAccessFile in order to be able to seek quickly lay it out like a database and break it up into hashtable objects. Enjoy. Remember what ever data you store in the file will consume double the memory usage at times depending on your code. The hash table itself and typically where you consume it to view.


Does someone know how to implement such a hashtable?

Thanks in advance and best regards,
Otto

Re: eMailDesktop - uses filesystem as database

PostPosted: Tue Nov 29, 2016 10:19 am
by Otto
FullTextSearch engine

I found a program which looks promising https://www.fileseek.ca .

I read in the FAQ that it should be possible to operate from command line.
So I think I could pass the search options from FIVEWIN and get back a file with the results.

BTW does someone use fileseek.

Best regards,
Otto

If you pass a folder name to fileseek with no switches, FileSeek will treat that the same as -d. To pass a command line parameter value that includes spaces use quotes, like this: -d "C:\My Folder". Here is the complete list of command line parameters:
Set Search Directory: -d [path] (separate multiple paths with the | symbol)
Set Exclude Directory: -xd [path] (separate multiple paths with the | symbol)
Set Include Files Filter: -f [files] (separate multiple file filters with the | symbol)
Set Exclude Files Filter: -xf [files] (separate multiple file filters with the | symbol)
Set Query: -q [query]
RegEx Query: -r [query] (use this instead of -q if you want to do a RegEx search)
Load Search Profile: -l [profile name] (This starts FileSeek with the specific Profile. Any other command to modify search criteria happens after this, so you can load a profile then modify the criteria. This is only available to Pro users.)
Output Results to File: -o [filename] (This option loads FileSeek, starts a search, and outputs a file with the filename the user specified with the search results to the specified folder, then closes FileSeek. You can specify .csv, .html or any other extension for a text file. This is only available to Pro users.)
Execute the Search: -start


Re: eMailDesktop - uses filesystem as database

PostPosted: Fri Dec 02, 2016 1:44 am
by Otto
Hello,
FileSeek is working fine.
Calling with Parameter 0 it works without showing a window.
FileSeek returns a csv file.

Best regards,
Otto


Code: Select all  Expand view

function suchestarten()
    local cPrg := ""
    cPrg := 'c:\FileSeek\FileSeek.exe -d "c:\#    DEMODATEN" -f kunden.dbf -r "Franz" -o C:\FileSeek\Lookup.csv -start'

    winexec( cPrg,0 )

return nil

//----------------------------------------------------------------------------//
 

Re: eMailDesktop - uses filesystem as database

PostPosted: Tue Dec 06, 2016 12:49 am
by nageswaragunupudi
May I know in what way fileseek is different from the popular grep?

C:\bcc7\bin>grep ?
Turbo GREP 5.6 Copyright (c) 1992-2010 Embarcadero Technologies, Inc.
Syntax: GREP [-rlcnvidzewoqhu] searchstring file[s] or @filelist

Options are one or more option characters preceded by "-", and optionally
followed by "+" (turn option on), or "-" (turn it off). The default is "+".
-r+ Regular expression search -l- File names only
-c- match Count only -n- Line numbers
-v- Non-matching lines only -i- Ignore case
-d- Search subdirectories -z- Verbose
-e Next argument is searchstring -w- Word search
-o- UNIX output format Default set: [0-9A-Z_]
-q- Quiet: supress normal output
-h- Supress display of filename
-u xxx Create a copy of grep named 'xxx' with current options set as default

A regular expression is one or more occurrences of: One or more characters
optionally enclosed in quotes. The following symbols are treated specially:
^ start of line $ end of line
. any character \ quote next character
* match zero or more + match one or more
[aeiou0-9] match a, e, i, o, u, and 0 thru 9 ;
[^aeiou0-9] match anything but a, e, i, o, u, and 0 thru 9

Re: eMailDesktop - uses filesystem as database

PostPosted: Tue Dec 06, 2016 8:37 am
by Otto
Dear Mr. Rao,
I didn‘t even know that there is a tool for fulltext search inside bcc\bin folder.
So I can’t tell anything about.
BTW, can you search with grep inside WORD files?
Best regards,
Otto

Re: eMailDesktop - uses filesystem as database

PostPosted: Tue Dec 06, 2016 9:43 am
by nageswaragunupudi
any file

Re: eMailDesktop - uses filesystem as database

PostPosted: Sat May 25, 2024 9:57 pm
by Otto
Hello friends,
I am reprogramming my DMS. At that time, I integrated several components.
This makes it somewhat difficult to expand and maintain the program. Therefore, today I started reprogramming the container for the individual documents.
Now you can easily store images, text, or tables there and zoom in by double-clicking.
Best regards,
Otto

Image

Image