The beat launch of Cloud Spanner was declared today by Google and it is a new globally distributed database service for the purpose of mission applications. There are other cloud-based database services that are joined by Cloud Spannerlike Cloud SQL, Bigtable and the Cloud Datastore but with the main difference of providing developers the best relational databases and NoSQL databases and it is transactional with easier scalability. Cloud Spanner is another solution for developers who are striking the limits of cultural relational databases like PostgreSQL or MySQL.
Google usage of this version internally is the reason behind the name Cloud Spanner and a paper was published in the year 2012. In the year 2007, Google started working on Spanner just to search for an alternative to MySQL which ran lots of company products.
Spanner is the basis for various application of Google like Google Photos and many Google’s mission-critical applications. This same database service is made by Google to be available to outside developers with Cloud Spanner.
All the developers are to be assisted to take the knowledge in composing SQL-based applications and permit them to take that to a new database service that uses the SQL syntax and provides ACID transactions and apart from that there are other benefits of modern NoSQL database combined with the scalability kind and global network that Google needs to run its products.
Spanner is not a complaint of MySQL or ANSI SQL and there is no such plan
Moving workloads from MySQL is the target for Google’s Spanner and is the biggest interest and use case. Most of them felt bad about the lack of MySQL support both in the present and in the Spanner roadmap. There is a need for more pressure from MySQL to migrate or move a workload and for ensuring a performant implementation.
Full RDBMS functionalities are not offered by Cloud Spanner similar to referential integrity.
A parent or child relationship is needed by the Spanner when designing your data model to define at the table level. It is said that in other places this is by choice. There is no referential integrity performed on an automatic basis if you do not define tables as interleaved. If you later believe that you change the table into a child then you are going to have a drop or recreate the table.
The online schema does not offer cloud spanner for changing the keys.
Drop and replace of the table will be present in you and this happens when you need to change the PK of your table. This implies that you need to pause your workload and it means to take a downtime. And you need to understand why you want to change the table’s PL? In bold or all caps and red the spanner documentation is highlighted.
Index choosing is difficult when cloud spanning comes into the picture and it recommends using FORCE_INDEX directives in your code.
SQL operation is done from SQL to Google’s APIs and the efforts of the application programmer will have to be supported by data architects and they are people who are aware of both design around the limits of Spanner along with neglecting Spanner-specific anti-patterns which reduce performance.
This implies changing Pks to hashes and taking away auto-increment and correctly assigning parent/child data relationships as interleaved tables and interleaving needed indexes along with design time.
Join DBA Course to learn more about other technologies and tools.
Stay connected to CRB Tech for more technical optimization and other updates and information.