Hexagon Tiles

Hi! I'm working on my thesis which consists of creating a Web Page (on a python backend) with a very large hexagonal tile with milions of interactible hexagons.

The hexagonal tile will represent a very large map that can be seen on multiple granularity levels and that can be extended by a comunity over time.

I was thinking that I could use the same model as Uber's H3 library which uses a sort of hierarchical clustering to represent hexagons on a given zoom level but I don't know if this is a good idea.

I was also thinking about using a simple class which would then convert to a ProtoBuf format which I could send to my web server and to clients to minimize network traffic and space. The server could then save this ProtoBuf to a SQL database to store the hexagons. Here's the .proto file I'm using for reference.

```

syntax = "proto3";
message Hexagon {
int32 map_id = 1;
int32 hexagon_id = 2;
repeated int32 position_relative = 3;
repeated int32 position_absolute = 4;
string image_url = 5;
string hexagon_type = 6;
string hexagon_size = 7;
string hexagon_shape = 8;
repeated Contour contours = 9;
string created_at = 10;
string updated_at = 11;
message Contour {
string type = 1;
string id = 2;
}
}

```

Is there any other formats I could use? I compared JSON, BSON, XML, CSV, MessagePack, Avro and ProtoBuf and the latter sounded the best for my situation.
I'm worried about the efficiency of my project since I'm dealing with a lot of information with interactivicy (hence the ProtoBuf) and don't want to ruin the user's experience.

Is there any advice you could give me?

Thanks in advance kind strangers.