lsyh/azure-table-service-bundle
A Symfony bundle that integrates Azure Table Storage into PHP applications, providing service configuration, dependency injection, and convenient client access for creating, querying, and managing table entities. Useful for apps needing NoSQL-style key-value data on Azure without boilerplate.
composer require attek/azure-table-bundle, then publish/configure the connection settings (account name, account key, and optionally a custom endpoint for Azurite). The bundle reads these from config rather than env directly, so wire your .env values into the package config on first install.PartitionKey/RowKey. Create the table once at deploy time, then insert a single entity and read it back by point query to confirm connectivity and auth.recordEvent, findByDevice, setFlag). This is where you centralise partition-key construction and keeps OData filter strings out of your app code.tenant:{id} or date:{yyyy-MM} so point and range queries stay single-partition. Partition-per-tenant gives you scalable scans; partition-per-day gives you cheap time-range reads and easy truncation.PartitionKey eq X and RowKey eq Y) are the fast path; range queries on RowKey are next. Property filters scan the partition and get expensive fast — treat them as reporting, not request-path.ETag, and send it back on update. On conflict you get a precondition failure — retry with a re-read rather than blindly overwriting.TableAlreadyExists, EntityAlreadyExists, UpdateConditionNotSatisfied, ResourceNotFound) to your own domain exceptions in the repository layer; let everything else bubble.createTableIfMissing helper in test setup so suites are order-independent. Assert on error codes, not messages, so the tests survive SDK upgrades.DateTime will either be rejected or shift silently. Normalise at the repository boundary.Retry-After; the client does not retry for you. Add jittered exponential backoff around writes, and consider making it a shared middleware/trait so every repository inherits it.How can I help you explore Laravel packages today?