Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

testing generic table #3

Open
miekg opened this issue Aug 11, 2017 · 6 comments
Open

testing generic table #3

miekg opened this issue Aug 11, 2017 · 6 comments

Comments

@miekg
Copy link

miekg commented Aug 11, 2017

I might be worth testing with a database that stores the rdata in a generic way and sees how much that impact the performance.

What this generic rdata should look like is an interesting question, esp. coming from CoreDNS that uses go-dns for internal representation. May use https://golang.org/pkg/encoding/gob/ ?

This request comes mostly from my spider sense going off when you need to "upgrade your database" to implement a new record.

@thoro
Copy link
Contributor

thoro commented Aug 11, 2017

For that I would also suggest some kind of cli utility to insert into the database

@miekg
Copy link
Author

miekg commented Aug 11, 2017

yep. Or, at the least, a converter.

Within the context of CoreDNS we should aim to keep it read-only, so another process fills the database (from an AXFR/IXFR?) and multiple coredns instances serve from it

@thoro
Copy link
Contributor

thoro commented Aug 11, 2017

Yep, definitly external to Coredns, but using your dns library with all the objects in there.

A mapper/encode could take out the common columns, and build a wrapper object around with created_at / updated_at / zone/ id information

@miekg
Copy link
Author

miekg commented Aug 11, 2017

yes, at least that what I'm thinking here. You basically have a dns.MsgHeader on file in the rdata by decoding the Gob for this specific RR.

@thoro
Copy link
Contributor

thoro commented Aug 11, 2017

for that I would think about a config option:

schema explicit = every record has a separate table
schema compressed = single records table

so you can decide what you prefer

@miekg
Copy link
Author

miekg commented Aug 11, 2017

Sure, it's your code :) I just think a generic database is easier from an ops standpoint.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants