Google Bigtable vs BigQuery pour stocker grand nombre d'événements
Fond
Nous tenons à conserver notre immuable des événements dans un (de préférence) de services gérés. Taille moyenne d'un événement est de moins de 1 Ko et nous avons entre 1 et 5 événements par seconde. La raison principale pour le stockage de ces événements est d'être capable de les relire (peut-être à l'aide du tableau de numérisation) une fois que nous avons créer de futurs services qui pourraient être intéressées par ces événements. Puisque nous sommes dans le Google Cloud nous sommes évidemment à la recherche sur les services de Google comme le premier choix.
Je soupçonne que Bigtable être un bon ajustement pour cela, mais selon la calculateur de prix ça va nous coûter plus de 1400 USD par mois (qui pour nous est un grand deal):
À la recherche de quelque chose comme BigQuery rend un prix de 3 USD par mois (si je ne suis pas manque quelque chose d'essentiel):
Même si un schéma de base de données serait mieux pour nous serait bien avec essentiellement le stockage de nos événements, comme un blob avec certaines métadonnées.
Questions
Pourrions-nous utiliser BigQuery pour ce lieu de Bigtable pour réduire les coûts? Par exemple BigQuery a quelque chose qui s'appelle streaming inserts qui me semble être quelque chose que nous pourrions utiliser. Est-il quelque chose qui va nous mordre à court ou à long terme que je ne pourrais pas être au courant de si vous allez en bas de cette route?
BigQuery est optimisé pour le stockage à long terme et de l'analyse, BigTable pour une utilisation intensive par une application en ligne,
Pas sûr, mais pourrait avoir des limites en termes d'opérations. E. g pense que vous ne pouvez faire comme 1k ajouter à un tableau par jour (c'était un BQ limite api j'ai frappé tout à l'heure). Bien que je pense de l'api en continu est plus indulgent. Juste peut-être une autre dimension à prendre en compte.
OriginalL'auteur Johan | 2015-12-23
Vous devez vous connecter pour publier un commentaire.
Bigtable est idéal pour les grands (>= 1 TO) mutable ensembles de données. Il a une faible latence sous la charge et est géré par Google. Dans votre cas, je pense que vous êtes sur la bonne voie avec BigQuery.
OriginalL'auteur Solomon Duskis
La coût global se résume à comment vous aurez souvent à "interroger" les données. Si c'est une sauvegarde et vous n'avez pas de relecture des événements trop souvent, ça va être très bon marché. Toutefois, si vous avez besoin de les relire une fois par jour, vous commencez à le déclenchement de l'5$/TB numérisés trop facilement. Nous avons été surpris trop comment pas cher, inserts et de l'entreposage ont été, mais c'est l'ofc parce que Google attend de vous que vous exécutez des requêtes cher à un certain point dans le temps sur eux. Vous devrez concevoir autour de quelques choses de bien. E. g. Autant que je sache, streaming plaquettes ont pas guarantue est d'être écrit à la table et vous avez à interroger souvent sur la queue de la liste pour voir si il a vraiment été écrit. Filature qui peut être fait de manière efficace avec le temps, la gamme de table de décorateur, bien que (ne pas payer pour la numérisation de tout le dataset).
Si vous n'avez pas de soins sur commande, vous pouvez même liste une table de libre. Pas besoin de courir un "query" puis.
OriginalL'auteur Manuel Arwed Schmidt
FYI
Cloud Bigtable n'est pas une base de données relationnelle; il ne prend pas en charge les requêtes SQL ou des jointures, ni ne prend en charge multi-ligne les transactions.
Aussi, il n'est pas une bonne solution pour les petites quantités de données (< 1 to).
Tenir compte de ces cas:
- Si vous avez besoin de la pleine prise en charge SQL pour un traitement des transactions en ligne
(OLTP) du système, songez à Google Cloud SQL.
Si vous avez besoin de la consultation interactive dans un traitement analytique en ligne
(OLAP) du système, songez à Google BigQuery.
Si vous avez besoin de stocker immuable gouttes de plus de 10 MO, comme les grands
des images ou des films, envisager Google Cloud Storage.
Si vous avez besoin de stocker très structuré objets, ou si vous avez besoin d'
support pour les transactions ACID et des requêtes de type SQL, envisager Cloud
La banque de données de.
C'est en fait une copie & pâte de google bigtable docs
OriginalL'auteur user7305300
Cet organigramme peuvent aider à décider entre les différents Google cloud storage offres (avis de non responsabilité! copier cette image de Google cloud de page)
Si votre cas d'utilisation est une base de données(disons, arrière-plan d'un site web), BigTable est ce que vous avez besoin (il est Encore pas vraiment un OLTP système si) . Si c'est plus d'une analyse de données/datawarehouse, type de but, puis BigQuery est ce que vous avez besoin.
Pense OLTP vs OLAP; Ou si vous êtes familier avec Cassandra et Hadoop, BigTable équivaut approximativement à Cassandra, BigQuery équivaut approximativement à Hadoop (d'Accord, pas une comparaison équitable, mais vous voyez l'idée)
https://cloud.google.com/images/storage-options/flowchart.svg
Veuillez garder à l'esprit que Bigtable n'est pas une base de données relationnelle, c'est une solution noSQL sans fonctions SQL comme JOIN etc. Si vous souhaitez un SGBDR OLTP, vous pourriez avoir besoin de regarder cloudSQL (mysql/postgres) ou clé.
Cloud clé est relativement jeune, mais qui est puissant et prometteur. Au moins, marketing de google affirme que ses caractéristiques sont meilleur des deux mondes (SGBDR Traditionnels et noSQL)
Aspect Coût
Aspect coût est déjà couvert bien ici https://stackoverflow.com/a/34845073/6785908
Je sais que c'est très en retard de réponse, mais l'ajout de toute façon au cas ou ça peut aider quelqu'un d'autre à l'avenir.
OriginalL'auteur so-random-dude
Difficile à résumer mieux que c'est déjà fait par Google - https://cloud.google.com/bigtable/docs/
Vérifier Cloud Bigtable et d'autres options de stockage section
Je pense que vous avez besoin de comprendre comment vous allez utiliser (replay) de vos données (événements) et cela peut vous aider dans la prise de décision finale.
Jusqu'à présent, BigQuery ressemble à un meilleur choix pour vous
OriginalL'auteur Mikhail Berlyant