News for hackers. Stuff that matters.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by qingcharles on Saturday June 24, 2023 @11:06PM (#36464817)
I've been moving some of my web assets over from x86 boxes to Altras. It's .NET so a lot of it moves without trouble. I'm having to move databases though as there is no mainline SQL Server for ARM. These Epycs would potentially end that migration.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by throwaway2990 on Sunday June 25, 2023 @12:56AM (#36465245)
Just stop using sql server. PostgreSQL runs on arm and is superior to sql server.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by albertopv on Sunday June 25, 2023 @01:43AM (#36465396)
Pgsql is great in many ways, but not really superior to sql server, it really depends on what you need, e.g. columb encryption, data compression etc. We had indexing issues on postgres changing underlying OS bc postgres uses a lot of C libraries of the OS, and that is just wrong for a (multiplatform) RDBMS, it makes it less predictable.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by speedgoose on Sunday June 25, 2023 @01:59AM (#36465451)
I don’t know your requirements but wouldn’t using software containers with a reproductible operating system (like nix), or even a simple image like Debian PostgreSQL, fix the predictability problem?
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by dogma1138 on Sunday June 25, 2023 @07:16AM (#36467023)
No, at least not in a heavily regulated industry because then other obligations e.g. patching become a much bigger issue.

The big benefit of MSSQL and Oracle SQL is that your database server is almost completely detached from the operating system the likelihood of a system update changing how your database works is nill. With Postgres and other databases it’s not a given. Ironically on Windows you get to extract quite a bit of that back since Postgress on Windows comes with most of its own libraries, however that’s also part of the problem where you can easily have material differences between running Postgress on Windows and Linux.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by speedgoose on Sunday June 25, 2023 @11:47AM (#36469458)
I don’t know about your industry but patching and software containers aren’t incompatible from my point of view.

I am guessing that you don’t want to validate PostgreSQL on all operating systems, but you could always stick to one using software containers.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by dogma1138 on Sunday June 25, 2023 @04:06PM (#36472063)
Containers don’t solve anything, it’s not that the base image doesn’t need to get patched.

Postgres is far more dependent on OS libraries which makes it far less predictable.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by speedgoose on Monday June 26, 2023 @01:32AM (#36476054)
Alright, but if you need to patch a dependency of the database does it matter whether the change is in a shared library or not?

Of course you could skip patching the dependencies and ship unsafe software the oracle db way.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by dogma1138 on Monday June 26, 2023 @04:56AM (#36477366)
Yes, MSSQL for example is self contained OS or container image updates aren’t going to impact it or at least it’s extremely unlikely that they will.

Postgres is dependent on a lot of OS level C libraries that can materially change how things work.

This means that there will have to be more testing with Postgres and there will be higher uncertainty between different deployments.

All of these can be mitigated and for many organizations the benefits of Postgres might outweigh these downsides but they do exist.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by albertopv on Friday June 30, 2023 @09:25PM (#36545243)
Things are not carved in stone, we had to change the OS and something quite unforeseeable for a RDBSM happened. Imho DBMS should be a sort of self sufficient OS in itself.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by throwaway2990 on Sunday June 25, 2023 @03:31AM (#36465802)
4 years running postgresql on arm in production with 0 issues. (2tb database so kinda small, a lot of indexes tho, a lot of which are on jsonb columns) I can’t think of any feature in sql server I would ever need that PostgreSQL doesn’t have. But sql servers lack of JSON support is a deal breaker for me.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by greggyb on Sunday June 25, 2023 @06:17AM (#36466644)
SQL Server has had JSON column types (and supporting functions) since 2016.

I don't know you or your workload, so I can't comment on its suitability for you. I would hazard a guess, though, that your last proper due diligence knowledge is seven years out of date, or more.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by throwaway2990 on Sunday June 25, 2023 @07:42AM (#36467194)
No. Sql server has json functions. It does not have a json type. It does not support indexing of json.

Edit: it’s kinda ironic you think my knowledge of sql server is outdated when you don’t understand the features supported in sql server to begin with.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by greggyb on Sunday June 25, 2023 @02:14PM (#36471089)
You index JSON columns in SQL Server by creating an index on a computed column. I am very open to the strict argument that this is a workaround if you'd like to make that more verbosely. Nevertheless it is very effective and adds minimal IO overhead and is dispatched with one extra line of code (more if you prefer newline-heavy formatting). From a practical perspective this has never been a sticking point for any of numerous clients I have seen using the features, and the performance is as good as any other btree index.

You are correct that there is no formal SQL type in SQL Server for JSON. And I am sorry for implying otherwise. Type safety requires a constraint on the column intended to hold JSON.

There is no equivalent to Postgres's GIN indices which would allow indexing on an array in the JSON column. Such a requirement would need a normalized table holding the array's values in SQL Server. Whether this is a limitation or a lack of support for JSON, full stop, seems to me a matter open to debate.

I have seen many successful projects (and participated in quite a few of those) that utilize JSON in SQL Server databases. I will amend my former statement, though, because it obviously lacked nuance: SQL Server's JSON functionality has covered all use cases that I have had and personally seen, but my experience is obviously much lesser than some others', so you can take this experience with as much salt as you like (:

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by tracker1 on Monday June 26, 2023 @01:42PM (#36483063)
SQL Server operations for JSON are parsed from text content on demand. In other databases, the JSON content is broken apart and can be queried/indexed on that parsed/stored content. The closest you can get with SQL is a computed column from the JSON that you can then use to index against, it's very messy by comparison. If you use a lot of JSON queries in SQL server it can get excessively sluggish as well compared to PostgreSQL or even MySQL/MariaDB.

It's definitely a shortcoming of MS-SQL, which iirc is being addressed to an extent in the next release.

There are plenty of points where MS-SQL Server is very nice. JSON support is far from one of them. Even if the JSON is still a step above XML support in SQL Server.

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by albertopv on Sunday June 25, 2023 @11:58AM (#36469603)
We had issues with postgres on x64 when changing underlying OS, maybe you didn't have to. Can you encrypt columns or compress data with vanilla postgresql? Why not? Postgresql is REALLY great, PostGis is awesome, it's not perfect and other RDBMS may have other useful features.
Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by matwood on Sunday June 25, 2023 @09:11AM (#36467862)
PGSQL is great, but often when someone says MSSQL they mean the entire ecosystem. SSRS, SSIS, SSAS fall under the MSSQL umbrella and make it much more than a database. MSSQL really embraces the S of RDBMS.

MSSQL also has great tooling - another part of the ecosystem.

If I was starting today, pgsql would be my choice for licensing costs alone. But, if I already had a system built on MSSQL, it would be hard to make a business case to move (I have tried).

Re:AMD's 128-core Epycs could spell trouble for Ampere Compu... by qingcharles on Sunday June 25, 2023 @05:35PM (#36472827)
This is exactly what I am aiming to do. I am DB agnostic as my requirements are very simple. I was using MSSQL only because it ships by default with Visual Studio and I've been using it extensively for the last 25 years.