Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 596
#1

Синхронизация баз данных через облако - Программирование Android

11.01.2015, 02:48. Просмотров 1051. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Имеется несколько баз данных на разных ОС, включая Android, беда в том, что есть локальная и удаленная БД.
И нужен какой-то однозначный способ нумерации строк, чтобы при слиянии в момент синхронизации локальных БД на разных устройствах, возможно, даже ОС, гарантированно не повторялись идентификаторы (ID).
Решил ввести ячейку, в которую при первом создании строки прописывается timestamp, но не знаю, на сколько это удачное решение, я не особо осведомлен, одинаково ли работает отсчет времени на разных машинах?
Кто сталкивался? Какое рациональное решение можно применить для получения уникальных ID на разных машинах?
Заранее благодарю за помочь!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2015, 02:48     Синхронизация баз данных через облако
Посмотрите здесь:

Синхронизация баз данных на клиенте и сервере - Программирование Android
Здравствуйте, подскажите как реализовать простенькое клиент-серверное приложение в котором при редактировании бд сервера автоматически...

"Синхронизация" баз SQLite двух устройств - Программирование Android
Добрый вечер, у меня такой вопрос к знатокам: возможно ли реализовать "синхронизацию" между двумя устройствами, имеющих отличные друг от...

Запрос данных по ID из нескольких баз данных - Программирование Android
Доброго времени суток. Суть вопроса: есть две готовых таблицы: text и buttons, подключенные к проекту. В таблице text поля(тип):...

Возможно ли создание двух баз данных - Программирование Android
Возможно ли создание двух баз? А так же как скажеться на производительности такое решение. Одна база данных заполнена, а другую...

Взаимодействие баз данных на сервере и мобильном устройстве - Программирование Android
Здравствуйте, необходимо найти информацию по теме что в шапке написана. Вообще все что можно о технологиях доступа к удаленным данным ещё...

Синхронизация данных приложения между устройствами - Программирование Android
Здравствуйте! Необходимо осуществить синхронизацию данных приложения на разных устройствах пользователя, т.е. есть бд, нужно, чтобы когда...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
krapotkin
2474 / 2351 / 596
Регистрация: 14.04.2014
Сообщений: 11,315
Записей в блоге: 1
11.01.2015, 10:17     Синхронизация баз данных через облако #2
задача репликации и слияния БД.
общее решение состоит в том, чтобы не зависеть от ID в разных БД
перенося данные в другую БД, мы даем им другие ID
задача сводится к контролю ссылок по этим ID
если таблица 2 ссылалась на ID в таблице 1 и ID=M то, при замене его на N, это значение нужно изменить в обеих таблицах

для конкретных случаев можно придумывать конкретные алгоритмы, чтобы "сэкономить"
например, если можно выделить натуральный, не абстрактный ключ в таблице, можно пользоваться им для слияния баз

еще более удобный способ - делать изначально БД в облаке и обращаться к ней со всех систем
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
11.01.2015, 10:23     Синхронизация баз данных через облако #3
Может сделать разные правила генерации ID? Например локально ID задаются начиная с 5 с шагом 10, в облаке начиная с 10 с шагом 10. Т.е. все локальные ID будут 5, 15, 25 и т.д., а в облаке 10, 20, 30 и т.д., таким образом они гарантировано не пересекутся.
krapotkin
2474 / 2351 / 596
Регистрация: 14.04.2014
Сообщений: 11,315
Записей в блоге: 1
11.01.2015, 10:30     Синхронизация баз данных через облако #4
тоже вариант
решение конкретно под случай всегда выгоднее решения в общем виде

а что делать если два андроид устройства передают данные?
как их отличать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2015, 10:41     Синхронизация баз данных через облако
Еще ссылки по теме:

Правильное проектирование баз данных при очень частом обращении - Программирование Android
Пишу мессенджер и в истории переписок в адаптере очень часто вызывается последнее сообщение для каждого чата и база данных садится, какие...

Android + БД + Облако - Программирование Android
Нужно написать приложение, которое будет взаимодействовать с БД в облаке через интернет. Посоветуйте, как лучше организовать данную...

Как хранить данные в интернете (хостинг, облако)? - Программирование Android
Здравствуйте , уважаемые программисты! Не могли бы вы мне помочь? Как хранить данные андроид приложений в интернете? Что лучше...

Передача данных через bluetooth - Программирование Android
сразу скажу я новичок в программировании так что не судите строго о моем вопросе. допустим нужно сделать приложение которое запускает...

Ввод данных через AlertDialog - Программирование Android
Здравствуйте уважаемые программисты, подскажите пожалуйста как сделать панель ввода данных Такую чтобы когда я ввел в editText число 2...

Передача данных через Intent - Программирование Android
Не разобрался каким образом можно передать данные через Intent. Во втором классе void startChat(){ clientThread = new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Kastaneda
Форумчанин
Эксперт С++
4514 / 2856 / 228
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
11.01.2015, 10:41     Синхронизация баз данных через облако #5
Цитата Сообщение от krapotkin Посмотреть сообщение
а что делать если два андроид устройства передают данные?
Ну да, тут не известно как у ТС это все организовано. Два устройства еще можно различить, но может быть и 10000 андроид устройств. Можно еще в качестве primary key UUID использовать (или даже GUID), но это не хорошо для primary key, но зато досточно уникально.
Yandex
Объявления
11.01.2015, 10:41     Синхронизация баз данных через облако
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru