Code Monkey home page Code Monkey logo

seagate / cortx Goto Github PK

View Code? Open in Web Editor NEW
632.0 58.0 342.0 2.03 GB

CORTX Community Object Storage is 100% open source object storage uniquely optimized for mass capacity storage devices.

Home Page: https://github.com/Seagate/cortx

License: Apache License 2.0

Python 0.37% Shell 0.03% Jupyter Notebook 99.58% Go 0.01% JavaScript 0.01%
s3-storage software-defined-storage storage storage-api object-storage object-storage-service objectstorage objectstore opensource open-source

cortx's Introduction

license Slack YouTube Latest Release GitHub contributors SODA Eco project CORTX inclusive words scan

Disclaimer: This project is not maintained anymore

The CORTX Project

CORTX is Seagate's proof-of-concept research project into distributed object storage systems, with an emphasis on HPC, efficiency, massive capacity, and high HDD-utilization. CORTX is 100% Open Source. Most of the project is licensed under the Apache 2.0 License and the rest is under AGPLv3; check the specific License file for each submodule to determine which is which.

CORTX Design Goals & Research Areas

Project Scope Core Design Goals
Mass capacity Optimizing Object Storage for mass capacity storage devices .
Processor agnostic Should work with any processor.
Flexibility Able to work with HDD, SSD, and NVM.
Scalability Solving mass-capacity scaling challenges
Responsiveness Improving data retrieval speeds in high scale systems and ensuring low latency across large data sets
Resilience Ensuring a high tolerance for hardware failure and faster rebuild and recovery times using Network Erasure Coding
Transparency Improving observability

You can read more about the technical goals and distinguishing features of CORTX here.

We are excited about your interest in CORTX and hope you will join us. We take our community very seriously, and we are committed to creating a community built on respectful interactions and inclusivity, as documented in our Code of Conduct.

Get Started

  • Commonly used terms are defined in our CORTX Glossary.
  • Explore multiple ways to acquire, build, and run CORTX in our Quick Start Guide.
  • Please be aware that CORTX Community is not intended for production usage. Please refer to our terms and conditions for more details.
  • Read about all the different components that combine together to make CORTX

Resources

  • Converse with us in our CORTX-Open Source Slack channel Slack to interact with community members and gets your questions answered.
  • Check out our Youtube Channel for deep dives into CORTX and other explorations of the science of storage.
  • Subscribe to the our Open Source Newsletter to and stay up to date on the latest CORTX developments, news, and events. Browse our archived newsletters from previous months.
  • Learn how to integrate CORTX with other technologies here.
  • Many folks are actively conducting various experiments, feasibility studies, and proofs of concept using CORTX. Check it out in the cortx-experiments repository and either join an existing experiment or start your own.

Thank You!

We thank you for stopping by to check out the CORTX Community. We are fully dedicated to our mission to build open source technologies that help the world save unlimited data and solve challenging data problems. Join our mission to help reinvent a data-driven world.

cortx's People

Contributors

amitwac2608 avatar anilsindhi avatar cortx-admin avatar gauravchaudhari02 avatar hemantvraut avatar hessio avatar imgbot[bot] avatar jkan-cn avatar johnbent avatar ketanarlulkar avatar mend-for-github-com[bot] avatar mukul-seagate11 avatar nikhilsawake avatar novium258 avatar nrady avatar pujamudaliar avatar r-wambui avatar rajkumarpatel2602 avatar saumya-sunder avatar shailesh-vaidya avatar shalakadharap avatar shriya-deshmukh avatar stx-hseow avatar swatid-seagate avatar techwriter-mayur avatar venkuppu-chn avatar venkyos avatar vishwas-bhat avatar wb-droid avatar yanqingfu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cortx's Issues

overlap in CORTX QUICK START GUIDE

CORTX QUICK START GUIDE.

the current workflow is :

1.Set up your build and test environment
2. Getting cortx-motr ready
3. Getting Cortx-S3 ready
4. A video from CORTX engineer Kevin Price demonstrating the above three steps
5. Contributing
6. Contributing to Cortx Motr
7. Contributing to Cortx S3
.....

I would like to suggest the following:

  1. Set up your build and test environment
  2. Prerequisites (merge general information from Getting Cortx-motr ready and Getting Cortx-S3 ready)
  3. Getting Cortx-motr ready
  4. Getting Cortx-S3 ready
  5. A video from CORTX engineer Kevin Price demonstrating the above three steps
  6. Contributing
  7. Code commits and reviews (merge Contributing to Cortx Motr and Contributing to Cortx S3)

