19  Conclusion

What the book has covered, how to keep oblako’s differences from AWS in view as both change, and where to find more.

19.1 What the book covered

The book started from one claim about oblako, that it gives you real behavior in a simulated topology. Each chapter tested that claim on one service or tool by running code against oblako and stating where the result differs from AWS. Part II ran the data services one at a time: S3 and its table and vector buckets, the Glue Data Catalog with Athena, Glue jobs, Redshift, RDS and its replication, DynamoDB, and streaming with Kinesis and Firehose. Part III built on them with Spark and Iceberg, a multi-node Redshift, a feature store with Feast, and Airflow on MWAA. Part IV tested a pipeline in CI, described its infrastructure as code, and ran the same tests on AWS.

Redshift carried much of the weight, because it is where a local copy is hardest to come by. The same engine answered redshift-connector, the Data API, COPY and UNLOAD through S3, SQLAlchemy with reflection and Alembic, awswrangler and Feast. Code written against any of them runs on oblako and on AWS without a branch for either.

19.2 Keeping the differences in view

Each chapter on a service or tool had a section on where oblako differs from AWS, and the differences fall into a few kinds. Some checks are not enforced, IAM policies above all, so code with a missing permission passes on oblako. Capacity and topology are recorded but not applied: node counts, worker counts, RPUs and VPC settings are reported as you set them while the work runs on your machine. A few features are absent, such as Glue triggers and crawlers, and those chapters said so.

The habit from Chapter 18 keeps these differences small and visible: run the tests against oblako on every change, and against AWS before a release. A test that passes on oblako and fails on AWS usually points to one of the differences above, most often a permission, and it is worth a comment in the code where it was fixed.

oblako also changes, so treat it as a dependency like any other. The book was tested against the version named in the introduction; pin the version you test with, and read the release notes when you move to a newer one.

19.3 Where to find more

oblako’s documentation, at https://oblako-sdk.almostly.ai/, is the reference for what this book did not cover: every service oblako runs, its port, the operations it supports and its known limits. It changes with each release, so where it and this book disagree, the documentation describes the current version.

The differences the chapters list are known ones: some are by design, such as permissions that are stored but not enforced, and others are features oblako does not have yet. Any other difference, where oblako does something AWS does not, is a bug in oblako, and AWS’s behavior is the one to match. Report it, or a missing feature you need, as an issue in oblako’s repository, https://github.com/almostly/oblako, with the code that shows it and what AWS does with the same code. For AWS’s own behavior, the AWS documentation remains the authority.