Какой самый легкий / быстрый способ доставки данных на мобильные устройства? - PullRequest
1 голос
/ 09 октября 2011

Я ищу методы, которые позволяют доставлять данные пользователю. Это может быть от XML до плоской БД с реляционной БД.

Эта БД будет сохранена на сервере и будет обслуживать портативные устройства, смартфоны и планшеты по запросу. Моя главная задача - скорость отображения запрошенной информации в миллионах строк и простота обновления данных.

Прежде чем опубликовать это, я сделал несколько поисков в Google, указывающих мне на SQLite. Что вы думаете об этом?

Ответы [ 3 ]

1 голос
/ 09 октября 2011

Если вы имеете дело с миллионами строк и хотите отображать небольшие выборки за раз (что-либо еще вряд ли возможно) на мобильных устройствах, вам определенно следует выполнить обработку на стороне сервера, лучше всего с использованием СУБД.Они сделаны для обработки миллионов строк.Sqlite быстр и прост, но в диапазоне миллионов строк вам лучше обратиться к PostgreSQL или одному из коммерческих брендов (Oracle, MS SQL server, ..).

Вы можете использоватьвеб-сервис или прямой доступ к базе данных, что зависит.Вы можете выполнить некоторую обработку локально, но выбор строк должен выполняться на сервере.

1 голос
/ 09 октября 2011

Возможно, вам лучше настроить службу SOAP / XML-RPC, обрабатывать данные на сервере и отправлять их клиентским частям за раз, кэшируя по ходу работы. Это будет потенциально самый быстрый способ, так как вам не нужно передавать большой файл на контроллер. Это может не сработать, но стоит упомянуть.

По сути, это просто загрузка файла, заключенная в скобки путем вывода в транспортный формат и ввода в хранилище данных мобильного устройства. Я полагаю, вы описываете что-то вроде словаря, что-то довольно статичное.

Подход, которого вы хотите достичь, должен:

  1. Учитывайте общий размер файла, т. Е. Используйте как можно меньше мета-описания, чтобы передать смысл данных.
  2. Использование некоторого типа сжатия (например, gzip) данных между сервером и устройством. Учтите, что агрессивное сжатие может занять больше времени на устройстве для распаковки и может привести к снижению производительности при менее агрессивном подходе, который значительно быстрее.
  3. Примите во внимание, как данные будут поступать из хранилища вашего сервера (находится ли он в базе данных? Можно ли кешировать данные в транспортную форму?) В систему хранения данных устройства (например, SQLite). Излишнее сжатие скорости передачи может в конечном итоге привести к обратным результатам, если устройству приходится работать в три раза дольше, чтобы вставить данные, чем время, которое было сэкономлено при загрузке на устройство.
  4. Test. Тестовое задание. Тест.

Вы можете использовать его как файл в формате CSV или JSON, который очень минималистичен; они не используют много данных для описания данных. XML не самый быстрый, потому что он, как правило, очень описательный, но имеет и другие преимущества. Другим вариантом может быть отправка текстового файла с инструкциями вставки SQL.

Другой «вариант», конечно, может заключаться в использовании механизма обновления и его выдаче в качестве «обновления». Я думаю, что многие люди с мобильными устройствами знают, что обновления занимают много времени и часто загружаются очень часто, поэтому при этом они подключаются к своему компьютеру. Это просто мысль; Я не уверен, будет ли это на самом деле лучше, но подумал, что я это выброшу.

SQLite - это СУБД, которая работает на многих мобильных платформах. У него есть свои ограничения, но это может быть все, с чем вам придется работать. Это хороший вариант.

1 голос
/ 09 октября 2011

если вы хотите, чтобы мобильные устройства выполняли действия над данными (например, автономную обработку), я думаю, что sql lite - это путь.

, если обработка все равно будет происходить в сети, и мобильное устройство будет наиболеедля отображения и будет в среде, где вы «всегда» онлайн, тогда Web-сервисы для запроса и обработки данных, а затем бэкэнд-сервер SQL будет путь к

В слезах preformance это так: много данных = много онлайн-трафика, так что если на самом деле много данных, как вы сказали, миллионы строк, то я думаю, что офлайн - это путь, иначе трафик просто убьет преформанс

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...