As you can see the instructions in Getting cortx-motr ready and Getting Cortx-S3 ready has some overlaps, we can move the general items, such git, python, kernel, pip version check, update, and installation, etc to prerequisites section, also provide debug guidance. We keep anything specific to the cortx-motr and cortx-s3 guidance to the corresponding sections.

Also, Contributing to Cortx Motr and Contributing to Cortx S3 provides very general information, which overlaps almost completely. Merge those two into one is good enough.

Standardize Git Protocol (https / ssh)

I think we should standardize git protocols among all submodules

Most if not all submodules protocol uses https (e.g. https://github.com/Seagate/cortx-s3server.git).
However, in the cortxs3 documentation, it recommends (instruct) to setup ssh access which won't work when you git clone recursively. You still need to setup PAT (as noted in doc) and I think we should decide which protocol to stick with.

I personally prefer ssh but I guess whichever should do just fine as long as users do not need to setup double access.

SSO connection reset

Few times a day, when trying to access github.com/Seagate, I am getting
Screen Shot 2020-07-09 at 20 36 57
Following the link gets me to
Screen Shot 2020-07-09 at 20 37 06
which after some time results in
Screen Shot 2020-07-09 at 20 38 26
The only known way to fix this is by following a little dance of clearing all browser cookies for ssologin.seagate.com.

I have Seagate VPN active, all other services work fine.

cortx-motr lsmod couldn't see which module is using m0tr

[root@ssc-vm-0925 cortx-motr]# ./scripts/m0 run-st 01net
----- run_st 01net -----
<< 01net >>
insmod: ERROR: could not insert module /home/670951/cortx-motr/extra-libs/galois/src/linux_kernel/galois.ko: File exists
Error unloading /home/670951/cortx-motr/m0tr.ko.

0.00user 0.02system 0:00.04elapsed 85%CPU (0avgtext+0avgdata 4728maxresident)k
24inputs+8outputs (0major+5948minor)pagefaults 0swaps

I followed the https://github.com/Seagate/cortx/blob/master/doc/Build-Installation-FAQ.md Qs3

couldn't see which module is using m0tr

[root@ssc-vm-0925 cortx-motr]# lsmod
Module Size Used by
m0tr 13920279 5
galois 22944 1 m0tr
loop 28072 20
ksocklnd 183608 1
lnet 586401 3 m0tr,ksocklnd
libcfs 415252 2 lnet,ksocklnd
rpcsec_gss_krb5 35549 0
auth_rpcgss 59415 1 rpcsec_gss_krb5
nfsv4 583113 1
dns_resolver 13140 1 nfsv4
nfs 261876 2 nfsv4
lockd 98048 1 nfs
grace 13515 1 lockd
fscache 64984 2 nfs,nfsv4
ipmi_devintf 17459 0
ipmi_msghandler 56728 1 ipmi_devintf
sunrpc 354099 9 nfs,rpcsec_gss_krb5,auth_rpcgss,lockd,nfsv4
nfit 55479 0
ppdev 17671 0
libnvdimm 155545 1 nfit
iosf_mbi 15582 0
crc32_pclmul 13133 0
ghash_clmulni_intel 13273 0
aesni_intel 189456 0
lrw 13286 1 aesni_intel
gf128mul 15139 1 lrw
glue_helper 13990 1 aesni_intel
ablk_helper 13597 1 aesni_intel
cryptd 21190 3 ghash_clmulni_intel,aesni_intel,ablk_helper
joydev 17389 0
pcspkr 12718 0
virtio_rng 13029 0
sg 40721 0
virtio_balloon 18015 0
i2c_piix4 22401 0
parport_pc 28205 0
parport 46395 2 ppdev,parport_pc
ip_tables 27126 0
ext4 584153 6
mbcache 14958 1 ext4
jbd2 107478 1 ext4
sd_mod 46281 3
crc_t10dif 12912 1 sd_mod
crct10dif_generic 12647 0
sr_mod 22416 0
cdrom 42556 1 sr_mod
virtio_console 28076 1
virtio_scsi 18463 2
virtio_net 28063 0
virtio_blk 18323 4
ata_generic 12923 0
pata_acpi 13053 0
qxl 59032 1
drm_kms_helper 186531 1 qxl
syscopyarea 12529 1 drm_kms_helper
sysfillrect 12701 1 drm_kms_helper
sysimgblt 12640 1 drm_kms_helper
fb_sys_fops 12703 1 drm_kms_helper
ttm 96673 1 qxl
ata_piix 35052 0
crct10dif_pclmul 14307 1
drm 456166 4 qxl,ttm,drm_kms_helper
crct10dif_common 12595 3 crct10dif_pclmul,crct10dif_generic,crc_t10dif
crc32c_intel 22094 0
libata 243133 3 pata_acpi,ata_generic,ata_piix
serio_raw 13434 0
virtio_pci 22985 0
floppy 69432 0
virtio_ring 22746 7 virtio_blk,virtio_net,virtio_pci,virtio_rng,virtio_balloon,virtio_console,virtio_scsi
virtio 14959 7 virtio_blk,virtio_net,virtio_pci,virtio_rng,virtio_balloon,virtio_console,virtio_scsi
drm_panel_orientation_quirks 17180 1 drm
dm_mirror 22289 0
dm_region_hash 20813 1 dm_mirror
dm_log 18411 2 dm_region_hash,dm_mirror
dm_mod 124501 25 dm_log,dm_mirror

[root@ssc-vm-0925 cortx-motr]# rmmod m0ctl
rmmod: ERROR: Module m0ctl is not currently loaded
[root@ssc-vm-0925 cortx-motr]# rmmod m0tr
rmmod: ERROR: Module m0tr is in use
[root@ssc-vm-0925 cortx-motr]# rmmod galois
rmmod: ERROR: Module galois is in use by: m0tr

I rebooted my VM, then no error.

kernel version mismatch

Hello-

I installed the Centos 7.7 ISO http://mirrors.oit.uci.edu/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-DVD-1908.iso specified by https://github.com/Seagate/cortx/blob/master/doc/VIRTUAL_MACHINE.md. The VM setup document requires kernel version 3.10.0-1062.12.1 but I ended up with kernel version 3.10.0-1127.13.1.el7.x86_64. I did not deliberately upgrade the kernel, but I did update the distro prior to use (this is normal, I think, to capture any security updates or bug fixes). Is this kernel version OK to use? If so, can we update the documentation to indicate what kernel versions are OK, if there is a dependency?

Thanks,
-Tim

Fatal error: Kernel devel source not available for required kernel version.

https://github.com/Seagate/cortx/blob/master/doc/CortxMotrQuickStart.md has us run sudo ./scripts/install-build-deps to install the build dependencies. The script fails when fetching the kernel source:

TASK [base-os : install kernel-devel for the current kernel] ***************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "No package matching 'kernel-devel-3.10.0-1062.el7.x86_64' found available, installed or updated", "rc": 126, "results": ["No package matching 'kernel-devel-3.10.0-1062.el7.x86_64' found available, installed or updated"]}
...ignoring
msg: No package matching 'kernel-devel-3.10.0-1062.el7.x86_64' found available, installed or updated
results: No package matching 'kernel-devel-3.10.0-1062.el7.x86_64' found available, installed or updated

