sommai - Fotolia
AWS dope RedShift à l’analyse de données dans S3
RedShift Spectrum permet de requêter directement des données stockées en volume dans S3 avec les capacités SQL avancées de l’entrepôt de données, sans préparation ni transformation.
A l’occasion de l’AWS Summit de San Francisco, AWS a décidé de jouer un peu la carte de l’intégration entre ses services Cloud pour proposer une extension des capacités de RedShift à S3. La société a aussi présenté un service de cache pour muscler les performances de DynamoDB, la base de données NoSQL du groupe.
Avec RedShift Spectrum, AWS entreprend d’étendre purement les capacités de requêtage avancées de son entrepôt de données aux données non structurées, stockées dans le service S3 de la marque. Le tout avec le même SQL, et sans avoir à transformer et charger les données. Spectrum traite les données directement dans S3, telles quelles, avec leurs formats ouverts (CSV, TSV, Parquet, Sequence et RCFile). Une façon d’intégrer et d’associer ces données froides et contextuelles du Big Data aux données structurées et critiques de l’entrepôt de données, mais sans avoir à la manipuler.
Opérer ces traitements directement dans S3 était aussi l’un des arguments phare du service Athena lancé en décembre dernier par AWS. Toutefois, Athena ne répond pas aux mêmes cas d’usage. Le service est présenté comme un service dit « serverless », applicable par des utilisateurs pour générer des rapports ad hoc, à partir de données stockées – effectivement – dans S3. Spectrum permet quant à lui de prolonger les capacités de requêtage avancées de RedShift, initialement cantonnées aux seules données structurées, aux données non structurées contenues dans S3 – un moteur unique pour des sources plurielles. « Vous êtes libre de stocker vos données où vous voulez, dans le format que vous voulez et les avoir à disposition pour traitement quand cela est nécessaire », explique d’ailleurs AWS dans une FAQ. L’utilisateur s’appuie sur S3 et ses coûts plus bas que celui d’un RedShift.
« Si vous disposez d’un datalake, vous n’avez pas à charger et décharger les données, selon vos capacités », commente Adam Brook, ingénieur Cloud chez Relus Technologies, un partenaire d’AWS, chez nos confrères de SearchDatamanagement (groupe TechTarget, propriétaire du MagIT). « Cela donne une configuration bien plus intéressante en termes de coûts car vous n’avez pas besoin de provisioner de nouveaux clusters et de payer pour ces nœuds. ». D’autant que Spectrum s’appuie sur la partionnement des données pour distribuer et accélérer les requêtes. Spectrum est facturé en fonction des données extraites de S3 pour les requêtes, à raison de 5$ par téraoctet.
RedShift Spectrum est actuellement limité à quelques zones aux Etats-Unis (US East – Virginie du Nord ; US East – Ohio ; US West – Oregon). Le service sera déployé dans d’autres zones dans les prochains mois.
Avec Spectrum, AWS s’aligne finalement sur une tendance de fond qui consiste à assembler dans une unique plateforme suffisamment de fonctionnalités pour répondre aux cas d’usages les plus courants dans les entreprises, et aux nouvelles architectures applicatives. Celles-ci nécessitent par exemple de conjuguer des données transactionnelles à d’autres externes afin d’en faciliter l’analyse. Les bases NoSQL, à l’image de DataStax DSE et CouchBase, adaptent d’ailleurs leur moteur pour cela. Tout comme le monde Hadoop, comme MapR et sa Converged Data Platform.
Un cache pour DynamoDB
L’autre annonce porte sur la base de données NoSQL du groupe, DynamoDB. AWS a présenté Amazon DynamoDB Accelerator (DAX), un service de cache entièrement managé dont la vocation est d’accélérer les temps de réponse, de la milli-seconde, à la micro-seconde – même avec des millions de requêtes par seconde. DAX peut être associé aux applications DynamoDB depuis la console d’administration AWS et n’implique pas une ré-écriture des applications.
DynamoDB est principalement utilisée pour les applications Web, mobiles et pour les jeux. Toutefois, les entreprises devaient, en complément, déployer et gérer des clusters de caching en mémoire, pour les applications qui nécessitaient un accès en temps réel aux données. Ce que DAX évite de faire.
Chaque base de données NoSQL a ses forces et ses faiblesses. Une des faiblesses de DynamoDB était sa façon de fonctionner avec les applications qui font appel à de grandes quantités d’appels en lecture seule, explique Mike Kavis, vice- président et architecte Cloud chez Cloud Technology Partners.
Les bibliothèques de caching ne sont pas particulièrement difficiles à bâtir, mais la tâche est répétitive lorsqu’il s’agit d’ajouter une couche supplémentaire pour gérer la base de données, souligne de son côté, Kevin Felichko, CTO de PropertyRoom, une société d’enchères en ligne localisée aux Etats-Unis. « C’est une bonne nouvelle qu’AWS cible ce problème et qu’ils facilitent cela aux équipes DevOps », ajoute-t-il.
Toutefois, l’un des gros inconvénients de DynamoDB Accelerator est qu’il est limité aux bibliothèques Java, soutient-il encore. Lui aimerait un support de Node.JS, mais s’attend à ce que cette fonction soit intégrée dans le futur, quand le service gagnera en maturité.