Right upfront the title looks like a possible duplicate, but it is not, since stackoverflow answers only answer at a high level of abstraction, this is about internals. Furthermore most of the diffences are not even true because most of them are just features that can be implemented in both as I have read. I'm have a bit knowledge about sql and sqlserver, if I say something wrong in the following statements please correct me.
To clearify with high level of abstraction it is among other things meant that people write nosql does not support this and that. Even if nosql is capable of supporting that feature. Of course some of the nosql-dbs then also support then that feature that is claimed to be not supported by nosql. It looks like nosql and sql are quite similar internally so that it's only a question of which featureset the db does choose to support.
question 1: Is there even a difference between them internally except sql enforces rules and has more features?
It looks like nosql and sql is the same except nosql just does not have advanced features like sqlserver. Both store metadata. NoSql is often referred as keyvalue pairs json syntax. I don't know about the internals of sql, but it cannot be so different since it's just metadata, can be xml, json or some other syntax. Tables also have to be stored in some kind of metadata syntax I guess.
Both have a program that can resolve querys and return something.
Obviously when you drop a whole featureset you get a performance boost like nosql.
question 2: Why should sql scale worse then nosql? They are quite similar internally. Maybe it's just that the current rdms have implemented scalability of the huge featureset not very good because it's not quite simple?