However, if the OS release is updated (sudo yum update) to pick up the current versions of Centos 7.7 packages, we get kernel 3.10.0-1127.13.1.el7.x86_64 which does have the devel package available. After an update ./scripts/install-build-deps runs with no errors.

CortX team told me 3.10.0-1062 is required, however the build process won't complete unless the system is upgraded to 3.10.0-1127. Please either change the kernel requirement away from 3.10.0-1062 or make the 3.10.0-1062 dev source available on Github.

In general we need to be able to update the Centos 7.7 distribution prior to use. It is important to keep these systems patched and updated for security and bug fixes. The update process brings an updated kernel. We should support current kernels, or understand the requirement that drives the need for an old kernel.

Thanks.

VA Documentation

Please fill the placeholders in the VA document (installation guide).

sub-modules in parent repo need to be updated

In the parent repo the "sub-modules" are not pointing to the latest changes in the child repo.

We need a way to automatically update these or have a process where they are updated.

image

I can't understand cla-bot warning

Can somebody please explain how can I get rid of this noisy message after each my push to GitHub?

cla-bot-message

Text:

Thanks for your contribution!
The CLA bot has flagged your contribution as not having a Contributor License Agreement
in place. Note that this is not needed in the overwhelming majority of instances and this warning will usually be ignored.
The code reviewers will make a determination and may ask you to sign a CLA or may choose to ignore this warning.
More information about this can be found here.

The proposed hyperlink leads to a short explanation what CLA means but doesn't explain what as a valid developer should I do next.
Just to clarify:

  1. I keep committing from Citrix only, so my git uses only my seagate email address.
  2. I use a dedicated GH account where Seagate email is set as primary.

Thanks in advance for any help.

cc @johnbent, @mukul-seagate11, @venkuppu-chn, @xahmad, @gauravchaudhari02

Content Modification after Open Source

After going open source, in the GitHub and Codacy.rst document, the following changes must be made.

  • PAT related content must be removed

  • SSO related content must be removed

  • Establish links between documents

