I have a database with some 75 k individuals, some 200 k events and so on. The wonderful Narrative Web Report creates more than 300 k single files (mostly static html files with some script code). My hoster refuses to host more than 260 k files, so I have an obvious problem. Is there any way to solve it? An obvious solution I can think of, would be to stuff all those static html files into a database and to serve them from the database instead of the file system.
Not sure if it will work but check if the host supports serving gzipped (*.gz) webpages if so use the first Reports options tab option [ ] Store web pages in .tar.gz archive at the top of the report to create the file or manually gzip the file?
Ah, I guess, we have a misunderstanding. The hoster has a quota and that says that I cannot have more than 260 k files on my web space (actually nobody can). So if I unzip the uploaded archive (which I have to do since all the anchors point to unzipped files), I’d still end up with my 300+ k files and my problem is still the same.
There is no way to overcome this limitation in the present Narrative Web implementation.
The idea to extract data from the DB is the right path, so you could end up with only a few pages (one per “category”). But once again, you can’t do it in the present Gramps implementation model: the DB contains opaque Python objects whose details (fields) are not exposed. This means you can’t use frameworks like Django to access directly the DB. You would have to reimplement practivally Gramps in its entirety.
You could connect to the internet as a server. If you’re brave enough and skilled in computer security, this is a workaround.
For 75k individuals, you’ll have 75k files per language.
The same things for events. You can always try to not include event pages.
If you still have problems, use the dynamic web. you will have fewer files but they will be larger.
You could try filtering out some of the events. Obviously, you want to keep Birth/baptism, Marriage/Divorce and Death/Burial. You could exclude Census, Occupation, etc.
You could exclude photos or images of documents.
Are there notes that could be combined?
I already use it but the Narrative has its specific advantages …
Thanks for the idea but that’s exactly what I do not want to do. The idea is to create a kind of encyclopedia for the region I’m working on, so I need all the events and notes. I do not include any media files.
Oh, my courage (or more precisely: overestimation of myself) is not big enough … ![]()
I’m fully aware of the fact that the current implementation of the report does not allow to walk on this path. A very vague idea would be to replace all the anchors in the current report files on my local disk pointing to the 300 k static HTML files with a function call that will request the file from a database. That’s not elegant of course and quite brute force, but a work-around until somebody is willing to rewrite the report. I guess the code necessary for that would be quite trivial: look for anchors like
<a href="../../../plc/0/9/1bb821c7f5cf4f509c33596d4accc190.html" title="...">
and replace those with the function call.
Any other idea?
if you don’t want the event pages, events and notes are always included in persons, families…
Ah, I see your point now. I could forgo the separate event and note pages but would keep all their information in the other pages, right?
My database is similar in size and I had the same problem with the hosting service I used to use.
I got around it by not including event pages. I personally didn’t find them all that useful when I tried them. And I still don’t use them even though I have a new service that could use them.
You can save a few pages by setting the Max rows in an index: (HTML options tab) to 2000. @SNoiraud could a higher number be manually set?
Isn’t this what Gramps Web does?
At the end of the day, one could say that the Narrative and Dynamic Web Reports are kind of a Gramps Web installation in Read-Only mode based on simple static HTML pages without the overhead. But I guess, at that point the comparison should end …
It is. But the administration on a Gramps Web databaseself-hosting requires far more technical skillsthan a Narrated Website.
Those requirements are lower (but still significant) for the GrampsWeb.org paid service. (Where much of the admin is done for subscribers.) But publishing that number of ancestors is a much higher monthly fee.
I checked with David some time age when he was just starting the service. At THAT time he was not sure if such a large database would be supported. I guess things have changed very much in the meantime, but from my point of view, it doesn’t make much sense to use a full blown Gramps Web installation for a simple read-only presentation.
Yes. When I set this value to 2000, it’s because 26 letters * 2000 = 52000
To increase this value, simply change 2000 into the following line 2258:
self.__splitindex = NumberOption(_(“Max. rows in an index”), 500, 10, 2000)
If you want 5000, you’ll have
self.__splitindex = NumberOption(_(“Max. rows in an index”), 500, 10, 5000)
This was the solution but I noticed another problem. I choose to include Openstreetmap on the location pages but there is only an empty frame. Do I need something else (e g an API key)?