Szukałem w całym internecie, ale nie mogłem znaleźć odpowiedzi. Chcę używać Aurora, ponieważ jest tańszy i lepszy niż dynamodb AWS, więc jest jakiś sposób, w jaki mogę użyć Androida SDK, aby połączyć się z Aurora RDS lub Simple MySQL RDS z aplikacją mobilną. Dzięki!

Edytuj:

Uwaga: Nie chcę łączyć bazy danych bezpośrednio za pomocą aplikacji mobilnej, po prostu chcę poznać procedurę korzystania z RDS autorstwa AWS z wersją Android lub IOS

I według tańszych, miałem na myśli to, co czytam z bloga, https://abhishek-tiwari.com/dygnamodb-or-aurora/

To mówi:

Dzięki współczynnikowi odczytywania / zapisu 50/50 spodziewamy się 130 000 przepustowości na sekundę. Będzie to 65 000 odczytu lub pisać na sekundę tylko za 3340 $ miesięcznie przy użyciu największej instancji Aurora. Teraz, aby osiągnąć ten sam rodzaj przepustowości o silnej konsystencji, Amazon Dynamodb będzie kosztować około 39 995 $ miesięcznie. oznacza to, że przepustowość dynamodb jest 11 razy bardziej kosztowna niż Aurora . W skrócie, przepustowość Aurora jest bardzo opłacalna.

-1
Sahaj Rana 2 czerwiec 2018, 21:54

3 odpowiedzi

Najlepsza odpowiedź

Dobrze, że nie znalazłeś odpowiedzi.

TL; Dr: Nie próbuj zezwalać na aplikację do bezpośrednio Connect do serwera bazy danych.

Powody, dla których jest to bardzo zły pomysł, jest wielu, ale krótka wersja jest to, że niepotrzebnie ujawnia bazę danych, zapewnia klientowi (który nigdy nie może być zaufany) z jakąś formą poświadczeń bazy danych, a nie będzie skalowany, ponieważ Połączenia klienckie muszą być trwałe (z których każda zużywa pewną ilość zasobów serwerów skończonych, nawet gdy bezczynności) lub musi być wielokrotnie tworzony i zniszczony (bardzo nieefektywny).

Aby korzystać z Aurora, innych wariantów RDS lub dowolnej podobnej bazy danych z aplikacji, musisz utworzyć i odsłonić interfejs API usług internetowych, który umożliwia aplikację do wykonywania autoryzowanych działań wobec bazy danych.

Historycznie przeprowadzono to z serwerami aplikacji, ale przykładem, w jaki sposób możesz wykonać to "Serverless", byłoby stworzenie jednej lub więcej funkcji Lambda do interpretacji żądań JSON z aplikacji, kapsułkowanie odpowiedniej logiki, łączącej się z bazą danych, I renderowanie odpowiedzi JSON dla wniosku o spożywanie ... i za pomocą bramy API, aby odsłonić funkcję Lambda do Internetu do uwierzytelnionego dostępu przez aplikację.

1
Michael - sqlbot 2 czerwiec 2018, 19:38

Zaktualizuj odpowiedź na podstawie tej edycji op.

Uwaga: Nie chcę łączyć bazy danych bezpośrednio za pomocą aplikacji mobilnej, po prostu chcę poznać procedurę korzystania z RDS autorstwa AWS z wersją Android lub IOS

Opracuj funkcje Lambda AWS, korzystając z wybranego języka programowania i połączyć się z instancją RDS.

Idź z Amazonami Serverless Model aplikacji (SAM), aby odsłonić API Gateway Endpoints do aplikacji mobilnej. Wszystkie punkty końcowe są kopiowane przy użyciu wyżej wymienionej funkcji Lambda.

Możesz dostosować limity czasu, ustawienia pamięci, buforowanie itp., Aby dopasować swoje wymagania i chronić zasoby za pomocą różnych Autoryzatory lub baseny użytkownika.

1
H6. 4 czerwiec 2018, 08:42

Zamiast po prostu zrywać z komentarzy, myślę, że będzie uczciwe, aby odpowiedzieć:

  1. Zdefiniuj swój Case. Jakie dane zamierzasz przechowywać? Czy to dane zorganizowane lub dane nieustrukturyzowane? Czy to przesyłanie strumieniowe? Określa to i kieruje Cię do właściwego przechowywania danych. Który w konkretnym przypadku AWS oznacza coś takiego jak Aurora (lub inne silniki RDS), dynamodb, lub nawet kinesis. Ten ostatni nie jest nawet silnikiem Sklepu danych, ale pokazuje, że Twoje dane określa, do czego należy użyć.

  2. Inni już wskazali, że nie powinieneś narażać dB bezpośrednio. Niezależnie od tego, czy używasz instancji pośrednich Front-End, z "zwykłymi" pułapkami, takimi jak ELB, EC2, auto-skalowanie, czy chcesz po prostu z przodu API, który kierowałby Cię w kierunku bramy API.

  3. Brzmi jak twoja firma rzuca cię w głębokim końcu, oczekując, że nauczysz się pływać w szorstkim prądu oceanu. Zdecydowanie doradzam, aby uzyskać szkolenie, w tym praktyczne. Niezależnie od tego, czy zajmuje cię, że ścieżka certyfikacyjna zależy od Ciebie, ale musisz dostać wystarczająco dużo podstaw, aby nawet zrozumieć mnóstwo ruchomych części w AWS. Może być całkowicie oszałamiający!

Niestety, ta odpowiedź w prawie żaden sposób bezpośrednio odnosi się do rzeczywistego tematu w pytaniu! I tak dałem, ponieważ myślę, że ważne jest, abyś wrócił do rzeczywistych podstaw, abyś mógł przeformułować problem i pytanie lepiej.

0
Marakai 3 czerwiec 2018, 00:06