#107

Bootstrap the cluster m0confgen: command not found

[root@ssc-vm-0922 670951]# hctl bootstrap --mkfs singlenode.yaml
2020-08-15 01:06:36: Generating cluster configuration.../opt/seagate/cortx/hare/libexec/hare-bootstrap: line 234: m0confgen: command not found

I found that m0confgen is located at the following locations:

cortx-motr/st/m0confgen
cortx-motr/utils/m0confgen

cortx-s3server/third_party/mero/st/m0confgen
cortx-s3server/third_party/mero/utils/m0confgen

not in this location:

cortx-hare/utils/

which directory should we run this command?

https://github.com/Seagate/cortx/blob/master/doc/Cluster_Setup.md#15-bootstrap-the-cluster

S3 mero vs motr

From my understanding, we changed mero to motr
but in the S3 (git clone --recursive [email protected]:Seagate/cortx-s3server.git -b main)
still see mero

Submodule path 'third_party/mero': checked out 'a03ba35788f5650678e1086ce8c1edf0644f20c1'
Submodule path 'third_party/mero/extra-libs/galois': checked out '0975162a5fa8d0de3758756fc006097ef24a

four commands in the cortx-motr module m0 script are not documented

Commands:

**run-all**              Run unit and system tests.

**dist-check**           Create and validate Motr distribution archive and rpm.

**check-everything**  =  (rebuild + dist-check + run-all) * 2
                     *NOTE* Please run this command before landing.
                     .
                     The command is executed twice (note '* 2' above):
                     the 2nd time with './configure --disable-m0-asserts'.

**clean [-f]**           Execute 'make distclean' in Motr sources directory.
                     '-f' will also remove untracked files and directories
                     (i.e. those not added to the git repository).
                     *CAUTION* Be careful with '-f' option!

location: cortx-motr/scripts/m0

https://github.com/Seagate/cortx/blob/master/doc/CortxMotrQuickStart.md

Problem: too many users have Write access to Cortx repositories

A significant portion of English-speaking world has Write access to Cortx repositories.

E.g., https://github.com/Seagate/cortx-motr/settings/access:
write-access

⚠️ This situation is dangerous.

Write access should be restricted to those who actively push to the project.

All Cortx users and outside collaborators should be given Read access to all Cortx repositories by default. This level of access is more than adequate for posting patches.

roles

Read more about permission levels for repositories owned by an organization.

S3 jenkins test fail for missing s3iamcli

Hello-

After the S3 build, the jenkins unit tests fail for missing s3amicli. The error message states:

Check S3CMD...OK
s3iamcli not installed
Please install s3iamcli using rpm built from /rpms/s3iamcli/


*** ABORTED ***


However the s3iamcli rpm is not present anywhere in the S3 tree, although I do see the build script in rpms/s3iamcli. Is there a missing compile step?

Thanks.

The other error and warning messages are in here: s3test.txt

504 Error: Gateway Timeout

I am testing CORTX using 60000 MNIST images.
mnist_up.zip is my python program to upload those images to CORTX. It worked fine with loading a portion of those images (eg. 10000), but caused “gateway timeout” error if I tried to upload more than 30000 images.
image

I also tried to use “aws s3 cp” command (s3Copy.zip) to upload those images one by one and it caused the same “gateway error” starting from img27284. After this error, all aws commands not work anymore (504 error).

image

google doc links need to migrate to sharepoint links

Contributing.md doc needs explanation of DCO and CLA

Add documentation about how DCO and CLA will be required

  • Set up DCO and CLA bots
  • DCO will be always required
  • Corporate CLA will be required when a contributor belongs to a corporation and is making a large contributions; in typical cases CLA bot can/will be overridden
  • When corporate CLA is deemed to be required, we’ll ask them to sign Apache CLA

Problem: pestering SSO prompts

SSO prompt appears several times a day. It is followed by the Username/Password prompt. This is bad UX.

Solution: increase SSO time-out interval to 12 hours.

SSO prompt

Password prompt

Default branch is still Master

To be in sync with the other component branching strategy, the default branch shouldn't be master (which is also a contentious term).
Kindly correct this to align this with the component repo strategy.

MS collaboration tools are a pain to use

Problem

