9

The tag indexed-view is an alias for materialized-view. Which means when posting a question regarding an Oracle materialized view this will be tagged with a tag that refers to a SQL Server technology.

Even though both things are conceptionally the same, someone looking for (Oracle's) "materialized-view" is probably not interested in questions or answers that deal with SQL Server's indexed views.

So I would like so suggest to remove the alias and treat both tags as different.

Edit (I was going to write this as a comment, but it just go too long)

@ypercube: I agree with you that conceptionally those two things (and DB2's MQT ) are the same thing. But on the other hand, I think that tagging a question that deals with Oracle's mviews with indexed-view simply isn't right. Anyone not familiar with SQL Server might not even understand what that tag means. But it would be just as wrong to tag a SQL Server question with materialized-view.

As far as I know the tags are also taken into account when users are searching on SO. If people are searching for indexed view I'm pretty sure they are not interested in Oracle questions.

I wouldn't see it as a problem to add a (distinct) tag for each technology. After all we have distinct tags for different DBMS but they are all relational databases. As far as I see it: with the reasoning that materialized-view is a synonym for indexed-view the tag relational-database would end up as a synonym for oracle, postgresql or sql-server as well.

1
  • I've swapped the synonyms round as that seems to be the popular choice. I've re-written the wiki excerpt, please let me know if it looks OK to you. Aug 4, 2014 at 20:17

2 Answers 2

10

The two terms are essentially about the same concept – materialisation of the result of a query. The differences are outlined in Jack's answer and I personally believe them to be inessential to warrant the split.

However, I disagree with the current state of affairs too.

An alternative to splitting the pair would be to switch the synonym, i.e. make a synonym of .

That would at least make more sense than the other way round, although, as I said before, to me personally it would also make more sense than two separate tags.

0
4

I agree we should do this.

They are superficially similar but not exactly the same thing anyway:

  • a Materialized View can be a heap, but an Indexed View always has a clustered index.
  • Materialized Views need to be refreshed, Indexed Views are always 'up to date'.
  • The list of restrictions is very different (see here and here for example: the latter restrictions apply to 'fast refresh' views in Oracle only)

On the other hand, Materialized Views (or MQTs or whatever) in DB2, Oracle, Postgres are all basically the same thing and it's not hard to imagine Microsoft implemented them alongside IVs in a future release.

6
  • I don't particularly like this idea. Then what, we'll add a [materialized-query-table] tag because IBM's DB2 calls them this way? Aug 1, 2014 at 8:59
  • 1
    No, I think MQTs are basically the same thing as MVs in Oracle/Postgres (IBM even use the term Materialized View in that link). MV is probably the more general term and should cover both, but IVs are a different kind of beast. Aug 1, 2014 at 9:09
  • 1
    I'd prefer one name, I don't think SQL-Server's IVs are so different than Oracle's MVs. If we choose "materialized-view", that's fine (since both Oracle and Postgres use that and DB2 has the "materialized") Aug 1, 2014 at 9:15
  • 1
    The Wikipedia article is worth a read. It calls IVs a "similar feature" (ie not the same) Aug 1, 2014 at 9:17
  • 3
    +1 There seems to be enough distinction (to me) to make it worthwhile having two tags (with two helpful tag wikis).
    – Paul White Mod
    Aug 1, 2014 at 19:28
  • @ypercube: I edited my question to make my point of view clearer (that was just too long for a comment)
    – user1822
    Aug 1, 2014 at 20:46

You must log in to answer this question.