Database normalization alternative - database

I was wondering if there was any other alternative in order to skip the classical three or more steps normalization in Databases Topic.
Somebody told me that if I used the relational graph technique I could get all my database as a normalized database without having to do all the three or more steps of normalization.
Any idea?
Thanks in advance!

Related

Short explanation on Database Types

I'm deciding what database to use for my project, but I've only ever used relational databases (Oracle, MySQL) so for my web project I figured I'd use MySQL with PHPMyAdmin for DBMS.
But I'd like to know more about other database types, succinctly if possible, before I finally decide.
Thanks in advance!

Best Database for Blog Application (Relational - SQL vs NoSQL)

I am starting developing a new application for blogs in .net mvc. I am working on relational databases (Sql Server) from past 3+ years, these days i am seeing many articles on No Sql databases too and many articles says that nosql/graphdb is a future so i just want to know which database will be better for a blog kind of application relational or nosql?
I want to go with nosql for learning purpose but there are too many nosql databases like- cassandra, couch, mongo, raven, hbase, neo4j etc so please suggest which db i should choose for blog app-
Relational or No Sql
If no Sql then which No Sql
Hoping for some positive responses.
Thanks.
Basically use SQL or noSQL approach depends on such factors as how your data model (I mean your tables in SQL or lists in no SQL) changes and what will you do with it when you have lots of data.
If you data model pretty much known and changes not often, plus you have really difficult logic to work with it (and validate ofcourse) than I usually use SQL approach, becouse it's easier to keep your data consistency.
The next problem that you faces is huge amount of data. With SQL approach you have to build DWH (data warehouse) if you want to query your data fast. With noSQL approach in theory you can easily spread your data of different servers.
About blog - you definatly don't know right now what kind of model you will have in the end. And you wouldn't create tricky reports i gess. So it's ok to use noSQL model.
About your question what noSQL DB select i recommend to look at brightstardb becouse you can map your model with EF and it will be easier to develop. Another noSQL db that you can look at is Azure DocumentDB becouse it's MS approach to noSQL, but it available only in Azure right now and it has no stand alone version.
I have been using mongo nosql for smaller web applications. Mongo nosql would work really well for such an application.
Easy to connect to, and easy to get into since its object related.
Just my opinion.

MS Access database with no relations

Can anyone recommend a tool or suggest the approach when dealing with MS Access database with no relationships between tables?
As part of data migration project I am creating data mapping definition rules but it becomes more and more difficult and time consuming to correctly identify source tables/fields for extraction.
I have many tables with the same data appearing in different places. Furthermore, as there were no validation rules when data was input, many entries contain spelling errors or generally do not match expected data type. Most of the tables however already have the keys (primary & foreign) created.
I am looking for a quick solution to rebuild the database (*.mdb), ideally with a use of some software which could identify all potential data issues, suggest corrections, allow for adjustments and finally left off with fully relational database where the data can easily be identified and not scattered all over the place.
I have some general knowledge of databases and SQL but didn't use Access much before so I'm trying to save myself some of the time. And - if it matters - I don't care about database performance at all... Only the data itself. I will be extracting it to *.csv files later anyway...
Comments, suggestions and/or other considerations will be appreciated.
Thanks in advance
J.
I don't believe there is any software that will analyze an Access database and use some kind of artificial intelligence to generate a new database with good data and strong relationships.
My recommendation though is to export all the data into SQL Server (or even MySQL) and then work with it there. It's much easier to manipulate the data with a real query language instead of trying to scrub data in Access.
You can do mass updates, comparisons, joins, etc. with SQL Server. You can query the schema easily (write queries to see if a field appears in a table), change schemas/table definitions with code, etc.
Then once you're done you can use jobs (SSIS) to export the data to CSV.
(You can download SQL Express if you don't have/can't afford SQL Server.)

How divide the database up into into smaller databases

I have a big SQL Server 2012 database.
I want to split it into preferences and data.
However I find that SQL Server does not seem to support the idea of dividing your data up into object oriented databases. It seems to rely on everything being in the same database.
For example foreign keys are not supported in database. Also cross database joins are a real pain to do.
How would someone typically go about doing this? Is it just a limitation of SQL Server that I should use the same DB for everything?
SQl Server provides partitioning feature. As per wikipedia
A partition is a division of a logical database or its constituting elements into distinct independent parts. Database partitioning is normally done for manageability, performance or availability reasons
1.Horizontal partitioning
2.Vertical partitioning
Each has it is own file group.it can be configured
Visit this links that should help
MSDN
SQLAuthority
I am sure there are plenty of tutorials out there.
SQL Server is a relational database, so there really shouldn't be an expectation that it would support a fundamentally different architecture implied by an object or object-oriented database.
I don't understand your comment that "foreign keys are not supported in database." Foreign keys are all part of the integrity constraints in SQL Server, and a detail description of how to create them is available here
I think you might want to be more specific about the type of data you're trying to split up, and why you want to put them in physically separate databases. A refinement of your problem might help us provide better answers.

TFS2010 Database Schema Explanation

By looking at the default, raw relational db schema of TFS2010 of its underlying team project collection sql database it is not necessarily self-explanatory how things work there and I was wondering whether someone has a more process oriented explanation how all these tables are related to each other. It seems like only 3 or 4 actually do have fk relations and such, the other ones are logically connected and would require joins and that's the part I am interested in & want to understand. Does anyknow have or know a more detailed explanation what's going on there?
I would strongly recommend using the TFS cube for all reporting needs, microsoft does not recommend the use of relational database as this may impact performance. As a good start you can read up about the schema, enhancements, dimensions of the TFS 2010 cube on the msdn library http://msdn.microsoft.com/en-us/library/ff432837.aspx. Also this walkthrough is very helpful to get you started with reporting against the tfs cube http://msdn.microsoft.com/en-us/library/ff730837.aspx#bkmk_tfsdb
HTH.
Cheers, Tarun

Resources