use big data with SQL, what is better?

lcoding

New member
Joined
Dec 17, 2019
Messages
2
Programming Experience
Beginner
Hello.

I wan to select \ write \ read \ delete \ change colums, rows in table, will be a big size data for web and win application.

Which of best way can you recommend with using c# language

1) Sql server or sqllite or mongoDB or some other

2) how to use data information cut big data for little parts and do the search in multiThreads, or what the best way for work.

3) What the best dessiccion for 1 part request like for stores and netWork rpg Game multi Online world?
 

Skydiver

Staff member
Joined
Apr 6, 2019
Messages
1,575
Location
Virginia Beach, VA
Programming Experience
10+
What the best dessiccion for 1 part request like for stores and netWork rpg Game multi Online world
This is called "sharding". The basis for the shards really depends on the nature of the data and the types of queries done on the date. A typical approach is based on geographical optimizations: keep the data close to where it is used most often, but you may have other was to group the data based on what is needed. Perhaps there is some data that you don't want governments having access to, so you keep that data out of those jurisdictions.
 
Last edited:

Skydiver

Staff member
Joined
Apr 6, 2019
Messages
1,575
Location
Virginia Beach, VA
Programming Experience
10+
1) Sql server or sqllite or mongoDB or some other
If you need to change columns often, a relational database like SQL Server or SQLite may not be the best choice. RDBMS's usually don't like a lot of schema manipulation happening once data is in them. My understanding is that MongoDB, not being an RDBMS, will handle the changing of "columns" better since it only stores key value pairs.

On the other hand, your topic title seems to imply that you want/need SQL. As I understand things, MongoDB does not natively support SQL queries, but you can get 3rd party apps/libraries to emulate SQL queries against MongoDB. My understanding maybe mistaken or outdated, though. It's been a few years since I have played with MongoDB.
 

Skydiver

Staff member
Joined
Apr 6, 2019
Messages
1,575
Location
Virginia Beach, VA
Programming Experience
10+
Which of best way can you recommend with using c# language
:
2) how to use data information cut big data for little parts and do the search in multiThreads, or what the best way for work.
The best way is use C# as little as possible. Try to get there database to do the majority of the work. You'll want the database to do as much of the filtering, correlation, sorting, searching, etc.

Your C# code should be left to do any post processing that cannot be easily done on the database. When finally doing the processing, the standard best practices apply:
  • Only get the bare minimum of data that needs to be processed.
  • Always prefer a better algorithm before throwing more hardware at it.
  • If you must throw more hardware at a problem, try to partition the data so that you can make the best use of parallelism to make full use of threads.
  • Implement only what you need right now. YAGNI.
  • When it comes time to add new features refactor code. Do not copy and paste and then hack on the new code.
 

lcoding

New member
Joined
Dec 17, 2019
Messages
2
Programming Experience
Beginner
i am annoying by this types of slow loading and syc with dataBase request - so i am afraid of this types of mistakes like on this webSite developer Fusion - ASP.NET, C# Programming, VB.NET, .NET Framework, Java and Visual Basic Tutorials

if u try to sing up - u can see more than 30 minutes loading the page...

So... it's not my webSite and i visit it first time.

So i am trying to learn all about dataBases. I want to choose the best type of DB for my target.
My target is - choose db for store.
The store will be have more than 50 000 pages of products. Categories, tags, blog pages, product pages with colours, sizes and other characteristics with pictures.
I want to create an intel search filter by types of products, parts words in titles\descriptions, so i want know which of ways to use and what db will be best for asp and winForms application.
i represent it like: 50 000 string of single data of page and read from all db by the sql queries or cut 50 000 strings to 50 files of dataBase, than do 50 queries to search data in 1 000 string files and how to increase search procces, with async search or multiThread and what can be worst thing, one person say to me that multiThreads can invoke problem, but i don't know nothing about it.

And in my plans referrer at last 1 000 user per day, at last 1 000 queries from different user in shuffle time to db
I have watched videos about ms server sql, mySql - i think is not a good idea to use, it can be to slow to search in big data parts of data.
Maybe ms sql server can do all proccess faster with table search, but - i don't know. MongoDB - i don't know, PostegresDB - i don't know.

i have experiance with the wordPress website - MySql with more than 10 000 product pages it's to slow in work. i've decided to find the best way to create for big data webSite. I have chosen c# asp, than think how to confirm the best way to sync with db and which of all db use in free forms for grow start up. Have you used Azure free time period for use 12 month for free acces to product service? Maybe you have experiance in this?
Support of asp recommended me to use ms sql server or cosmosdb but it's not for free, i want to find for first start up projects free db for this target, than



if i have understood correctly, to simple store good choice will be ms server sql \ mySql ( once in a week will be add new products in DB \ delete \ part sort data)

for multimply changes server games will be best choice MongoDB, PostegresDB or RabbitDb or some else ?

The second type of project i want to create for web-game in asp mvc and winForms game application for multiply users, like a slither.io. In this case using ms server sql or mySql is not good choise, and need to lookig for other db like MongoDB, PostegresDB or RabbitDb .. i have understood you correctly?
 

Skydiver

Staff member
Joined
Apr 6, 2019
Messages
1,575
Location
Virginia Beach, VA
Programming Experience
10+
what db will be best for asp and winForms application
The choice of a database is orthogonal to the type of UI you use to present the data found in the database. Yes, back in the 80's your choice of database would dictate what platforms you would use, and thereby steer what UI you can use, but that is almost 40 years ago. Nowadays, you can choose your database, and then choose your UI, and almost always there is some library or database driver that will let you succeed. Additionally, the current wisdom is that it is never wise to expose a database raw to the Internet. Instead you'll need to implement a web service in front of database to service all your data queries, and all your UI will talk to the web service. This makes your options for UI even wider because almost every modern platform can talk to a web service.

As a quick aside, if you are writing brand new code. Don't use WinForms. Choose WPF. Choose Xamarin. Choose WinUI. WinForms was originally at end-of-life, but got a minor life extension with its inclusion into .NET Core 3.0.
 

Skydiver

Staff member
Joined
Apr 6, 2019
Messages
1,575
Location
Virginia Beach, VA
Programming Experience
10+
i have experiance with the wordPress website - MySql with more than 10 000 product pages it's to slow in work.
WordPress is a content management system. The way it uses MySQL on the back end is optimized for content management because of WordPress' choice of database schema and indexes. Based on you are asking above, what you are really looking for is a more like an inventory system or a catalog system. Trust me that MySQL can more than easily handle searching through a 50,000 item database within seconds provided that the database schema and indexes are setup for inventory. I've seen MySQL handle millions of rows. It really depends on the how you prepare the data and index it.
 
Last edited:
Top Bottom