“We should subtract 10% from [our team's] capacity for inefficient tools we are using.”
-- Cortx developer

  • SharePoint documents are slow 🐌 to open and rather taxing on the CPU. 💻🔥
    • PowerPoint presentations are particularly bad in this respect: multi-slide presentations take ages to load or, in case of slow network, may not open at all.
  • UX of SharePoint products is much worse than that of Google Documents, which engineers used before. The shortcomings are too many to list, but how about this one:
    • SharePoint Excel doesn't allow dragging of rows to rearrange them.
  • Microsoft Teams' UX is poor.
    • Message editor is unreliable, quirky, and difficult to use.
    • Desktop app requires regular restarts (sometimes just stops updating itself).
    • The app is slow to reload after network disconnection.
    • Some messages are impossible to get a link to.
    • Cmd-C does “Select all” instead of “Copy”. Wha?

This list is by no means complete.

Mitigation

Avoid using tools that cause friction. Do more with GitHub issues, pull requests, and wiki. Take PC3 refresher.

PC3 is meant to provide an optimal collaboration model for commercial software projects. Broadly, PC3 helps an organization build consistently good software, cheaply, and rapidly.

Solution

Ditch Microsoft Office365/SharePoint in favour of NextCloud.

VM image for virtual box has issues; cortx motr install-build-deps script fails

I downloaded the vm image for virtual box mentioned in directory : https://seagatetechnology-my.sharepoint.com/:f:/g/personal/basavaraj_kirunge_seagate_com/EgkMhqmUbIdFs8Tr9N-bHecBtMDwm02QbG0T8vS7TLOdUg?e=aiRHBr. However, while trying to install dependent packages like lustre using

sudo ./scripts/install-build-deps

it gives the following error

image

This directory is part of the 'Local VM setup' https://github.com/Seagate/cortx/blob/master/doc/LocalVMSetup.md#1-download-the-vm

Failure while setting up dev environment for cortx-s3server

There is a failure while setting up dev environment for cortx-s3server.

I saw this failure in the script/env/dev/init.sh script that is run while trying to setup a development environment for cortx-s3server.
The failure happens while installing the packages bundled in ansible/awscli-bundle.zip. The install script in the bundle fails suggesting duplicates for some of the packages. I was able to circumvent the problem by deleting the duplicates from the package folder and then running the install script manually. After that, I commented out the relevant portion from the ansible/common_dev_setup.yml and ran the init.sh script again. This time it ran to completion without any failures.
Here, if the diff between my changed copy and the original file common_dev_setup.yml file.

cortx-s3server]# diff ansible/common_dev_setup.yml ansible/common_dev_setup.orig.yml
57a58,67

  • name: Install and configure awscli on RHEL
    when: ansible_distribution == "RedHat"
    command: "{{ item }}"
    with_items:

S3 rebuild-all fails

Hello-

S3 rebuild-all script fails:
server/s3_bucket_metadata_v1.h:25:30: fatal error: gtest/gtest_prod.h: No such file or directory
#include <gtest/gtest_prod.h>

See attached complete build output.

Thanks,
-Tim
builderrs.ttw.txt

CamelCase in filenames in doc/

For some reason, the style of file names in doc/ has been changed. E.g., coding-style.md became CodingStyle.md. Is there any reason for this? If not, please revert to the old style and use it for both existing and new files.

bazel dependency not documented

The S3 build process fails with "bazel: command not found". Bazel is not mentioned in any of the build preparation guides and is not available on the standard Centos repos. We need instructions on which version of bazel to use, and how to safely install it. It should also be included in the list of build prerequisites somewhere. Thanks.

https://github.com/Seagate/cortx-motr#obtain-sources is not updated

[root@ssc-vm-0922 test]# git clone --recursive http://gerrit-sage.dco.colo.seagate.com:8080/mero
Cloning into 'mero'...
fatal: unable to access 'http://gerrit-sage.dco.colo.seagate.com:8080/mero/': Could not resolve host: gerrit-sage.dco.colo.seagate.com; Name or service not known

[root@ssc-vm-0922 test]# git clone --recursive https://github.com/seagate-ssg/mero.git
Cloning into 'mero'...
Username for 'https://github.com':
Password for 'https://[email protected]':
remote: Repository not found.
fatal: repository 'https://github.com/seagate-ssg/mero.git/' not found

Error while cloning s3 server repo on the VM

Doc: BUILD_ENVIRONMENT.md
Error:

Last login: Sat May 9 22:49:14 2020
LNET configure error 100: Network is down
[root@localhost ~]# ls
anaconda-ks.cfg
[root@localhost ~]# mkdir dk
[root@localhost ~]# cd dk
[root@localhost dk]# git clone ssh://[email protected]:29418/s3server && scp -p -P 29418 [email protected]:hooks/commit-msg s3server/.git/hooks/
Cloning into 's3server'...
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

pip dependency not documented

Create a local repository requires pip, but pip is not installed by any of the preparation scripts or documented.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.