Best DB advice - very basic and general

  • Hello to everyone,

    I rsearched in this forum but could not find pertinent advice... which is the best DB for our needs?

    I am a very IT challenged (ignorant) partner who has been tasked with the responsibility to chose and create a DB for a start up physical commodities trading company, based in London but with partners physically located across 4 continents.

    After 2 years of growth we now feel the need to create a database to share a hundreds of documents and information (buyers, sellers, brokers, procedures, commodities, specifications, transaction details, copies of contracts, bank compliance documents, invoices, offers, requests, etc.) amongst all 14 partners, located across the world.

    Important considerations for our choice:
    1. Ease of creation and use. Simple UI (some partners are 60 years old)
    2. Available online/worldwide
    3. Cheap (*)
    4. Migration file format for a, possible, future upgrade to a better platform
    (*) MySQL, at 2,000USD/year is out of reach, for now.

    We also seek a second tool/platform where partners (and clients, if case requires) could (a) meet, virtually, and create/collaborate on transactions and (b) communicate as if we were in a physical office.

    Can  anyone, please, offer any advice? I thank you in advamce for your expertise and time. Please keep the language very basic without jargon and technical terminology as I don't even know what SQL is...
    🙁

    Tommaso

  • First, didn't know MySQL cost, thought it was "free" from Oracle.
    Second, you are asking for a lot of a forum where almost everyone works for free (our time).
    So, let me ask a few questions.  Would you consider your data structured, semi-structured, or unstructured?  Yes, using terminology you may not be familiar with, heck I had to think hard to provide my daughter with some examples of these when she asked me this question trying to grasp what she was learning in her database class in college.  Most because I work with mostly structured (if forced) data.
    Think about the objects you specified, some of them are structured (customer information, invoices) some are unstructured (contracts for example).

    I could see a couple of databases being used here.  SQL Server for structured data, MongoDB or CouchDB for unstructured data.  You might even get away with SQL Server for both as you could save documents in FileTables.  There is so much you need to consider, you may actually need to hire a consultant to help you flesh out the requirements and help guide you in selecting the best technologies for your project(s).

    Looking at the latter information in your post about collaboration, that really isn't something a database would do.  Think GoToMeeting and similar products and services for some of this.

  • Dear Lynn,

    I truly appreciate your (or anyone else's) time and expertise. and I am sorry if I ask a lot. The truth is that I realized early on what you later commented: "There is so much you need to consider" but I was hoping to learn here on the forum... please do not feel uncomfortable to tell me, flat out: "no way that a forum can teach you how to evaluate and decide which is the best DB for your needs"... I was kind of expecting such a reply. Point is that I like to learn and solve my own problems but, on the other hand, I am also practical so I know when to seek advice.

    I attach an image of the mySQL costs.

    Unfortunately I still do not understand structured. Do you mean that data that has categories or slots or record is "structured" and data that is files (pdf, docx, xls, jpg, etc) is not structured? If I understood correctly, then we will need both structured and unstructured records. And, more importantly, queries must be able to find a word inside a contract that may be stored under a more general record of a transaction.

    I will check our GoToMeeting. Yes, I know that my second requirement is not DB related but I was hoping that a DB user might have come across the same necessity in other firms.

    Lynn, I appreciated you sharing your free time and expertise with me. If you can help further, thank you, if not I still appreciate and thank you all the same.

    Tommaso

  • tommyleo - Wednesday, October 25, 2017 10:08 AM

    Dear Lynn,

    I truly appreciate your (or anyone else's) time and expertise. and I am sorry if I ask a lot. The truth is that I realized early on what you later commented: "There is so much you need to consider" but I was hoping to learn here on the forum... please do not feel uncomfortable to tell me, flat out: "no way that a forum can teach you how to evaluate and decide which is the best DB for your needs"... I was kind of expecting such a reply. Point is that I like to learn and solve my own problems but, on the other hand, I am also practical so I know when to seek advice.

    I attach an image of the mySQL costs.

    Unfortunately I still do not understand structured. Do you mean that data that has categories or slots or record is "structured" and data that is files (pdf, docx, xls, jpg, etc) is not structured? If I understood correctly, then we will need both structured and unstructured records. And, more importantly, queries must be able to find a word inside a contract that may be stored under a more general record of a transaction.

    I will check our GoToMeeting. Yes, I know that my second requirement is not DB related but I was hoping that a DB user might have come across the same necessity in other firms.

    Lynn, I appreciated you sharing your free time and expertise with me. If you can help further, thank you, if not I still appreciate and thank you all the same.

    Tommaso

    First, you may have forgotten to upload the image you mention, but not worried.
    I understand the desire to solve your own problems, I am the same way.  What I have had to learn is when to start asking for help.  With the task you have presented here, the sooner you get outside help, the sooner you can move forward.

    Structured data, simply look at an Invoice as an example.  There are elements that are common across them.  You have a Customer Address and possibly a Billing Address.  There are common elements to these, a street address or PO Box, a city name, a state or province, a country, a zip code or postal code (and maybe not if you look at some countries).  Looking at the line items, you again can see a structure for the data.

    Unstructured data, yes, things like Word documents and PDF files.  These can be searched using full text search software.  SQL Server has full text capabilities and can search documents with the appropriate filters installed.

    We have used Adobe Connect, WebEx, and even Google Hangouts to support collaboration between remote sites.  While in Afghanistan Google Hangouts was used to link teams together in Afghanistan to teams in Florida, Virginia, and Colorado while working resolve various technical issues we encountered.

    Overall, what you are trying to accomplish actually sounds quite intriguing as well as challenging.  Hopefully you aren't doing this all alone have at least some help from others in your organization.  This is really a lot for one person to tackle by themselves.  When I have more time I would love to add more to this conversation.

  • I don't know where my post and the post of several others on this thread went but to reiterate what I wrote previously... if you value your company, this is NOT something that you should try to setup based on advice from any forum.  There are security and Disaster Recovery things that must be done to ensure the continuation of your company should anything happen to your data or the machines it resides on.  This is especially true since neither you or any of your partners have the first clue about databases.  And, no... I don't mean that as a slam at all.  It's just a fact I'm actually concerned for the well being of your company, especially since you're trying the world wide thing.  I can also tell you that a$2K/Year budget isn't likely to hack it for you regardless of which database or non-database engine you end up with.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Lynn Pettis - Wednesday, October 25, 2017 10:37 AM

    tommyleo - Wednesday, October 25, 2017 10:08 AM

    First, you may have forgotten to upload the image you mention, but not worried.
    I understand the desire to solve your own problems, I am the same way.  What I have had to learn is when to start asking for help.  With the task you have presented here, the sooner you get outside help, the sooner you can move forward.

    Structured data, simply look at an Invoice as an example.  There are elements that are common across them.  You have a Customer Address and possibly a Billing Address.  There are common elements to these, a street address or PO Box, a city name, a state or province, a country, a zip code or postal code (and maybe not if you look at some countries).  Looking at the line items, you again can see a structure for the data.

    Unstructured data, yes, things like Word documents and PDF files.  These can be searched using full text search software.  SQL Server has full text capabilities and can search documents with the appropriate filters installed.

    We have used Adobe Connect, WebEx, and even Google Hangouts to support collaboration between remote sites.  While in Afghanistan Google Hangouts was used to link teams together in Afghanistan to teams in Florida, Virginia, and Colorado while working resolve various technical issues we encountered.

    Overall, what you are trying to accomplish actually sounds quite intriguing as well as challenging.  Hopefully you aren't doing this all alone have at least some help from others in your organization.  This is really a lot for one person to tackle by themselves.  When I have more time I would love to add more to this conversation.

    1. I uploaded the image.
    2. Thank you for explaining, now I understand structured and non structured.
    3. We already use these 3 communication tools: meetupcall, WhatsApp and Skype). We are looking a better communication tool that should be integrated to a project management programme that can allow Partners and project participants to use the same documents, telephone contacts, etc during a call. The programme should support primarily PCs but also Phones. (A) The communication facility should be able to simplify Partners' (or clients') teleconferencing needs: the conference proponent should select the participants, type in the call subject. The call could be requested immediately or scheduled. If Immediately, then the system would send a messge to all Participant's Phones (specific App?) or even call them directly. If scheduled, then the system should verify participants agendas and time zones. Once accepted by all, the system should call each participants using, for each one, the best carrier (internet or phone) according to signal strength. (B) The project collaboration facility should support the previous facility and offer a desktop with shared documents, telephone contacts. With deadlines, responsibilities of participants, send reminders, have privilege and/or authority to access documents, etc., etc ... a standard project management programme.
    4. I don't have anyone helping me choose. I posted a job tender on UpWork for the communication and management programme to be developed. We have not chosen anyone as bids are in the region of 5000USD so we are looking for ready packaged programmes that can come close, if any.
    5. I was hoping that someone here could help me sunderstand which DB would be best for our needs, so that we could start using it and, maybe, in future, integrate it into the communications/project-management system.

    Again, I understand that it may be difficult to recommend a DB from a forum. I appreciate any and all help. If it is not possible, we will probably just try with what seems best and make experience with our mistakes as finances will not allow us to invest, right now.

    Lynn, thank you for your time and expertise. I much appreciate both.

  • Jeff Moden - Wednesday, October 25, 2017 10:41 AM

    I don't know where my post and the post of several others on this thread went but to reiterate what I wrote previously... if you value your company, this is NOT something that you should try to setup based on advice from any forum.  There are security and Disaster Recovery things that must be done to ensure the continuation of your company should anything happen to your data or the machines it resides on.  This is especially true since neither you or any of your partners have the first clue about databases.  And, no... I don't mean that as a slam at all.  It's just a fact I'm actually concerned for the well being of your company, especially since you're trying the world wide thing.  I can also tell you that a$2K/Year budget isn't likely to hack it for you regardless of which database or non-database engine you end up with.

    Thank you Jeff, I appreciate the advice that sounds right. We were hoping to create a temporary DB and learn from our mistakes until when we can afford professional consulting and development of a better tool.

  • I do have to agree with Jeff.  But I will also say there is nothing like getting feedback on things you are finding as you may find yourself dealing more with sales people.  Some may know more than others, but that doesn't mean it isn't worth the effort to ask others what they think about certain topics.  Could help provide more insight as well as develop better questions to ask while working through your project.

  • With the upcoming GDPR requirements looming, you will not be able to afford to learn from your mistakes.  

    To partially echo Jeff, your first task should likely not be deciding upon a platform.  You should be determining security, usage, and continuity.  Write your business rules.  Review them.  And please, please hire a professional that can help design this system.

    Michael L John
    If you assassinate a DBA, would you pull a trigger?
    To properly post on a forum:
    http://www.sqlservercentral.com/articles/61537/

  • @ Lynn, Jeff and Michael,

    Thank you for the passion and care that I can perceive in your messages, that I really appreciate.

    I am certain that any valid professional would be worth thousands of dollars and we simply cannot afford it now. Given your reccomendations, we will try to make an effort but, should the cost prove impossible, we would be left with 2 alternatives:
    - no DB at all or
    - poorly conceived and designed DB with none of the paramount requirements that you all mention.

    Our idea is to keep all valuable information on paper and emails, as we do today, sharing amongst ourselves what we need, when we need it and, in the meantime, conceive and develop a temporary DB to make experience and to learn from our mistakes. Unfortunately beggars can't be choosers!
    🙂

    Any advice or help would be greatly appreciated.

  • You can try an opensource document management system that'll run in a LAMP setup and a cheap cloud linux server to run it on.  I personally can't recommend any but there seems to be plenty out there that will handle shared document management as well as scheduling meetings and any decent cloud hosting solution will have a straight forward drop down to pick distro with commonly included components, i used linode a few years ago and it was incredibly easy to get a basic server up and running and the pricing is very cheap, for a POC you could probably get by with the 5$ a month plan.

    For shared desktop meetings there are options like gotomeeting, webex we use webex at work and it's pretty easy and convenient.

    That said there will certainly be some learning curve if you go the opensource route but it shouldn't require developing everything from scratch.

  • tommyleo - Wednesday, October 25, 2017 2:08 PM

    @ Lynn, Jeff and Michael,

    Thank you for the passion and care that I can perceive in your messages, that I really appreciate.

    I am certain that any valid professional would be worth thousands of dollars and we simply cannot afford it now. Given your reccomendations, we will try to make an effort but, should the cost prove impossible, we would be left with 2 alternatives:
    - no DB at all or
    - poorly conceived and designed DB with none of the paramount requirements that you all mention.

    Our idea is to keep all valuable information on paper and emails, as we do today, sharing amongst ourselves what we need, when we need it and, in the meantime, conceive and develop a temporary DB to make experience and to learn from our mistakes. Unfortunately beggars can't be choosers!
    🙂

    Any advice or help would be greatly appreciated.

    There is the free community edition of MySQL. The one you attached is for an Oracle supported version. Community Edition is supported using forums.
    Depending on the size you need, SQL Server Express may also be an option. It's free but has a size limit for the database at 10 GB. An advantage of that is you can upgrade to one of the paid versions of SQL Server when you grow (I said when, not if).
    Here is a link for information on SQL Express:
    SQL Server 2017 Express edition

    Another thing you may want to consider for some sharing of documents is using one of the free apps for this - again with size limits for the free subscriptions. They also have different payment tiers which allow more storage. Some platforms for that would be OneDrive, Google Drive, Dropbox.  There are a lot of articles comparing those three - you can just search on:
    dropbox vs google drive vs onedrive
    Here is a link to one of the articles comparing the three: 
     Dropbox vs. Google Drive vs. OneDrive: 4 Things to Consider when Making Your Choice

    And one other consideration - A poorly conceived database will likely cost more to fix than having someone experienced come in and help you out a bit to get started.

    Sue

  • Sue_H - Wednesday, October 25, 2017 3:08 PM

    tommyleo - Wednesday, October 25, 2017 2:08 PM

    @ Lynn, Jeff and Michael,

    Thank you for the passion and care that I can perceive in your messages, that I really appreciate.

    I am certain that any valid professional would be worth thousands of dollars and we simply cannot afford it now. Given your reccomendations, we will try to make an effort but, should the cost prove impossible, we would be left with 2 alternatives:
    - no DB at all or
    - poorly conceived and designed DB with none of the paramount requirements that you all mention.

    Our idea is to keep all valuable information on paper and emails, as we do today, sharing amongst ourselves what we need, when we need it and, in the meantime, conceive and develop a temporary DB to make experience and to learn from our mistakes. Unfortunately beggars can't be choosers!
    🙂

    Any advice or help would be greatly appreciated.

    There is the free community edition of MySQL. The one you attached is for an Oracle supported version. Community Edition is supported using forums.
    Depending on the size you need, SQL Server Express may also be an option. It's free but has a size limit for the database at 10 GB. An advantage of that is you can upgrade to one of the paid versions of SQL Server when you grow (I said when, not if).
    Here is a link for information on SQL Express:
    SQL Server 2017 Express edition

    Another thing you may want to consider for some sharing of documents is using one of the free apps for this - again with size limits for the free subscriptions. They also have different payment tiers which allow more storage. Some platforms for that would be OneDrive, Google Drive, Dropbox.  There are a lot of articles comparing those three - you can just search on:
    dropbox vs google drive vs onedrive
    Here is a link to one of the articles comparing the three: 
     Dropbox vs. Google Drive vs. OneDrive: 4 Things to Consider when Making Your Choice

    And one other consideration - A poorly conceived database will likely cost more to fix than having someone experienced come in and help you out a bit to get started.

    Sue

    I've not found the 10GB database limit to be much of a limit although it does require a bit of planning.  You CAN have multiple databases per instance in SQL Server Express and you CAN create updatable views across databases.  I don't know for sure if "Partitioned Views" will work in the Express Edition but, if they do, that would allow you to grow a table to, theoretically, 2.5 Terabytes (which could also be done with normal views with the disadvantage of being able to partition elimination.).

    SQL Server Express would also allow for a pretty easy migration to SQL Server Standard or Enterprise editions when the time comes.  There's also a huge advantage there in that the folks on this very forum (SQLServerCentral.com) are some of the best in the world and can certainly help with the Express edition.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Jeff Moden - Wednesday, October 25, 2017 5:46 PM

    Sue_H - Wednesday, October 25, 2017 3:08 PM

    tommyleo - Wednesday, October 25, 2017 2:08 PM

    @ Lynn, Jeff and Michael,

    Thank you for the passion and care that I can perceive in your messages, that I really appreciate.

    I am certain that any valid professional would be worth thousands of dollars and we simply cannot afford it now. Given your reccomendations, we will try to make an effort but, should the cost prove impossible, we would be left with 2 alternatives:
    - no DB at all or
    - poorly conceived and designed DB with none of the paramount requirements that you all mention.

    Our idea is to keep all valuable information on paper and emails, as we do today, sharing amongst ourselves what we need, when we need it and, in the meantime, conceive and develop a temporary DB to make experience and to learn from our mistakes. Unfortunately beggars can't be choosers!
    🙂

    Any advice or help would be greatly appreciated.

    There is the free community edition of MySQL. The one you attached is for an Oracle supported version. Community Edition is supported using forums.
    Depending on the size you need, SQL Server Express may also be an option. It's free but has a size limit for the database at 10 GB. An advantage of that is you can upgrade to one of the paid versions of SQL Server when you grow (I said when, not if).
    Here is a link for information on SQL Express:
    SQL Server 2017 Express edition

    Another thing you may want to consider for some sharing of documents is using one of the free apps for this - again with size limits for the free subscriptions. They also have different payment tiers which allow more storage. Some platforms for that would be OneDrive, Google Drive, Dropbox.  There are a lot of articles comparing those three - you can just search on:
    dropbox vs google drive vs onedrive
    Here is a link to one of the articles comparing the three: 
     Dropbox vs. Google Drive vs. OneDrive: 4 Things to Consider when Making Your Choice

    And one other consideration - A poorly conceived database will likely cost more to fix than having someone experienced come in and help you out a bit to get started.

    Sue

    I've not found the 10GB database limit to be much of a limit although it does require a bit of planning.  You CAN have multiple databases per instance in SQL Server Express and you CAN create updatable views across databases.  I don't know for sure if "Partitioned Views" will work in the Express Edition but, if they do, that would allow you to grow a table to, theoretically, 2.5 Terabytes (which could also be done with normal views with the disadvantage of being able to partition elimination.).

    I thought it was worth mentioning the limit per database. Having multiple databases is certainly an option but it may not be reasonable to work with if pushing it to the extremes due to the 1 GB limit for the buffer pool.

    Sue

  • Sue_H - Wednesday, October 25, 2017 6:04 PM

    I thought it was worth mentioning the limit per database. Having multiple databases is certainly an option but it may not be reasonable to work with if pushing it to the extremes due to the 1 GB limit for the buffer pool.

    Sue

    I absolutely agree.  People DO have to remember that it's the free version and has a lot fewer capabilities.  The one you point out also means that they're going to have to write some really tight code even if they stay within the 10GB limit for one database.

    Shifting years back to the subject at hand... here's a quote from the original post...

    After 2 years of growth we now feel the need to create a database to share a hundreds of documents and information (buyers, sellers, brokers, procedures, commodities, specifications, transaction details, copies of contracts, bank compliance documents, invoices, offers, requests, etc.) amongst all 14 partners, located across the world.


    That's not a simple system and I'm pretty sure that it will overwhelm just about anything that's free.  The documents they have listed are substantial both in quantity and size  They have "2 years of growth" under their belt and have no knowledge of how to create such a system and, to the best of my knowledge, as simple as it may appear to the uninitiated, there's no free system that I know of that will track such documents unless they build an easy to use file structure and get really good at using MS Word. 😉  But, even with 2 years of growth that has "14 partners, located across the world", they don't want or can't afford to invest in the future of their company?

    Considering the lack of knowledge about databases and software in general, I suggest that they peruse the following Google search and figure out what best suits them rather than posting on a database forum because they can't actually support a database knowledge wise, hardware wise, nor money wise.

    https://www.google.com/search?source=hp&ei=l-3xWbL-HYPZjwTuxIKQBw&q=free+document+management+software+for+small+business&oq=free+document+management+software+for+small+business

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

Viewing 15 posts - 1 through 15 (of 40 total)

You must be logged in to reply to this topic. Login to reply