Introduction



Relational VS Object Database DATE \@ "MMMM d, yyyy" June 29, 2019IntroductionVelocityDB is a NoSQL object database. Microsoft SQL Server is a relational database.Feature ComparisonIn table below, support for a feature is one of: (great) (ok) (bad). FeatureVelocityDBSQL ServerAcid TransactionalAndroidAny CPU (32bit/64bit) Array supportAuto Increment on a fieldBackup & RestoreChange event subscription & notificationChoice of data structure to useCompression of dataData FragmentationData Integrity optionsDatabase level lockingDistribution abilityEmbed abilityEncryption of dataEnum supportHigh levels of concurrent updatesHigh PerformanceIndexesIn-Memory Only OptioniOSLINQpadLinuxNo object relational mapping requiredObject/Row level lockingOptimistic Concurrency SupportOS X (Mac)Page level lockingPage level versioningPure C#, no other language requiredRequired Database AdministrationScalabilitySmall footprintStore graphs of connected objectsUniversal WindowsVariable page sizePros and ConsIn table below, pros are highlighted yellow and cons are highlighted turquoiseVelocityDB Pros/ConsSQL Server Pros/ConsCapable of unbeatable performance and scalabilitySimple applications perform well but as data model gets more complex and data size grows performance sufferUse class inheritance, polymorphism and compositionHard to mimic all object oriented features Limited testingVery well testedNot very many have usedMany know how to useUse any data structureLimited to table data structureStandardized Object identifierEach table defines a primary keyNo mapping requiredAn object relational mapping tool such as EntityFramework or Dapper is requiredField can store multiple valuesLimited to single value in each cellIntegrated Client Caching FacilityClient caching has to be done with separate tool(s)No Database Administration RequiredDatabase Maintenance/Administration RequiredNo empty space on pages and fragmentation avoided by using variable page sizeDatabase tables and indexes are usually fragmented with empty/unused space on pages.Good for supporting storage of binary data such as video & audioAlthough BLOB storage is supported, data is more difficult to work with and not easy to segmentLow Licensing CostsHigh Licensing Costs22,409 lines of C# codeMore than 1 million lines of C++/C code ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download