3 ms·
I recently started using intelliJ's datagrip. For some reason, it stores its metadata in xml files, 150Mb or so per database. One postgres DB cluster it actual
by hyperman1 4y ago
I recently started using intelliJ's datagrip. For some reason, it stores its metadata in xml files, 150Mb or so per database. One postgres DB cluster it actually refuses to index unless I select only some of the DBs in it. Mind you, these databases are not particularly big, e.g. 17GB for the cluster it doesn't want to index.
When it starts up, it loads all this metadata in memory. You feel the laptop being slow for a minute or so. After that, its mostly a good tool. Once in a while, it indexes something and grants you another coffee break.
I keep wondering, why XML? If you build this much metadata, wouldn't it make a lot more sense to store it in a database itself, and only load what you need from it? Say sqlite or h2 or something.
- bayindirh 4y agoMy guess it started relatively small, and more features added over time to the feature, and they never thought changing about the XML part. Another thing is, XML can be converted to objects and vice-versa relatively easily, so it is a neat serialization format in nature. Also, parsing XML fast is a solved problem for the most part. I have worked with relatively big XML files, and when done right, the path is not heavy, at all. Edit: Oh, Considering this is IntelliJ and Java talks XML natively, this might also played a role in this being XML.
- hyperman1 4y agoNot complaining about the xml vs json vs yaml vs csv thing. It's more that when you choose XML, you've chosen streaming and reading it completely. There is no way to read it partially and only use the little bit needed.
- bayindirh 4y ago> ...when you choose XML, you've chosen streaming and reading it completely. That part is pretty true. I didn't use XML in a case where I didn't need to read it completely and transform to objects, yet. I'd not choose XML in these cases probably, if I ever encounter such a case.
- cerved 4y agoDataGrip isn't perfect but it's radically changed how I work with SQL. It makes writing queries so incredibly easy, with a god mode autocomplete. JOINs are so easy <3 Does anyone knows of vim or emacs plugins that do similar heavy lifting? Preferably decent at T-SQL