Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak przechowywać unikalny identyfikator rejestracji GCM w MySQL?

  • Do przechowywania samego identyfikatora rejestracji lepiej jest użyć kolumny VARBINARY(4096). Jest bardziej wydajny niż TEKST, jeśli zakodujesz identyfikator rejestracji za pomocą wydajnego zestawu znaków (takiego jak UTF-8).

  • Aby wyszukiwanie było efektywne, powinieneś mieć jeszcze dodatkową indeksowaną kolumnę hash (BINARY(32)) - używamy SHA-256 algorytm skrótu, aby uzyskać 32-bajtowy skrót z identyfikatora rejestracji. Kolumna mieszająca nie musi być unikatowa. Kolizje powinny być bardzo rzadkie, a nawet jeśli wystąpią, zapytanie da ci niewielką liczbę identyfikatorów rejestracji, które mają ten sam skrót, więc nie zaszkodzi wydajności testowanie w kodzie Java, który z nich (jeśli w ogóle) faktycznie pasuje do identyfikatora rejestracji, którego szukasz.

  • Jeśli zdecydujesz się na przechowywanie unikalnego identyfikatora urządzenia i wyszukiwanie na jego podstawie, sugeruję przypisanie własnego identyfikatora do każdego urządzenia. Tym identyfikatorem może być (na przykład) BIGINT (długi w java). Możesz wymagać, aby aplikacja wywoływała Twój serwer w celu uzyskania unikalnego identyfikatora przy pierwszym uruchomieniu. Możesz przechowywać go w zewnętrznej pamięci urządzenia, dzięki czemu urządzenie, na którym aplikacja zostanie odinstalowana, a następnie ponownie zainstalowana, będzie nadal mieć ten sam identyfikator.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać drugą MAKSYMALNĄ DATĘ w MYSQL?

  2. mysql konwertuje wiele wierszy na kolumny w jednym wierszu

  3. WebApp (Tomcat-jdbc) Połączenie z pulą bazy danych zgłaszające wyjątek porzucenia

  4. Wydajność Hibernate, JDBC i Java na średnim i dużym zestawie wyników

  5. uzyskać sumę za limit w mysql przy użyciu tego samego zapytania?