Muchos clientes de Amazon Web Services (AWS) requieren una solución de análisis y almacenamiento de datos que ofrezca más agilidad y flexibilidad que los sistemas tradicionales de gestión de datos. Un lago de datos es una forma cada vez más popular de almacenar y analizar datos porque permite a las empresas almacenar todos sus datos, estructurados y no estructurados, en un repositorio centralizado. La nube de AWS proporciona muchos de los componentes básicos necesarios para ayudar a las empresas a implementar un lago de datos seguro, flexible y rentable.
La solución de lago de datos es una implementación de referencia automatizada que implementa una arquitectura de lago de datos rentable y de alta disponibilidad en la nube de AWS. La solución está destinada a abordar los puntos débiles comunes de los clientes en torno a la conceptualización de arquitecturas de lagos de datos y configura automáticamente los servicios centrales de AWS necesarios para etiquetar, buscar, compartir y gobernar fácilmente subconjuntos específicos de datos en una empresa o con otras empresas externas. Esta solución permite a los usuarios catalogar nuevos conjuntos de datos y crear perfiles de datos para conjuntos de datos existentes en Amazon Simple Storage Service (Amazon S3) e integrarlos con soluciones como AWS Glue y Amazon Athena con un mínimo esfuerzo.
Para obtener una descripción general completa de la solución, visite Data Lake en AWS.
Para obtener ayuda al utilizar la solución de lago de datos, visite la guía de ayuda en línea.
El proyecto de data lake consta de microservicios que facilitan las áreas funcionales de la solución. Estos microservicios se implementan en un entorno sin servidor en AWS Lambda.
|-deployment/ [carpeta que contiene plantillas y scripts de compilación] |-fuente/ |-api/ |-authorizer/ [autorizador personalizado para puerta de enlace API] |-servicios/ |-admin/ [microservicio para funcionalidad administrativa del lago de datos] |-cart/ [microservicio para la funcionalidad del carrito del lago de datos] |-logging/ [microservicio para el registro de auditoría del lago de datos] |-manifest/ [microservicio para procesamiento de manifiestos del lago de datos] |-package/ [microservicio para la funcionalidad del paquete del lago de datos] |-profile/ [microservicio para la funcionalidad de perfil de usuario del lago de datos] |-search/ [microservicio para la funcionalidad de búsqueda en el lago de datos] |-cli/ [interfaz de línea de comandos del lago de datos] |-console/ [consola de administración del lago de datos angularjs] |-recurso/ |-access-validator/ [módulo auxiliar utilizado para validar permisos granulares] |-helper/ [ayudante personalizado para la plantilla de implementación de CloudFormation]
Cada microservicio sigue la estructura de:
|-nombre-servicio/ |-lib/ |-[bibliotecas de módulos de servicio y pruebas unitarias] |-index.js [punto de inyección para microservicio] |-paquete.json
Los siguientes procedimientos suponen que se ha completado toda la configuración a nivel del sistema operativo. Ellos son:
La solución del lago de datos se desarrolla con Node.js para los microservicios que se ejecutan en AWS Lambda y Angular 1.x para la interfaz de usuario de la consola. La última versión de la solución del lago de datos se probó con Node.js v12.x.
Clone el repositorio de GitHub aws-data-lake-solution:
git clone https://github.com/awslabs/aws-data-lake-solution.git
export AWS_REGION=<aws-region-code>
export SOLUTION_NAME=<your-solution-name>
export VERSION_CODE=<version-code>
export DEPLOY_BUCKET=<source-bucket-base-name>
export CLOUDFORMATION_TEMPLATE_BUCKET=<cloudformation-template-bucket-name>
us-east-1
, us-west-2
...aws-data-lake-solution
v1.0.0
-[aws-region-code]
al nombre de este depósito. Por ejemplo: ./build-s3-dist.sh solutions aws-data-lake-solution v2.0.0 solutions
, la plantilla esperará que el código fuente esté ubicado en el depósito solutions-[aws-region-code]
. cd ./aws-data-lake-solution/deployment
chmod +x run-unit-tests.sh
./run-unit-tests.sh
chmod +x build-s3-dist.sh
./build-s3-dist.sh $DEPLOY_BUCKET $SOLUTION_NAME $VERSION_CODE $CLOUDFORMATION_TEMPLATE_BUCKET
aws s3 cp ./global-s3-assets s3://$CLOUDFORMATION_TEMPLATE_BUCKET/$SOLUTION_NAME/$VERSION_CODE --recursive --acl bucket-owner-full-control
aws s3 cp ./regional-s3-assets s3://$DEPLOY_BUCKET-$AWS_REGION/$SOLUTION_NAME/$VERSION_CODE --recursive --acl bucket-owner-full-control
Actualmente, la solución del lago de datos se puede implementar en las siguientes regiones: [ us-east-1, us-east-2, us-west-2, eu-west-1, eu-west-2, eu-central-1 , ap-noreste-1, ap-noreste-2, ap-sureste-2, ap-sur-1 ]
Esta solución recopila métricas operativas anónimas para ayudar a AWS a mejorar la calidad y las características de la solución. Para obtener más información, incluido cómo desactivar esta capacidad, consulte la guía de implementación.
Copyright 2019 Amazon.com, Inc. o sus afiliados. Reservados todos los derechos.
Licenciado bajo la Licencia Apache, Versión 2.0 (la "Licencia"); no puede utilizar este archivo excepto de conformidad con la Licencia. Puede obtener una copia de la Licencia en
http://www.apache.org/licenses/LICENSE-2.0
A menos que lo exija la ley aplicable o se acuerde por escrito, el software distribuido bajo la Licencia se distribuye "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sean expresas o implícitas. Consulte la Licencia para conocer el idioma específico que rige los permisos y limitaciones de la Licencia.