В Azure Web App Мне нужно эффективно запросить MaxMind GeoIP2 City Database (из-за объема запросов и требований к задержке мы не можем использовать API останова MaxMind).Как хранить (и запрашивать) базу данных MaxMind GeoIP2 в Azure?
Мне интересно, какой лучший способ хранения db (двоичный формат MMDB, доступ к которому осуществляется через official .NET api), так что его легко обновить с минимальным временем простоя (мы собираемся подписаться на ежемесячные обновления) и по-прежнему экономически выгодны Что касается хранения и транзакций Azure.
Очевидно, что блочные капли - это путь, но я не уверен в ежемесячных обновлениях и факте, что GeiIP2 api загружает в память весь db (я не знаю, было ли это проблемой для Интернета App, если мне нужен веб-рабочий, чтобы поддерживать его, или мне нужно что-то еще), но на самом деле я еще не знаю, насколько большой файл.
Какое наиболее экономичное решение, которое обеспечивает низкую задержку в огромном объеме?
экономичным решением будет хранение в виде лазурного стола. если вы можете получить компиляцию rightkeykey rowkey, то не должно быть проблемой. я не уверен в том, в каком формате вы получите db. Если это csv, я столкнулся с этой библиотекой, которая облегчает хранение данных csv в хранилище таблиц azure. https://blogs.msdn.microsoft.com/jmstall/2012/08/03/converting-between-azure-tables-and-csv/ – Aravind
@ Aravind - Я не вижу, как хранилище таблиц решает проблему хранения файл двоичной базы данных. Я не думаю, что речь идет о преобразовании контента из одного формата в другой. Даже используя версию csv, вам все равно придется копировать данные из хранилища таблиц на локальный диск, чтобы использовать его содержимое через api. Также: Хранилище таблиц и хранилище blob имеют одинаковую стоимость за каждый GB. –
@ Давид справа. В любом случае вам все равно придется обновлять базу данных, когда и когда источник предоставит вам обновление. Если он двоичный, то блоком blobs является опция. также не думайте, что загрузка всего db в память - хороший выбор. – Aravind